Merge lp://staging/~sinzui/juju-release-tools/build-source-packages into lp://staging/juju-release-tools
Status: | Merged |
---|---|
Approved by: | Martin Packman |
Approved revision: | 221 |
Merged at revision: | 200 |
Proposed branch: | lp://staging/~sinzui/juju-release-tools/build-source-packages |
Merge into: | lp://staging/juju-release-tools |
Diff against target: |
525 lines (+433/-2) 2 files modified
build_package.py (+260/-2) tests/test_build_package.py (+173/-0) |
To merge this branch: | bzr merge lp://staging/~sinzui/juju-release-tools/build-source-packages |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Martin Packman (community) | Approve | ||
Review via email:
|
Description of the change
Add source package creation to build_packages.py
This branch rethinks how we make source packages to reduce duplication, run unattended, and run faster. The shell scripts were tuned and inlined into the python.
1. Add JujuSeries to help find series, versions codenames, and status
2. Instead of creating a new source pacakage branch by importing the
release tarfile for each series, the action is done once.
3. The rules to create the ubuntu version string and changelog
message are simplified because we now trust CI to make source
packages
4. Source packages are always made unsigned, if a gpgcmd is provided,
the package will be signed afterwards. We don't have two ways to build
a package now. The call to dch now uses "--force-
prevent a prompt to approve unknowwn series (like wily)
5. The directory tree is very regular:
SPB: $WORKSPACE/
SP: $WORKSPACE/
build: $WORKSPACE/
source: $WORKSPACE/
^ We care about the files in each $WORKSPACE/
I used this script yesterday when attempting a release of 1.24 (we aborted)
build_package.py -v source \
--debemail "$DEBEMAIL" --debfullname "$DEBFULLNAME" \
--gpgcmd $JUJU_HOME/cloudgpg \
juju-
Looks good! Some nits and style comments inline, nothing actually must be done before landing this.