deleterelease added

This commit is contained in:
Wolfgang Hottgenroth 2019-07-16 15:32:20 +02:00
parent fdc5e97fc2
commit 3ea721a4e7
Signed by: wn
GPG Key ID: 6C1E5E531E0D5D7F
3 changed files with 63 additions and 4 deletions

View File

@ -23,6 +23,7 @@ release:
only:
- release
script:
- zip GitlabReleaseTool.zip gitlabreleaseuploader.py deleterelease.py
- python gitlabreleaseuploader.py -p $PRIVATE_TOKEN -i $CI_PROJECT_ID -u $CI_PROJECT_URL
-f gitlabreleaseuploader.py -F info.json -T $CI_COMMIT_REF_NAME
-f GitlabReleaseTool.zip -F info.json -T $CI_COMMIT_REF_NAME

58
deleterelease.py Normal file
View File

@ -0,0 +1,58 @@
#!/usr/bin/python
import requests
import json
import argparse
import sys
parser = argparse.ArgumentParser(description='Gitlab Release Deleter')
parser.add_argument('--privateToken', '-p',
help='Private token to access Gitlab', required=True)
parser.add_argument('--projectId', '-i',
help='ProjectID of the related project', required=True)
parser.add_argument('--releaseTag', '-t',
help='Tag of the release in the repo',
required=True,
default='')
parser.add_argument('--instanceUrl', '-I',
help='URL of your gitlab instance', required=False,
default='https://gitlab.com')
parser.add_argument('--verbose', '-v',
help='verbose output',
required=False,
action='store_true',
default=False)
parser.add_argument('--insecure',
help='insecure ssl connect',
required=False,
action='store_true',
default=False)
args = parser.parse_args()
privateToken = args.privateToken
projectId = args.projectId
releaseTag = args.releaseTag
instanceUrl = args.instanceUrl
verbose = args.verbose
insecure = args.insecure
# --- delete release
deleteReleaseUrl = "%s/api/v4/projects/%s/releases/%s" % (instanceUrl, projectId, releaseTag)
headers = {"PRIVATE-TOKEN": privateToken, "Content-Type": "application/json"}
if verbose:
print("URL: %s" % deleteReleaseUrl)
deleteReleaseResult = requests.delete(deleteReleaseUrl, headers=headers, verify=(not insecure))
if deleteReleaseResult.status_code != 200:
print(deleteReleaseResult)
print(deleteReleaseResult.text)
raise Exception('Unable to delete release')
if verbose:
print(deleteReleaseResult)
print(deleteReleaseResult.text)
print('Release successfully delete')

View File

@ -1,7 +1,7 @@
{
"releaseTag": "v1.6",
"releaseTag": "v1.7",
"createReleaseTag": "true",
"releaseName": "Seventh release of the uploader",
"description": "Work on readme and change of CI script"
"releaseName": "Delete Release supporting release",
"description": "Separate tool to delete releases added"
}