mirror of
https://github.com/rpm-software-management/tito.git
synced 2025-02-23 12:12:47 +00:00
Custom tag support in tito release
Signed-off-by: Vadim Rutkovsky <vrutkovs@redhat.com>
This commit is contained in:
parent
1310954605
commit
aadafd4e87
3 changed files with 20 additions and 8 deletions
|
@ -33,7 +33,7 @@ from tito.common import scl_to_rpm_option, get_latest_tagged_version, \
|
|||
get_commit_count, find_gemspec_file, create_builder, compare_version,\
|
||||
find_cheetah_template_file, render_cheetah, replace_spec_release, \
|
||||
find_spec_like_file, warn_out, get_commit_timestamp, chdir, mkdir_p, \
|
||||
find_git_root, info_out, munge_specfile
|
||||
find_git_root, info_out, munge_specfile, BUILDCONFIG_SECTION
|
||||
from tito.compat import getstatusoutput
|
||||
from tito.exception import RunCommandException
|
||||
from tito.exception import TitoException
|
||||
|
@ -461,19 +461,31 @@ class Builder(ConfigObject, BuilderBase):
|
|||
find_spec_like_file(self.start_dir))
|
||||
self.build_tag = self._get_tag_for_version(build_version)
|
||||
|
||||
self.spec_version = build_version.split('-')[-2]
|
||||
self.spec_version = build_version.split('-')[0]
|
||||
self.spec_release = build_version.split('-')[-1]
|
||||
if not self.test:
|
||||
check_tag_exists(self.build_tag, offline=self.offline)
|
||||
return build_version
|
||||
|
||||
def _get_tag_for_version(self, version):
|
||||
def _get_tag_for_version(self, version_and_release):
|
||||
"""
|
||||
Determine what the tag will look like for a given version.
|
||||
Can be overridden when custom taggers override counterpart,
|
||||
tito.VersionTagger._get_tag_for_version().
|
||||
tito.Builder._get_tag_for_version().
|
||||
"""
|
||||
return "{0}-{1}".format(self.project_name, version)
|
||||
version = version_and_release.split('-')[0]
|
||||
release = version_and_release.split('-')[-1]
|
||||
if self.config.has_option(BUILDCONFIG_SECTION, "tag_format"):
|
||||
tag_format = self.config.get(BUILDCONFIG_SECTION, "tag_format")
|
||||
else:
|
||||
tag_format = "{component}-{version}-{release}"
|
||||
kwargs = {
|
||||
'component': self.project_name,
|
||||
'version': version,
|
||||
'release': release
|
||||
}
|
||||
# Strip extra dashes if one of the params is empty
|
||||
return tag_format.format(**kwargs).strip('-')
|
||||
|
||||
def tgz(self):
|
||||
"""
|
||||
|
|
|
@ -257,7 +257,7 @@ class VersionTagger(ConfigObject):
|
|||
write(fd, "\n")
|
||||
else:
|
||||
if old_version is not None:
|
||||
last_tag = self._get_tag_for_version(old_version)
|
||||
last_tag = self._get_new_tag(old_version)
|
||||
output = self._generate_default_changelog(last_tag)
|
||||
else:
|
||||
output = self._new_changelog_msg
|
||||
|
|
|
@ -65,8 +65,8 @@ class VersionTaggerTest(unittest.TestCase):
|
|||
# Init RPM package
|
||||
self.create_rpm_package()
|
||||
|
||||
# Run tito tag
|
||||
tito("tag --accept-auto-changelog")
|
||||
# Run tito release
|
||||
tito("tag release --accept-auto-changelog")
|
||||
|
||||
def write_file(self, path, contents):
|
||||
out_f = open(path, 'w')
|
||||
|
|
Loading…
Add table
Reference in a new issue