Merge lp:~didrocks/cupstream2distro-config/support-manual-rebuild-and-mir into lp:cupstream2distro-config

Proposed by Didier Roche-Tolomelli
Status: Merged
Approved by: Łukasz Zemczak
Approved revision: 527
Merged at revision: 524
Proposed branch: lp:~didrocks/cupstream2distro-config/support-manual-rebuild-and-mir
Merge into: lp:cupstream2distro-config
Diff against target: 166 lines (+58/-35)
6 files modified
daily-release/config/defaults.conf (+1/-0)
daily-release/cu2d-update-stack (+2/-0)
daily-release/jenkins-templates/master-config.xml.tmpl (+5/-0)
daily-release/jenkins-templates/prepare-project-config.xml.tmpl (+4/-0)
stacks/head/mir.cfg (+5/-35)
stacks/head/mirslave.cfg (+41/-0)
To merge this branch: bzr merge lp:~didrocks/cupstream2distro-config/support-manual-rebuild-and-mir
Reviewer Review Type Date Requested Status
Łukasz Zemczak Approve
PS Jenkins bot continuous-integration Approve
Review via email: mp+175247@code.launchpad.net

Commit message

This branch adds support for the new "force rebuild parameter" both inconditionnaly (on every build for a components) and on demand if the force_rebuild parameter is set.
If rebuild_only is empty (and no check_with_whole_ppa), force_rebuild will be executed on all components of the stack. If it's only a set of components precised, it will be only affects those.

Support Mir as well by moving tests from mir to mirslaves, and building unity-system-compositor there with new force-rebuild parameter. This will ensure that everyday, once mir is built, we have unity-system-compositor rebuilding with against Mir without have to bump the build-dep. Mir stack is in manual publishing mode and so, Mir will only get released if Mirslave pass tests. Mirslaves will as well be in manual publishing mode as the dependant stack (Mir) is in manual publishing mode.

Description of the change

This branch adds support for the new "force rebuild parameter" both inconditionnaly (on every build for a components) and on demand if the force_rebuild parameter is set.
If rebuild_only is empty (and no check_with_whole_ppa), force_rebuild will be executed on all components of the stack. If it's only a set of components precised, it will be only affects those.

Support Mir as well by moving tests from mir to mirslaves, and building unity-system-compositor there with new force-rebuild parameter. This will ensure that everyday, once mir is built, we have unity-system-compositor rebuilding with against Mir without have to bump the build-dep. Mir stack is in manual publishing mode and so, Mir will only get released if Mirslave pass tests. Mirslaves will as well be in manual publishing mode as the dependant stack (Mir) is in manual publishing mode.

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

