create release first

This commit is contained in:
Wolfgang Hottgenroth 2021-01-13 18:15:06 +01:00
parent 2e4ae7c984
commit 494a402cdf
Signed by: wn
GPG Key ID: 6C1E5E531E0D5D7F
3 changed files with 11 additions and 10 deletions

View File

@ -24,6 +24,6 @@ release:
- release
script:
- zip GitlabReleaseTool.zip gitlabreleaseuploader.py deleterelease.py checksemver.py
- echo python gitlabreleaseuploader.py -p $PRIVATE_TOKEN -i $CI_PROJECT_ID -u $CI_PROJECT_URL -I $CI_SERVER_URL
- python gitlabreleaseuploader.py -p $PRIVATE_TOKEN -i $CI_PROJECT_ID -u $CI_PROJECT_URL -I $CI_SERVER_URL
-f GitlabReleaseTool.zip -F info.json -T $CI_COMMIT_SHA

View File

@ -102,8 +102,8 @@ if (releaseInfoFilename):
if releaseName == '':
raise Exception('No release name given')
if (releaseTag == '') and createRelease:
raise Exception('No release tag given but creation of release requested')
if releaseTag == '':
raise Exception('No release tag given')
if (releaseTagTarget == '') and createReleaseTag:
raise Exception('No release tag target given but creation of tag requested')
if (releaseDescription == '') and createRelease:
@ -149,7 +149,7 @@ if filesToUpload:
# --- create release tag
if createReleaseTag:
url = ("%s/api/v4//projects/%s/repository/tags" % (instanceUrl, projectId))
url = "%s/api/v4//projects/%s/repository/tags" % (instanceUrl, projectId)
headers = {"PRIVATE-TOKEN": privateToken, "Content-Type": "application/json"}
payload = {
@ -191,7 +191,7 @@ if createRelease:
# --- update release in case of additional description
if not createRelease and releaseDescription:
# --- get release to fetch existing description
url = "%s/api/v4/projects/%s/releases/%s" % (instanceUrl, projectId, releaseName)
url = "%s/api/v4/projects/%s/releases/%s" % (instanceUrl, projectId, releaseTag)
headers = {"PRIVATE-TOKEN": privateToken}
if verbose:
@ -206,7 +206,7 @@ if not createRelease and releaseDescription:
releaseDescription += existingDescription
# --- update release
url = "%s/api/v4/projects/%s/releases/%s" % (instanceUrl, projectId, releaseName)
url = "%s/api/v4/projects/%s/releases/%s" % (instanceUrl, projectId, releaseTag)
headers = {"PRIVATE-TOKEN": privateToken, "Content-Type": "application/json"}
payload = {
@ -227,7 +227,7 @@ if not createRelease and releaseDescription:
# --- add assets
# get existing assets
headers = {"PRIVATE-TOKEN": privateToken}
url = "%s/api/v4/projects/%s/releases/%s" % (instanceUrl, projectId, releaseName)
url = "%s/api/v4/projects/%s/releases/%s" % (instanceUrl, projectId, releaseTag)
if verbose:
print("GET to {}".format(url))
result = requests.get(url, headers=headers, verify=caBundle)
@ -241,7 +241,7 @@ assets.extend(links)
headers = {"PRIVATE-TOKEN": privateToken}
for link in links:
assetId = link['id']
url = "%s/api/v4/projects/%s/releases/%s/assets/links/%s" % (instanceUrl, projectId, releaseName, assetId)
url = "%s/api/v4/projects/%s/releases/%s/assets/links/%s" % (instanceUrl, projectId, releaseTag, assetId)
if verbose:
print("DELETE to {}".format(url))
result = requests.delete(url, headers=headers, verify=caBundle)
@ -251,7 +251,7 @@ for link in links:
# create all assets ("existing" and new)
headers = {"PRIVATE-TOKEN": privateToken, "Content-Type": "application/json"}
url = "%s/api/v4/projects/%s/releases/%s/assets/links" % (instanceUrl, projectId, releaseName)
url = "%s/api/v4/projects/%s/releases/%s/assets/links" % (instanceUrl, projectId, releaseTag)
for asset in assets:
if verbose:
print("POST to {}".format(url))

View File

@ -1,5 +1,6 @@
{
"releaseTag": "v1.12b",
"createRelease": "true",
"releaseTag": "v1.12",
"createReleaseTag": "true",
"releaseName": "updater release",
"description": "add option to add files to existing release or extend description of existing release"