24
24
#
25
25
26
26
'''
27
- Create OpenGrok release using Github v3 API
27
+ Create release using Github v3 API
28
28
29
29
This is supposed to be no-nonsense one-purpose script that:
30
30
- is standalone, i.e. runs without any non-Python-core modules
@@ -107,7 +107,8 @@ def get_args():
107
107
description = 'Create release using Github API.' )
108
108
parser .add_argument ("-d" , "--debug" , help = "turn on debugging" ,
109
109
action = "store_true" )
110
- parser .add_argument ("-n" , "--dryrun" , help = "perform dry run" ,
110
+ parser .add_argument ("-n" , "--dryrun" ,
111
+ help = "perform dry run (also can use DO_DRYRUN env var)" ,
111
112
action = "store_true" )
112
113
parser .add_argument ("-u" , "--user" , nargs = 1 , metavar = 'user' ,
113
114
help = "GitHub user. Specify user with GITHUB_USER and password with GITHUB_PASSWORD env var." )
@@ -116,9 +117,11 @@ def get_args():
116
117
help = "Description text for the release" )
117
118
parser .add_argument ("-P" , "--prerelease" ,
118
119
default = False , action = "store_true" ,
119
- help = "Is this a pre-release ? (also can use OPENGROK_PRERELEASE env var)" )
120
+ help = "Is this a pre-release ? (also can use DO_PRERELEASE env var)" )
120
121
parser .add_argument ("-t" , "--tag" , nargs = 1 , metavar = 'tag' ,
121
122
required = True , help = "New release tag" )
123
+ parser .add_argument ("-r" , "--repository" , nargs = 1 , metavar = 'repo' ,
124
+ required = True , help = "Repository path (user/repo)" )
122
125
parser .add_argument ("-p" , "--proxy" , nargs = 1 ,
123
126
metavar = 'host:port' ,
124
127
help = "Proxy host and port (host:port)" )
@@ -209,6 +212,7 @@ def main():
209
212
description = arguments .description [0 ]
210
213
tag = arguments .tag [0 ].strip ()
211
214
logger .debug ("using tag '{}'" .format (tag ))
215
+ repo = arguments .repository [0 ]
212
216
213
217
proxy = None
214
218
if arguments .proxy :
@@ -250,7 +254,7 @@ def main():
250
254
prerelease = True
251
255
else :
252
256
try :
253
- if os .environ ["OPENGROK_PRERELEASE " ]:
257
+ if os .environ ["DO_PRERELEASE " ]:
254
258
prerelease = True
255
259
except :
256
260
prerelease = False
@@ -263,13 +267,23 @@ def main():
263
267
pprint (payload )
264
268
upload_url = None
265
269
270
+ dryrun = False
266
271
if arguments .dryrun :
272
+ dryrun = True
273
+ else :
274
+ try :
275
+ os .environ ["DO_DRYRUN" ]
276
+ dryrun = True
277
+ except :
278
+ dryrun = False
279
+ if dryrun :
267
280
print "Dry run in effect, exiting"
268
281
sys .exit (0 )
269
282
270
283
try :
271
284
_url = "https://api.github.com"
272
- url = '%s%s' % (_url , "/repos/OpenGrok/OpenGrok/releases" )
285
+ _path = '%s%s%s' % ("/repos/" , repo , "/releases" )
286
+ url = '%s%s' % (_url , _path )
273
287
release_json = post_request (url ,
274
288
arguments .timeout , payload , headers , proxy )
275
289
upload_url = release_json ["upload_url" ]
0 commit comments