James,

+1. Thanks, I've merged this into `next`.

-igal

On Fri, Sep 10, 2010 at 3:40 PM, James Turnbull <[email protected]> wrote:
>
> Signed-off-by: James Turnbull <[email protected]>
> ---
>  lib/tasks/mail_patches.rake |   37 +++++++++++++++++++++++++++++++++++++
>  1 files changed, 37 insertions(+), 0 deletions(-)
>  create mode 100644 lib/tasks/mail_patches.rake
>
> diff --git a/lib/tasks/mail_patches.rake b/lib/tasks/mail_patches.rake
> new file mode 100644
> index 0000000..757787a
> --- /dev/null
> +++ b/lib/tasks/mail_patches.rake
> @@ -0,0 +1,37 @@
> +# Mail patches to the puppet-dev list
> +
> +desc "Send patch information to the puppet-dev list"
> +task :mail_patches do
> +    if Dir.glob("00*.patch").length > 0
> +        raise "Patches already exist matching '00*.patch'; clean up first"
> +    end
> +
> +    unless %x{git status} =~ /On branch (.+)/
> +        raise "Could not get branch from 'git status'"
> +    end
> +    branch = $1
> +
> +    unless branch =~ %r{^([^\/]+)/([^\/]+)/([^\/]+)$}
> +        raise "Branch name does not follow <type>/<parent>/<name> model; 
> cannot autodetect parent branch"
> +    end
> +
> +    type, parent, name = $1, $2, $3
> +
> +    # Create all of the patches
> +    sh "git format-patch -C -M -s -n 
> --subject-prefix='PATCH/puppet-dashboard' #{parent}..HEAD"
> +
> +    # And then mail them out.
> +
> +    # If we've got more than one patch, add --compose
> +    if Dir.glob("00*.patch").length > 1
> +        compose = "--compose"
> +    else
> +        compose = ""
> +    end
> +
> +    # Now send the mail.
> +    sh "git send-email #{compose} --no-signed-off-by-cc --suppress-from --to 
> [email protected] 00*.patch"
> +
> +    # Finally, clean up the patches
> +    sh "rm 00*.patch"
> +end
> --
> 1.7.2.2

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-dev?hl=en.

Reply via email to