You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

49 lines
1.1 KiB

#!/usr/bin/env python
import subprocess
import ruamel.yaml
import os
last_tag = (
subprocess.Popen(
["git", "describe", "--tags", "--abbrev=0"], stdout=subprocess.PIPE
)
.communicate()[0]
.rstrip()
.decode("utf-8")
.removeprefix("v")
.split(".")
)
# Use CI provided base ref if available, else use HEAD to guess
git_branch = os.getenv(
"GITHUB_BASE_REF",
(
subprocess.Popen(
["git", "rev-parse", "--abbrev-ref", "HEAD"], stdout=subprocess.PIPE
)
.communicate()[0]
.rstrip()
.decode("utf-8")
),
)
if git_branch.startswith("release"):
version_comp_index = 2
else:
version_comp_index = 1
last_tag[version_comp_index] = str(int(last_tag[version_comp_index]) + 1)
new_tag = ".".join(last_tag)
yaml = ruamel.yaml.YAML()
yaml.indent(mapping=2, sequence=4, offset=2)
yaml.explicit_start = True
with open(
"galaxy.yml",
) as galaxy_yml:
config = yaml.load(galaxy_yml)
config["version"] = new_tag
with open("galaxy.yml", "w") as galaxy_yml:
yaml.dump(config, galaxy_yml)