[PATCH] configuration policies
Wouter van Heyst
larstiq at larstiq.dyndns.org
Sat Nov 25 17:32:07 GMT 2006
On Fri, Nov 10, 2006 at 04:03:35PM -0600, John Arbash Meinel wrote:
> James Henstridge wrote:
> > On 07/11/06, James Henstridge <james at jamesh.id.au> wrote:
> >> The attached bundle implements configuration polcies. The main new
> >> features are:
> >> * support the equivalent of recurse=False for a subset of options in a
> >> section
> >> * have an "append path" policy allowing for e.g. a single
> >> push_location setting for an entire tree of branches.
> >> The branch maintains support for recurse=False option in sections, but
> >> will convert it to a "policy_norecurse" key if bzr writes to the
> >> section.
> > Attached is an updated version of the patch, based on feedback from
> > Aaron and John on IRC. It now uses one key per option to specify
> > policy rather than one key per policy.
> > As an example of use of the plugin, consider the case of someone using
> > bzr to work on a project that uses PQM. They maintain a local copy of
> > the branches, with a mirror at a public location. There are multiple
> > products they can submit merges to, and they organise branches for
> > each product under different subdirectories. This patch would allow
> > the following minimal setup:
> > [/path/to/repo]
> > pqm_email = pqm at example.com
> > push_location = bzr+ssh://publichost/~/public_html/repo
> > push_location:policy = appendpath
> > public_branch = http://publichost/~user/repo
> > public_branch:policy = appendpath
> > [/path/to/repo/product1]
> > pqm_branch = http://example.com/product1
> > [/path/to/repo/product2]
> > pqm_branch = http://example.com/product2
> > This will make "bzr push" do the right thing for any local branches
> > under /path/to/repo, and "bzr pqm-submit" will also work, picking the
> > PQM target branch based on the subdirectory where the branch is
> > stored.
> > James.
> I like the syntax. Though I'm curious about
> 1) Is it compatible? (As in with current settings will users experience
> weird differences if they aren't aware of this switch).
> It seems like it is compatible, as you have to explicitly set :policy =XX
> 2) If you do 'bzr push' does it end up creating a new entry? I'm
> guessing it doesn't since the code is generally:
> saved_loc = config.get_push_location()
> if saved_loc is None:
> if config.get_push_location() is None:
> If that isn't the case, we may need to think about it. Because it means
> the policy starts breaking for nested entries. But I *think* it will
> just work correctly.
Has anyone tried using this? If there are no quirky corners I think this
change would be very good to have.
Wouter van Heyst
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 307 bytes
Desc: Digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20061125/9baa429a/attachment.pgp
More information about the bazaar