This commit is contained in:
Martin Fencl
2022-07-13 18:43:52 +02:00
commit d9bee53a00
22 changed files with 419 additions and 0 deletions

View File

@@ -0,0 +1,47 @@
#!/usr/bin/env python3
import os
import sys
import requests
import semver
def start_pre_release_build():
gitlab_project_id = os.environ["CI_PROJECT_ID"]
api_token = os.environ["CISCRIPT_API_TOKEN"]
branch = os.environ["CI_COMMIT_BRANCH"]
print(f"branch '{branch}'")
major_version = minor_version = 0
patch_version = int(os.environ["CI_PIPELINE_ID"])
commit_short_sha = os.environ["CI_COMMIT_SHORT_SHA"]
future_version = str(
semver.VersionInfo(
major=major_version,
minor=minor_version,
patch=patch_version,
prerelease="beta",
build=commit_short_sha,
)
)
future_tag_name = f"v{future_version}"
print(f"future tag name '{future_tag_name}'")
response = requests.post(
(
f"https://gitlab.princip.cz/"
f"api/v4/projects/{gitlab_project_id}/repository/tags"
),
headers={"PRIVATE-TOKEN": api_token},
params={"tag_name": future_tag_name, "ref": branch},
)
if response.status_code == 201:
print(f"tag '{future_tag_name}' created")
else:
sys.exit(
f"error creating tag '{future_tag_name}', "
f"status code '{response.status_code}', json '{response.json()}'"
)
if __name__ == "__main__":
start_pre_release_build()