Ok, looking good. Force rebuild looks useful - no way to test it, but the code looks ok.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'daily-release/config/defaults.conf'
--- daily-release/config/defaults.conf 2013-03-12 17:42:05 +0000
+++ daily-release/config/defaults.conf 2013-07-17 11:00:36 +0000
@@ -4,3 +4,4 @@
4 dest: ubuntu4 dest: ubuntu
5 daily_release_default:5 daily_release_default:
6 daily_release: True6 daily_release: True
7 force-rebuild: False
78
=== modified file 'daily-release/cu2d-update-stack'
--- daily-release/cu2d-update-stack 2013-06-25 12:25:34 +0000
+++ daily-release/cu2d-update-stack 2013-07-17 11:00:36 +0000
@@ -141,6 +141,8 @@
141 stack['series-version'])141 stack['series-version'])
142 if stack['dest'] != 'ubuntu':142 if stack['dest'] != 'ubuntu':
143 ctx['opts'] += ' -d {}'.format(stack['dest'])143 ctx['opts'] += ' -d {}'.format(stack['dest'])
144 if stack['projects'][srcname]['force-rebuild']:
145 ctx['opts'] += ' -f'
144 ctx['projectname'] = srcname146 ctx['projectname'] = srcname
145 setup_job(jkh, jjenv, jobname, TEMPLATES['prepare-project'],147 setup_job(jkh, jjenv, jobname, TEMPLATES['prepare-project'],
146 ctx, update)148 ctx, update)
147149
=== modified file 'daily-release/jenkins-templates/master-config.xml.tmpl'
--- daily-release/jenkins-templates/master-config.xml.tmpl 2013-06-10 07:55:58 +0000
+++ daily-release/jenkins-templates/master-config.xml.tmpl 2013-07-17 11:00:36 +0000
@@ -22,6 +22,11 @@
22 <description>don't rebuild the current stack, only rerun it with the whole ppa content for the check step</description>22 <description>don't rebuild the current stack, only rerun it with the whole ppa content for the check step</description>
23 <defaultValue>false</defaultValue>23 <defaultValue>false</defaultValue>
24 </hudson.model.BooleanParameterDefinition>24 </hudson.model.BooleanParameterDefinition>
25 <hudson.model.BooleanParameterDefinition>
26 <name>FORCE_REBUILD</name>
27 <description>Force rebuilding above selected components (matching eventually REBUILD_ONLY), even if they have nothing to release.</description>
28 <defaultValue>false</defaultValue>
29 </hudson.model.BooleanParameterDefinition>
25 </parameterDefinitions>30 </parameterDefinitions>
26 </hudson.model.ParametersDefinitionProperty>31 </hudson.model.ParametersDefinitionProperty>
27 </properties>32 </properties>
2833
=== modified file 'daily-release/jenkins-templates/prepare-project-config.xml.tmpl'
--- daily-release/jenkins-templates/prepare-project-config.xml.tmpl 2013-06-13 16:30:07 +0000
+++ daily-release/jenkins-templates/prepare-project-config.xml.tmpl 2013-07-17 11:00:36 +0000
@@ -43,6 +43,10 @@
43 fi43 fi
44fi44fi
4545
46if [ "$FORCE_REBUILD" = "true" ]; then
47 OPTS="$OPTS -f"
48fi
49
46# WS Clean-up50# WS Clean-up
47rm -f *xml51rm -f *xml
4852
4953
=== modified file 'stacks/head/mir.cfg'
--- stacks/head/mir.cfg 2013-07-16 15:36:00 +0000
+++ stacks/head/mir.cfg 2013-07-17 11:00:36 +0000
@@ -4,35 +4,9 @@
4 series-version: '13.10'4 series-version: '13.10'
5 ppa: ubuntu-unity/daily-build-next5 ppa: ubuntu-unity/daily-build-next
6 dest: ubuntu-unity/next6 dest: ubuntu-unity/next
7 extracheck: autopilot-saucy-daily_release7 extracheck: False # checks are run in mirslave stack
8 schedule: 0 1 * * 1-78 schedule: 0 0 * * 1-7
9 dependencies:9 manualpublish: True # forced manual publishing as we need mirslave stack to be published at the same time
10 - qa
11 test_parameters:
12 apmachines: ati intel
13 packages: libboost-program-options1.53.0 libboost-system1.53.0 libgflags2 libgoogle-glog0 libunwind8 libegl1-mesa libegl1-mesa-drivers libgbm1 libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libgles2-mesa xserver-common xserver-xorg-core xserver-xorg-video-ati xserver-xorg-video-radeon xserver-xorg-video-intel xserver-xorg-video-nouveau unity-system-compositor libmirprotobuf0 libmirserver0 libmirclient1 lightdm liblightdm-gobject-1-0 unity-greeter
14 testpackages: unity-autopilot
15 tests: unity.tests.launcher.test_capture.LauncherCaptureTests.test_launcher_capture_while_not_sticky_and_hidden unity.tests.launcher.test_capture.LauncherCaptureTests.test_launcher_captures_while_sticky_and_revealed unity.tests.launcher.test_capture.LauncherCaptureTests.test_launcher_not_capture_while_not_sticky_and_hidden_moving_right unity.tests.launcher.test_capture.LauncherCaptureTests.test_launcher_not_capture_while_not_sticky_and_revealed unity.tests.launcher.test_icon_behavior.LauncherDragIconsBehavior.test_can_drag_icon_below_bfb unity.tests.launcher.test_icon_behavior.LauncherIconsTests.test_bfb_tooltip_disappear_when_dash_is_opened unity.tests.launcher.test_icon_behavior.LauncherIconsTests.test_unminimize_minimized_immediately_after_show_windows unity.tests.launcher.test_icon_behavior.LauncherIconsTests.test_right_click_on_icon_ends_expo unity.tests.launcher.test_icon_behavior.LauncherIconsTests.test_expo_launcher_icon_initiates_expo unity.tests.launcher.test_keynav.LauncherKeyNavTests.test_alt_f1_closes_dash unity.tests.launcher.test_keynav.LauncherKeyNavTests.test_alt_f1_closes_hud unity.tests.launcher.test_keynav.LauncherKeyNavTests.test_launcher_keynav_cancel_on_click_outside unity.tests.launcher.test_keynav.LauncherKeyNavTests.test_launcher_keynav_cancel_on_quicklist_activate unity.tests.launcher.test_reveal.LauncherRevealTests.test_reveal_on_mouse_to_edge unity.tests.launcher.test_scroll.LauncherScrollTests.test_autoscrolling_from_bottom unity.tests.launcher.test_scroll.LauncherScrollTests.test_autoscrolling_from_top unity.tests.launcher.test_switcher.LauncherSwitcherTests.test_launcher_switcher_cycling_forward unity.tests.launcher.test_tooltips.LauncherTooltipTests.test_launcher_bfb_tooltip_when_open unity.tests.launcher.test_visual.LauncherVisualTests.test_opening_dash_desaturates_icons unity.tests.test_command_lens.CommandScopeSearchTests.test_ctrl_tab_switching unity.tests.test_dash.DashBorderTests.test_click_bottom_border unity.tests.test_dash.DashClipboardTests.test_ctrl_x_v unity.tests.test_dash.DashClipboardTests.test_middle_click_paste unity.tests.test_dash.DashCrossMonitorsTests.test_dash_close_on_cross_monitor_click unity.tests.test_dash.DashKeyNavTests.test_control_tab_scope_cycle unity.tests.test_dash.DashMultiKeyTests.test_multi_key_delete unity.tests.test_dash.DashRevealTests.test_dash_reveal unity.tests.test_dash.DashRevealWithSpreadTests.test_command_scope_opens_when_in_spread unity.tests.test_dash.PreviewNavigateTests.test_overlay_text unity.tests.test_home_lens.HomeScopeSearchTests.test_quick_run_app unity.tests.test_hud.HudBehaviorTests.test_alt_arrow_keys_not_eaten unity.tests.test_hud.HudCrossMonitorsTests.test_hud_close_on_cross_monitor_click unity.tests.test_hud.HudLockedLauncherInteractionsTests.test_hud_desaturates_launcher_icons unity.tests.test_ibus.IBusTestsAnthy.test_anthy unity.tests.test_ibus.IBusTestsAnthyIgnore.test_ignore_key_events_on_hud unity.tests.test_ibus.IBusTestsPinyin.test_pinyin unity.tests.test_panel.PanelCrossMonitorsTests.test_panel_title_updates_moving_window unity.tests.test_panel.PanelMenuTests.test_menus_are_added_on_new_application unity.tests.test_panel.PanelTitleTests.test_panel_title_on_empty_desktop unity.tests.test_panel.PanelWindowButtonsTests.test_hud_maximize_button_does_not_change_dash_form_factor unity.tests.test_quicklist.QuicklistActionTests.test_quicklist_application_item_focus_last_active_window unity.tests.test_showdesktop.ShowDesktopTests.test_showdesktop_hides_apps unity.tests.test_switcher.SwitcherDetailsModeTests.test_detail_mode_selects_last_active_window unity.tests.test_switcher.SwitcherTests.test_lazy_switcher_initiate unity.tests.test_switcher.SwitcherWindowsManagementTests.test_switcher_rises_other_application unity.tests.xim.test_gcin.GcinTestHangul.test_dash_input
16 ci_default:
17 autolanding_template: mbs-autolanding-config.xml.tmpl
18 rebuild_template: mbs-rebuild-config.xml.tmpl
19 hook_source: lp:~private-ps-quality-team/+junk/mbs-archive-hooks
20 hooks: H05set_package_version D00mbs_archive
21 configurations:
22 saucy-amd64:
23 template: mbs-pbuilder-config.xml.tmpl
24 node_label: pbuilder
25 local_archive_host: naartjie
26 local_archive_login: ubuntu
27 local_archive_tmp: /home/ubuntu/local-archive
28 local_archive_name: head.mir
29 local_archive_source: http://naartjie/archive/
30 local_archive_pocket: raring
31 build_timeout: 120
32 autolanding:
33 ppa_target: ppa:mir-team/staging
34 distributions: raring,saucy
35 use_description_for_commit: True
36 projects:10 projects:
37 mir:11 mir:
38 contact_email: thomi.richards@canonical.com francis.ginther@canonical.com12 contact_email: thomi.richards@canonical.com francis.ginther@canonical.com
@@ -52,9 +26,6 @@
52 template: False26 template: False
53 rebuild: lightdm-mir,unity-system-compositor27 rebuild: lightdm-mir,unity-system-compositor
54 # TODO irc if autolanding fails28 # TODO irc if autolanding fails
55 qmir:
56 contact_email: thomi.richards@canonical.com
57 daily_release: False # This is a deprecated project, will be replace by platform-api supporting mir
58 lightdm-trunk:29 lightdm-trunk:
59 daily_release: False # look at lightdm, then will be merged back in trunk30 daily_release: False # look at lightdm, then will be merged back in trunk
60 target_branch: lp:lightdm31 target_branch: lp:lightdm
@@ -65,12 +36,11 @@
65 ppa_target: ppa:lightdm-team/daily36 ppa_target: ppa:lightdm-team/daily
66 distributions: precise,quantal,raring,saucy37 distributions: precise,quantal,raring,saucy
67 lightdm:38 lightdm:
39 daily_release: False # won't daily release until we have tests
68 target_branch: lp:~mir-team/lightdm/unity40 target_branch: lp:~mir-team/lightdm/unity
69 contact_email: thomi.richards@canonical.com francis.ginther@canonical.com41 contact_email: thomi.richards@canonical.com francis.ginther@canonical.com
70 hooks: H05set_package_version D00mbs_archive D09add_ppa~canonical-qt5-edgers~qt5-proper D09add_ppa~mir-team~staging42 hooks: H05set_package_version D00mbs_archive D09add_ppa~canonical-qt5-edgers~qt5-proper D09add_ppa~mir-team~staging
71 unity-greeter:43 unity-greeter:
44 daily_release: False # won't daily release until we have tests
72 unity-greeter-session-broadcast:45 unity-greeter-session-broadcast:
73 daily_release: False # For now, this project has no real code, re-enable once implemented46 daily_release: False # For now, this project has no real code, re-enable once implemented
74 unity-system-compositor:
75 contact_email: thomi.richards@canonical.com francis.ginther@canonical.com
76 hooks: H05set_package_version D00mbs_archive D09add_ppa~canonical-qt5-edgers~qt5-proper D09add_ppa~mir-team~staging
7747
=== added file 'stacks/head/mirslave.cfg'
--- stacks/head/mirslave.cfg 1970-01-01 00:00:00 +0000
+++ stacks/head/mirslave.cfg 2013-07-17 11:00:36 +0000
@@ -0,0 +1,41 @@
1stack:
2 name: mirslave
3 series: saucy
4 series-version: '13.10'
5 ppa: ubuntu-unity/daily-build-next
6 dest: ubuntu-unity/next
7 extracheck: autopilot-saucy-daily_release
8 schedule: 30 0 * * 1-7
9 dependencies:
10 - qa
11 - mir
12 test_parameters:
13 apmachines: ati intel
14 packages: libboost-program-options1.53.0 libboost-system1.53.0 libgflags2 libgoogle-glog0 libunwind8 libegl1-mesa libegl1-mesa-drivers libgbm1 libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libgles2-mesa xserver-common xserver-xorg-core xserver-xorg-video-ati xserver-xorg-video-radeon xserver-xorg-video-intel xserver-xorg-video-nouveau unity-system-compositor libmirprotobuf0 libmirserver0 libmirclient1 lightdm liblightdm-gobject-1-0 unity-greeter
15 testpackages: unity-autopilot
16 tests: unity.tests.launcher.test_capture.LauncherCaptureTests.test_launcher_capture_while_not_sticky_and_hidden unity.tests.launcher.test_capture.LauncherCaptureTests.test_launcher_captures_while_sticky_and_revealed unity.tests.launcher.test_capture.LauncherCaptureTests.test_launcher_not_capture_while_not_sticky_and_hidden_moving_right unity.tests.launcher.test_capture.LauncherCaptureTests.test_launcher_not_capture_while_not_sticky_and_revealed unity.tests.launcher.test_icon_behavior.LauncherDragIconsBehavior.test_can_drag_icon_below_bfb unity.tests.launcher.test_icon_behavior.LauncherIconsTests.test_bfb_tooltip_disappear_when_dash_is_opened unity.tests.launcher.test_icon_behavior.LauncherIconsTests.test_unminimize_minimized_immediately_after_show_windows unity.tests.launcher.test_icon_behavior.LauncherIconsTests.test_right_click_on_icon_ends_expo unity.tests.launcher.test_icon_behavior.LauncherIconsTests.test_expo_launcher_icon_initiates_expo unity.tests.launcher.test_keynav.LauncherKeyNavTests.test_alt_f1_closes_dash unity.tests.launcher.test_keynav.LauncherKeyNavTests.test_alt_f1_closes_hud unity.tests.launcher.test_keynav.LauncherKeyNavTests.test_launcher_keynav_cancel_on_click_outside unity.tests.launcher.test_keynav.LauncherKeyNavTests.test_launcher_keynav_cancel_on_quicklist_activate unity.tests.launcher.test_reveal.LauncherRevealTests.test_reveal_on_mouse_to_edge unity.tests.launcher.test_scroll.LauncherScrollTests.test_autoscrolling_from_bottom unity.tests.launcher.test_scroll.LauncherScrollTests.test_autoscrolling_from_top unity.tests.launcher.test_switcher.LauncherSwitcherTests.test_launcher_switcher_cycling_forward unity.tests.launcher.test_tooltips.LauncherTooltipTests.test_launcher_bfb_tooltip_when_open unity.tests.launcher.test_visual.LauncherVisualTests.test_opening_dash_desaturates_icons unity.tests.test_command_lens.CommandScopeSearchTests.test_ctrl_tab_switching unity.tests.test_dash.DashBorderTests.test_click_bottom_border unity.tests.test_dash.DashClipboardTests.test_ctrl_x_v unity.tests.test_dash.DashClipboardTests.test_middle_click_paste unity.tests.test_dash.DashCrossMonitorsTests.test_dash_close_on_cross_monitor_click unity.tests.test_dash.DashKeyNavTests.test_control_tab_scope_cycle unity.tests.test_dash.DashMultiKeyTests.test_multi_key_delete unity.tests.test_dash.DashRevealTests.test_dash_reveal unity.tests.test_dash.DashRevealWithSpreadTests.test_command_scope_opens_when_in_spread unity.tests.test_dash.PreviewNavigateTests.test_overlay_text unity.tests.test_home_lens.HomeScopeSearchTests.test_quick_run_app unity.tests.test_hud.HudBehaviorTests.test_alt_arrow_keys_not_eaten unity.tests.test_hud.HudCrossMonitorsTests.test_hud_close_on_cross_monitor_click unity.tests.test_hud.HudLockedLauncherInteractionsTests.test_hud_desaturates_launcher_icons unity.tests.test_ibus.IBusTestsAnthy.test_anthy unity.tests.test_ibus.IBusTestsAnthyIgnore.test_ignore_key_events_on_hud unity.tests.test_ibus.IBusTestsPinyin.test_pinyin unity.tests.test_panel.PanelCrossMonitorsTests.test_panel_title_updates_moving_window unity.tests.test_panel.PanelMenuTests.test_menus_are_added_on_new_application unity.tests.test_panel.PanelTitleTests.test_panel_title_on_empty_desktop unity.tests.test_panel.PanelWindowButtonsTests.test_hud_maximize_button_does_not_change_dash_form_factor unity.tests.test_quicklist.QuicklistActionTests.test_quicklist_application_item_focus_last_active_window unity.tests.test_showdesktop.ShowDesktopTests.test_showdesktop_hides_apps unity.tests.test_switcher.SwitcherDetailsModeTests.test_detail_mode_selects_last_active_window unity.tests.test_switcher.SwitcherTests.test_lazy_switcher_initiate unity.tests.test_switcher.SwitcherWindowsManagementTests.test_switcher_rises_other_application unity.tests.xim.test_gcin.GcinTestHangul.test_dash_input
17 ci_default:
18 autolanding_template: mbs-autolanding-config.xml.tmpl
19 rebuild_template: mbs-rebuild-config.xml.tmpl
20 hook_source: lp:~private-ps-quality-team/+junk/mbs-archive-hooks
21 hooks: H05set_package_version D00mbs_archive
22 configurations:
23 saucy-amd64:
24 template: mbs-pbuilder-config.xml.tmpl
25 node_label: pbuilder
26 local_archive_host: naartjie
27 local_archive_login: ubuntu
28 local_archive_tmp: /home/ubuntu/local-archive
29 local_archive_name: head.mir
30 local_archive_source: http://naartjie/archive/
31 local_archive_pocket: raring
32 build_timeout: 120
33 autolanding:
34 ppa_target: ppa:mir-team/staging
35 distributions: raring,saucy
36 use_description_for_commit: True
37 projects:
38 unity-system-compositor:
39 force-rebuild: True # rebuild everyday as Mir is changing ABI everyday
40 contact_email: thomi.richards@canonical.com francis.ginther@canonical.com
41 hooks: H05set_package_version D00mbs_archive D09add_ppa~canonical-qt5-edgers~qt5-proper D09add_ppa~mir-team~staging

Subscribers

People subscribed via source and target branches

to all changes: