Mackerel-ReleaseUtils
view release on metacpan or search on metacpan
lib/Mackerel/ReleaseUtils.pm view on Meta::CPAN
sub build_pull_request_body {
my ($next_version, @releases) = @_;
my $body = "Release version $next_version\n\n";
for my $rel (@releases) {
$body .= sprintf "- %s #%s\n", $rel->{title}, $rel->{number};
}
$body;
}
sub update_versions {
my ($package_name, $current_version, $next_version) = @_;
### update versions
my $cur_ver_reg = quotemeta $current_version;
# update rpm spec
replace sprintf('packaging/rpm/%s*.spec', $package_name) => sub {
my $content = shift;
$content =~ s/^(Version:\s+)$cur_ver_reg/$1$next_version/ms;
$content;
lib/Mackerel/ReleaseUtils.pm view on Meta::CPAN
command qw/gobump set/, $next_version, '-w';
}
sub _detect_debian_revision {
my ($packagen_name, $content) = @_;
my $p = quotemeta $packagen_name;
my ($debian_revision) = $content =~ /^$p \([0-9]+(?:\.[0-9]+){2}-([^)]+)\) stable;/ms;
$debian_revision;
}
sub update_changelog {
my ($package_name, $next_version, @releases) = @_;
my $email = 'mackerel-developers@hatena.ne.jp';
my $name = 'mackerel';
my $old_locale = setlocale(LC_TIME);
setlocale(LC_TIME, "C");
my $g = guard {
setlocale(LC_TIME, $old_locale);
};
lib/Mackerel/ReleaseUtils.pm view on Meta::CPAN
my $update = sprintf "\n\n## %s (%s)\n\n", $next_version, $now->strftime('%Y-%m-%d');
for my $rel (@releases) {
$update .= sprintf "* %s #%d (%s)\n", $rel->{title}, $rel->{number}, $rel->{user}{login};
}
$content =~ s/\A# Changelog/# Changelog$update/;
$content;
};
}
sub update_makefile {
my $next_version = shift;
replace 'Makefile' => sub {
my $content = shift;
$content =~ s/^VERSION( *:*= *).*?\n/VERSION$1$next_version\n/ms;
$content;
};
}
sub create_release_pull_request {
my ($package_name, $code, $opt_next_version) = @_;
( run in 0.226 second using v1.01-cache-2.11-cpan-4d4bc49f3ae )