deleterelease added
This commit is contained in:
parent
fdc5e97fc2
commit
3ea721a4e7
@ -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
58
deleterelease.py
Normal 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')
|
@ -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"
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user