Meego Wiki
Views

Release Infrastructure/BOSS/Participants

From MeeGo wiki
(Difference between revisions)
Jump to: navigation, search
(proposed renames)
Line 8: Line 8:
Package : https://build.pub.meego.com/package/show?package=boss-participant-prechecks&project=Project:MINT:Testing
Package : https://build.pub.meego.com/package/show?package=boss-participant-prechecks&project=Project:MINT:Testing
-
===already_testing===
+
=== already_testing -> reject_if_already_tested ===
-
 
+
Compares the checksum of the packages being submitted to packages of the same
Compares the checksum of the packages being submitted to packages of the same
name possibly in the Testing project. If the checksum matches it sets STATUS
name possibly in the Testing project. If the checksum matches it sets STATUS
= FAILED
= FAILED
-
===has_changes===
+
=== has_changes -> reject_if_duplicate ===
Compares the checksum of the packages being submitted to packages of the same
Compares the checksum of the packages being submitted to packages of the same
name possibly in the Target project. If the checksum matches it sets STATUS =
name possibly in the Target project. If the checksum matches it sets STATUS =
FAILED
FAILED
-
===multiple_destinations===
+
=== multiple_destinations -> reject_if_multiple_destinations ===
Checks if the request tries to submit packages to multiple projects at the same
Checks if the request tries to submit packages to multiple projects at the same
time and sets STATUS = FAILED if so
time and sets STATUS = FAILED if so
-
===package_complete===
+
=== package_complete -> check_package_is_complete ===
Checks if each of the packages being submitted contains at least the following
Checks if each of the packages being submitted contains at least the following
files :
files :
Line 31: Line 30:
and sets STATUS = FAILED if not
and sets STATUS = FAILED if not
-
===package_successful===
+
=== package_successful -> check_package_built_at_source ===
Checks if the packages being submitted are built successfully against the  
Checks if the packages being submitted are built successfully against the  
designated target repository for the architectures of interest and sets STATUS = FAILED if not  
designated target repository for the architectures of interest and sets STATUS = FAILED if not  
-
===spec_valid===
+
=== spec_valid -> check_spec ===
Checks if the spec file of each of the packages being submitted is valid. Currently
Checks if the spec file of each of the packages being submitted is valid. Currently
the only validity check applied is that it shouldn't contain the %changelog tag
the only validity check applied is that it shouldn't contain the %changelog tag
Line 42: Line 41:
OBS is responsible for inserting the .changes file contents into the spec file.
OBS is responsible for inserting the .changes file contents into the spec file.
-
===submitter_email===
+
=== submitter_email -> check_submitter_email ===
Gets the request submitter email from OBS and makes sure it is not an empty string
Gets the request submitter email from OBS and makes sure it is not an empty string
sets STATUS = FAILED otherwise.
sets STATUS = FAILED otherwise.
-
===submitter_maintainer===
+
=== submitter_maintainer -> check_submitter_is_maintainer ===
Checks the request submitter is actually a maintainer in the source project from
Checks the request submitter is actually a maintainer in the source project from
which the request is origination, sets STATUS = FAILED otherwise.
which the request is origination, sets STATUS = FAILED otherwise.
-
===target_repo===
+
=== target_repo -> check_has_valid_repo ===
Finds a repository in the source project that builds ONLY against a certain target
Finds a repository in the source project that builds ONLY against a certain target
project / repo , sets STATUS = FAILED if it does not find one.
project / repo , sets STATUS = FAILED if it does not find one.
 +
