* Support for config wildcards
@ 2007-03-13 16:47 Bill Lear
2007-03-13 17:03 ` Junio C Hamano
0 siblings, 1 reply; 4+ messages in thread
From: Bill Lear @ 2007-03-13 16:47 UTC (permalink / raw
To: git
I would like to use our update hook to send email to recipients based
on a branch name pattern. For example, the "abc" team would get email
for all updates to branches that start with the word "abc".
I would like to write something like this in the config file:
[hooks.mail.recipients]
xyz.pickle = me, you, betty-sue
xyz* = joe, jaya, julie
abc* = mark, nancy, svetlana
taug* = sridhar, pete, joe
* = me, you, big-boss
Then, in the update hook, do something like this (very
pseudo-code-ish):
for key, value in $(git config --get-regexp hooks.mail.recipients*); do
key=${key#hooks.mail.recipients}
if $(matches $key $branch); then
recipients=$value
break
fi
done
Which would allow me to change the mailing list recipients based
on the branch without having to update the update hook each time.
But, apparently at least the '*' and '.' characters are not allowed as
keys, and I can't seem to escape them.
Is there a way to do this sort of thing that I am missing?
Bill
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Support for config wildcards
2007-03-13 16:47 Support for config wildcards Bill Lear
@ 2007-03-13 17:03 ` Junio C Hamano
2007-03-13 18:10 ` Bill Lear
0 siblings, 1 reply; 4+ messages in thread
From: Junio C Hamano @ 2007-03-13 17:03 UTC (permalink / raw
To: Bill Lear; +Cc: git
Bill Lear <rael@zopyra.com> writes:
> Is there a way to do this sort of thing that I am missing?
I think the way the config is designed is to place arbitrary
values as values not variable names.
Perhaps...
[mymailhook "everything"]
recipients = me
branch = "*"
[mymailhook "all but xyz"]
recipients = alice bob charlie
branch = "*"
branch = "!xyz"
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Support for config wildcards
2007-03-13 17:03 ` Junio C Hamano
@ 2007-03-13 18:10 ` Bill Lear
2007-03-13 19:50 ` Junio C Hamano
0 siblings, 1 reply; 4+ messages in thread
From: Bill Lear @ 2007-03-13 18:10 UTC (permalink / raw
To: Junio C Hamano; +Cc: git
On Tuesday, March 13, 2007 at 10:03:18 (-0700) Junio C Hamano writes:
>Bill Lear <rael@zopyra.com> writes:
>
>> Is there a way to do this sort of thing that I am missing?
>
>I think the way the config is designed is to place arbitrary
>values as values not variable names.
>
>Perhaps...
>
> [mymailhook "everything"]
> recipients = me
> branch = "*"
>
> [mymailhook "all but xyz"]
> recipients = alice bob charlie
> branch = "*"
> branch = "!xyz"
Hmm, so in my example, if I had "abc" and "xyz"-specific lists:
[mymailhook "abc"]
recipients = jim bob janet
branch = "abc*"
[mymailhook "xyz"]
recipients = alice bob charlie
branch = "xyz*"
[mymailhook "everything"]
recipients = me
branch = "*"
Then, I might, in the update hook, do this, given a branch for which
to find the recipients ("to", below):
for key, pattern in $(git-config --get-regexp 'mymailhook.*.branch'); do
label=${key#mailhook.}
label=${label%.branch}
if $(matches $pattern $branch); then
to += $(git-config --get-regexp "mymailhook.${label}.recipients")
fi
done
But that doesn't work for your example "all but xyz". I guess in that
case, I would need to check both branch patterns and if one did not
match, then I would reject it and not add to the recipient list.
Was that basically what you had in mind?
Bill
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Support for config wildcards
2007-03-13 18:10 ` Bill Lear
@ 2007-03-13 19:50 ` Junio C Hamano
0 siblings, 0 replies; 4+ messages in thread
From: Junio C Hamano @ 2007-03-13 19:50 UTC (permalink / raw
To: Bill Lear; +Cc: git
Bill Lear <rael@zopyra.com> writes:
> But that doesn't work for your example "all but xyz". I guess in that
> case, I would need to check both branch patterns and if one did not
> match, then I would reject it and not add to the recipient list.
>
> Was that basically what you had in mind?
Yes, similar to how positive and negative entries in .gitignore
influences the final outcome of the 'ignoredness' for each path.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2007-03-13 19:50 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-03-13 16:47 Support for config wildcards Bill Lear
2007-03-13 17:03 ` Junio C Hamano
2007-03-13 18:10 ` Bill Lear
2007-03-13 19:50 ` Junio C Hamano
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).