deleterelease added
This commit is contained in:
parent
fdc5e97fc2
commit
3ea721a4e7
@ -23,6 +23,7 @@ release:
|
|||||||
only:
|
only:
|
||||||
- release
|
- release
|
||||||
script:
|
script:
|
||||||
|
- zip GitlabReleaseTool.zip gitlabreleaseuploader.py deleterelease.py
|
||||||
- python gitlabreleaseuploader.py -p $PRIVATE_TOKEN -i $CI_PROJECT_ID -u $CI_PROJECT_URL
|
- 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",
|
"createReleaseTag": "true",
|
||||||
"releaseName": "Seventh release of the uploader",
|
"releaseName": "Delete Release supporting release",
|
||||||
"description": "Work on readme and change of CI script"
|
"description": "Separate tool to delete releases added"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user