Diff for "LandingChanges"

Not logged in - Log In / Register

Differences between revisions 5 and 7 (spanning 2 versions)
Revision 5 as of 2010-05-06 19:04:19
Size: 1882
Editor: mars
Comment:
Revision 7 as of 2012-03-07 17:23:31
Size: 2371
Editor: abentley
Comment:
Deletions are marked like this. Additions are marked like this.
Line 8: Line 8:
break the build use ''./utilities/ec2''. To use this you must be setup to use break the build use ''ec2''. To use this you must be setup to use
Line 15: Line 15:
  ./utilities/ec2 land   ec2 land
Line 18: Line 18:
This finds the merge proposal, infers the target branch, and then runs the test suite for you. If the suite passes it will add the correct reviewer and tags to the commit message, then submit the branch to PQM on your behalf. In order for this to work your branch must have an approved merge proposal with the commit message set. (Don't worry, the tool will warn you right away if these conditions aren't met.) This finds the merge proposal, infers the target branch, and then runs the test suite for you. If the suite passes, it will submit the branch to PQM on your behalf. (It will add the appropriate review tags to the message when submitting.) In order for this to work, your branch must have an approved merge proposal with the commit message set. (Don't worry, the tool will warn you right away if these conditions aren't met.)
Line 20: Line 20:
If you want to land someone elses branch on their behalf then you can If you want to land someone else's branch on their behalf, then you can
Line 23: Line 23:
  ./utilities/ec2 land <URL of merge proposal>   ec2 land <URL of merge proposal>
Line 27: Line 27:
  ./utilities/ec2 land lp:~user/launchpad/branch-name   ec2 land lp:~user/launchpad/branch-name
Line 30: Line 30:
Run `./utilities/ec2 land --help` to see the full list of command-line options. Run `ec2 land --help` to see the full list of command-line options.

=== Credential storage ===

Launchpadlib (which bin/ec2 uses) stores credentials using the python-keyring
library. By default it will use GNOME or KDE keyring/wallet providers. If
those aren't available it will use a password-encrypted file.

If you would instead like to forgo those storages (and any prompts they
generate as well as the safety of encrypted credentials) you can create a
~/keyringrc.cfg file with these contents:

{{{
    [backend]
    default-keyring=keyring.backend.UncryptedFileKeyring
}}}
Line 35: Line 50:
If you have the bzr-pqm plugin installed then you can use the "lp-land" command,
which works in a similar way to "ec2 land", but doesn't run the testsuite first.
If you have the bzr-pqm plugin installed, then you can use the "lp-land" command,
which works in a similar way to "ec2 land", but doesn't run the test suite first.
Line 38: Line 53:
First ensure that you have the PQM submission address set for your launchpad First, ensure that you have the PQM submission address set for your launchpad

Landing Changes

This page describes how a developer with PQM access can land a change.

Using ec2

To run the tests on ec2 before submitting to PQM to try and ensure you won't break the build use ec2. To use this you must be setup to use EC2Test.

From a local branch of the code that you want to submit (which should have a public branch set (TODO: link to documentation of how to set that stuff up)) simply run

  ec2 land

This finds the merge proposal, infers the target branch, and then runs the test suite for you. If the suite passes, it will submit the branch to PQM on your behalf. (It will add the appropriate review tags to the message when submitting.) In order for this to work, your branch must have an approved merge proposal with the commit message set. (Don't worry, the tool will warn you right away if these conditions aren't met.)

If you want to land someone else's branch on their behalf, then you can run, from any LP branch,

  ec2 land <URL of merge proposal>

or, if the branch has exactly one merge proposal,

  ec2 land lp:~user/launchpad/branch-name

Run ec2 land --help to see the full list of command-line options.

Credential storage

Launchpadlib (which bin/ec2 uses) stores credentials using the python-keyring library. By default it will use GNOME or KDE keyring/wallet providers. If those aren't available it will use a password-encrypted file.

If you would instead like to forgo those storages (and any prompts they generate as well as the safety of encrypted credentials) you can create a ~/keyringrc.cfg file with these contents:

    [backend]
    default-keyring=keyring.backend.UncryptedFileKeyring

Using lp-land

If you have the bzr-pqm plugin installed, then you can use the "lp-land" command, which works in a similar way to "ec2 land", but doesn't run the test suite first.

First, ensure that you have the PQM submission address set for your launchpad branches in ~/.bazaar/locations.conf

  [/home/user/launchpad/]
  pqm_email = Canonical PQM <launchpad@pqm.canonical.com>

Again, from any copy of a launchpad branch run

  bzr lp-land

and it will infer the details from the approved merge proposal.

Run bzr lp-land --help to see the full list of command-line options.

LandingChanges (last edited 2020-07-17 16:29:13 by doismellburning)