== Notification ==
== Notification ==
Line 63: Line 63:
Package : https://build.pub.meego.com/package/show?package=boss-participant-notify&project=Project:MINT:Testing
Package : https://build.pub.meego.com/package/show?package=boss-participant-notify&project=Project:MINT:Testing
-
===notify===
+
=== notify ===
Email notification based on templates.
Email notification based on templates.
-
===irc_notify===
+
=== notify_irc :msg, :irc_channel ===
-
TODO: IRC notification to an IRC bot.
+
#TODO IRC notification to an IRC bot.  
== OBS process / workflow ==
== OBS process / workflow ==
Line 78: Line 78:
Package : https://build.pub.meego.com/package/show?package=boss-launcher-robogrator&project=Project:MINT:Testing
Package : https://build.pub.meego.com/package/show?package=boss-launcher-robogrator&project=Project:MINT:Testing
-
===robogrator===
+
=== robogrator ===
Listens to the obsEvent queue for OBS events and launches ruote processes from  
Listens to the obsEvent queue for OBS events and launches ruote processes from  
the matching namesepace (directory hierarchy) configured in /etc/skynet/robogrator.conf
the matching namesepace (directory hierarchy) configured in /etc/skynet/robogrator.conf
Line 84: Line 84:
http://wiki.meego.com/Release_Infrastructure/BOSS/OBS_Event_List
http://wiki.meego.com/Release_Infrastructure/BOSS/OBS_Event_List
-
===standard_workflow_handler===
+
=== standard_workflow_handler ===
Reference implementation of how to do useful things with OBS events.
Reference implementation of how to do useful things with OBS events.

Revision as of 14:18, 26 April 2011

List of participants ported / implemented for BOSS SkyNET :


Contents

OBS prechecks

GIT : https://meego.gitorious.org/meego-infrastructure-tools/boss-participant-prechecks

Package : https://build.pub.meego.com/package/show?package=boss-participant-prechecks&project=Project:MINT:Testing

already_testing -> reject_if_already_tested

Compares the checksum of the packages being submitted to packages of the same name possibly in the Testing project. If the checksum matches it sets STATUS = FAILED

has_changes -> reject_if_duplicate

Compares the checksum of the packages being submitted to packages of the same name possibly in the Target project. If the checksum matches it sets STATUS = FAILED

multiple_destinations -> reject_if_multiple_destinations

Checks if the request tries to submit packages to multiple projects at the same time and sets STATUS = FAILED if so

package_complete -> check_package_is_complete

Checks if each of the packages being submitted contains at least the following files :

 * Source tarball : *.tar.gz *.tar.bz2 or *.tgz
 * Changes file : *.changes
 * Spec file : *.spec

and sets STATUS = FAILED if not

package_successful -> check_package_built_at_source

Checks if the packages being submitted are built successfully against the designated target repository for the architectures of interest and sets STATUS = FAILED if not

spec_valid -> check_spec

Checks if the spec file of each of the packages being submitted is valid. Currently the only validity check applied is that it shouldn't contain the %changelog tag and sets STATUS = FAILED if it does

OBS is responsible for inserting the .changes file contents into the spec file.

submitter_email -> check_submitter_email

Gets the request submitter email from OBS and makes sure it is not an empty string sets STATUS = FAILED otherwise.

submitter_maintainer -> check_submitter_is_maintainer

Checks the request submitter is actually a maintainer in the source project from which the request is origination, sets STATUS = FAILED otherwise.

target_repo -> check_has_valid_repo

Finds a repository in the source project that builds ONLY against a certain target project / repo , sets STATUS = FAILED if it does not find one.


Notification

GIT : https://meego.gitorious.org/meego-infrastructure-tools/boss-participant-notify

NOTE: skynet branch for now

Package : https://build.pub.meego.com/package/show?package=boss-participant-notify&project=Project:MINT:Testing

notify

Email notification based on templates.

notify_irc :msg, :irc_channel

  1. TODO IRC notification to an IRC bot.

OBS process / workflow

GIT : https://meego.gitorious.org/meego-infrastructure-tools/boss-launcher-robogrator

NOTE: skynet branch for now

Package : https://build.pub.meego.com/package/show?package=boss-launcher-robogrator&project=Project:MINT:Testing

robogrator

Listens to the obsEvent queue for OBS events and launches ruote processes from the matching namesepace (directory hierarchy) configured in /etc/skynet/robogrator.conf

http://wiki.meego.com/Release_Infrastructure/BOSS/OBS_Event_List

standard_workflow_handler

Reference implementation of how to do useful things with OBS events.

Personal tools