diff options
Diffstat (limited to 'packages')
| -rwxr-xr-x | packages/brpm | 26 | ||||
| -rw-r--r-- | packages/redhat/cloud-init.spec.in | 2 |
2 files changed, 24 insertions, 4 deletions
diff --git a/packages/brpm b/packages/brpm index 1735f5bb..e6b03609 100755 --- a/packages/brpm +++ b/packages/brpm @@ -58,8 +58,7 @@ def get_log_header(version): a_rev = rev break if not a_rev: - return format_change_line(datetime.now(), - '??', version) + return None # Extract who made that tag as the header cmd = ['bzr', 'log', '-r%s' % (a_rev), '--timezone=utc'] @@ -107,6 +106,10 @@ def generate_spec_contents(args, tmpl_fn, top_dir, arc_fn): subs['version'] = version subs['revno'] = revno subs['release'] = "bzr%s" % (revno) + if args.sub_release is not None: + subs['subrelease'] = "." + str(args.sub_release) + else: + subs['subrelease'] = '' subs['archive_name'] = arc_fn cmd = [util.abs_join(find_root(), 'tools', 'read-dependencies')] @@ -127,13 +130,23 @@ def generate_spec_contents(args, tmpl_fn, top_dir, arc_fn): # Format a nice changelog (as best as we can) changelog = util.load_file(util.abs_join(find_root(), 'ChangeLog')) changelog_lines = [] + missing_versions = 0 for line in changelog.splitlines(): if not line.strip(): continue if re.match(r"^\s*[\d][.][\d][.][\d]:\s*", line): line = line.strip(":") header = get_log_header(line) - changelog_lines.append(header) + if not header: + missing_versions += 1 + if missing_versions == 1: + # Must be using a new 'dev'/'trunk' release + changelog_lines.append(format_change_line(datetime.now(), '??')) + else: + sys.stderr.write(("Changelog version line %s " + "does not have a corresponding tag!\n") % (line)) + else: + changelog_lines.append(header) else: changelog_lines.append(line) subs['changelog'] = "\n".join(changelog_lines) @@ -166,6 +179,13 @@ def main(): " (default: %(default)s)"), default=False, action='store_true') + parser.add_argument('-s', "--sub-release", dest="sub_release", + metavar="RELEASE", + help=("a 'internal' release number to concat" + " with the bzr version number to form" + " the final version number"), + type=int, + default=None) parser.add_argument("-p", "--patch", dest="patches", help=("include the following patch when building"), default=[], diff --git a/packages/redhat/cloud-init.spec.in b/packages/redhat/cloud-init.spec.in index 12f0b144..30bcd050 100644 --- a/packages/redhat/cloud-init.spec.in +++ b/packages/redhat/cloud-init.spec.in @@ -11,7 +11,7 @@ Name: cloud-init Version: ${version} -Release: ${release}%{?dist} +Release: ${release}${subrelease}%{?dist} Summary: Cloud instance init scripts Group: System Environment/Base |
