Diff for "BuildBranchToArchiveUI/UseCaseManualBuild"

Not logged in - Log In / Register

Differences between revisions 4 and 9 (spanning 5 versions)
Revision 4 as of 2010-02-09 14:20:47
Size: 2930
Comment:
Revision 9 as of 2010-02-10 08:40:46
Size: 4369
Comment: Added scenario with existing recipe.
Deletions are marked like this. Additions are marked like this.
Line 6: Line 6:
== Initiating the build for the first time == == Initiating a build with an existing recipe ==
While viewing his branch, Guilherme:
 1. Clicks on the "Build this branch" link, (MOCKUP REQUIRED)
 1. A "Build this branch to a PPA" overlay appears displaying a selection for his target PPA and someone elses recipe that has been created to build toggle branches (shown below). Guilherme selects his target PPA where he wants the packages to be published. By default, the recipe selector is displaying "toggle_std_pkging for Lucid by Toggle Dev Team" and the displayed recipe description states "This is the default recipe for building Toggle. It merges the official packaging branch only.". Guilherme realises that it's exactly what he wants and simply clicks "Build now".
[[http://people.canonical.com/~michaeln/bfb/build_now_overlay_v2.png|{{http://people.canonical.com/~michaeln/bfb/build_now_overlay_v2.png|Build now overlay}}]]

== Initiating a build requiring a new recipe ==
Line 9: Line 15:
[[http://people.canonical.com/~michaeln/bfb/build_now_overlay.png|{{http://people.canonical.com/~michaeln/bfb/build_now_overlay.png|Build now overlay|width=1000}}]]
 1. clicks on the "Build now" button (or "Create a build" or "Build this"),
 1. An overlay appears displaying a template recipe to be used as there are not yet any recipes associated with this branch (image on the right). If there were already recipes available for this branch, Guilherme would have the option of simply selecting one (image on the left) or clicking on 'Create new recipe' which would expand the Recipe details and make the relevant fields editable as shown (image on the right). After checking the packaging branch and selecting the appropriate PPA and clicking 'Start build',
 1. The branch page is updated with a "Recent builds" portlet listing the new build and its status, linking to (somewhere appropriate within) the PPA.

At this point, Launchpad will have created both a new recipe for Guilherme and the first build of that recipe.
 1. Clicks on the "Build this branch" link, (MOCKUP REQUIRED),
 1. A "Build this branch to a PPA" overlay appears displaying a selection for his target PPA and someone elses recipe that has been created to build toggle branches (shown below). Guilherme selects his target PPA where he wants the packages to be published, and then reads the recipe description and realises straight away that it's not what he wants. He clicks on the recipe selector and selects the only other option. He reads the description of this second recipe, realises it's also not something he can re-user, and so clicks on the "Create a new recipe" link.
[[http://people.canonical.com/~michaeln/bfb/build_now_overlay_v2.png|{{http://people.canonical.com/~michaeln/bfb/build_now_overlay_v2.png|Build now overlay}}]]
 1.#3 The overlay transitions (fade in/out) to a "Create a build recipe for Toggle" overlay (shown below). Guilherme enters a useful name and description for his new recipe, selects his packaging branch and clicks save.
[[http://people.canonical.com/~michaeln/bfb/create_recipe_v2-collapsed.png|{{http://people.canonical.com/~michaeln/bfb/create_recipe_v2-collapsed.png|Create recipe}}]]
 1.#4 The overlay transitions back to the previous "Build this branch to a PPA" dialog, with his new recipe already selected. Guilherme clicks 'Build now'.
 1. The overlay disappears and the branch page is updated with a "Recent builds" portlet listing the new build and its status, linking to (somewhere appropriate within) the PPA.
Line 20: Line 27:
== Re-using the recipe for a subsequent build == == Initiating a build for a specific branch version ==
Line 25: Line 32:
NOTE: the following non-js mockups are out of date.

A typical manual branch build use-case

Guilherme has his own branch of the Toggle project and would like to build and publish the resulting package in his PPA, using his own version of the official packaging branch.

Initiating a build with an existing recipe

While viewing his branch, Guilherme:

  1. Clicks on the "Build this branch" link, (MOCKUP REQUIRED)
  2. A "Build this branch to a PPA" overlay appears displaying a selection for his target PPA and someone elses recipe that has been created to build toggle branches (shown below). Guilherme selects his target PPA where he wants the packages to be published. By default, the recipe selector is displaying "toggle_std_pkging for Lucid by Toggle Dev Team" and the displayed recipe description states "This is the default recipe for building Toggle. It merges the official packaging branch only.". Guilherme realises that it's exactly what he wants and simply clicks "Build now".

Build now overlay

Initiating a build requiring a new recipe

While viewing his branch page, Guilherme:

  1. Clicks on the "Build this branch" link, (MOCKUP REQUIRED),
  2. A "Build this branch to a PPA" overlay appears displaying a selection for his target PPA and someone elses recipe that has been created to build toggle branches (shown below). Guilherme selects his target PPA where he wants the packages to be published, and then reads the recipe description and realises straight away that it's not what he wants. He clicks on the recipe selector and selects the only other option. He reads the description of this second recipe, realises it's also not something he can re-user, and so clicks on the "Create a new recipe" link.

Build now overlay

  1. The overlay transitions (fade in/out) to a "Create a build recipe for Toggle" overlay (shown below). Guilherme enters a useful name and description for his new recipe, selects his packaging branch and clicks save.

Create recipe

  1. The overlay transitions back to the previous "Build this branch to a PPA" dialog, with his new recipe already selected. Guilherme clicks 'Build now'.
  2. The overlay disappears and the branch page is updated with a "Recent builds" portlet listing the new build and its status, linking to (somewhere appropriate within) the PPA.

Determining the state of the current build

A few minutes later, Guilherme decides to check on how his build of his branch is progressing...

Initiating a build for a specific branch version

A week later, Guilherme needs to create and publish a specific version of his branch into a separate PPA...

Notes for graceful degradation - Non-JS version

NOTE: the following non-js mockups are out of date. Without JavaScript, the "Build now" link would go to a "/+buildbranch" page for the branch:

Build now overlay

allowing Guilherme to select a recipe and indicate the ppa. If there weren't any recipes, or he wanted to create a new one, he can click on 'create a new recipe' which takes him to:

Build now overlay

Once Guilherme successfully creates a new recipe he is redirected back to the +build page above.

Actually, an alternative here (given that it is all for the non-JS version) would be to combine the two pages into one (nope, that ui is getting too complicated, and it's just for the non-js version, better to keep it as two simpler pages).

Unresolved questions

BuildBranchToArchiveUI/UseCaseManualBuild (last edited 2010-03-02 16:04:46 by michael.nelson)