diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1d3399a..a88bf45 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -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 diff --git a/gitlabreleaseuploader.py b/gitlabreleaseuploader.py index 69f9381..45ec9bb 100755 --- a/gitlabreleaseuploader.py +++ b/gitlabreleaseuploader.py @@ -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)) diff --git a/info.json b/info.json index bcb1e0c..730c7ea 100644 --- a/info.json +++ b/info.json @@ -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"