add --dry-run to propose-library-branches
Change-Id: I40b8868f2c02901628024a1ef4023bc451ad7e74 Signed-off-by: Doug Hellmann <doug@doughellmann.com>
This commit is contained in:
@@ -64,6 +64,12 @@ def main():
|
|||||||
default=['library'],
|
default=['library'],
|
||||||
dest='types',
|
dest='types',
|
||||||
)
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
'--dry-run', '-n',
|
||||||
|
default=False,
|
||||||
|
action='store_true',
|
||||||
|
help='report what action would be taken but do not take it',
|
||||||
|
)
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
'deliverable',
|
'deliverable',
|
||||||
nargs='*',
|
nargs='*',
|
||||||
@@ -98,6 +104,7 @@ def main():
|
|||||||
args.series, '*.yaml')
|
args.series, '*.yaml')
|
||||||
verbose('Scanning {}'.format(pattern))
|
verbose('Scanning {}'.format(pattern))
|
||||||
deliverable_files = sorted(glob.glob(pattern))
|
deliverable_files = sorted(glob.glob(pattern))
|
||||||
|
new_branch = 'stable/' + args.series
|
||||||
|
|
||||||
for filename in deliverable_files:
|
for filename in deliverable_files:
|
||||||
deliverable_name = os.path.basename(filename)[:-5]
|
deliverable_name = os.path.basename(filename)[:-5]
|
||||||
@@ -113,13 +120,24 @@ def main():
|
|||||||
print('{} has no releases, not branching'.format(
|
print('{} has no releases, not branching'.format(
|
||||||
deliverable_name))
|
deliverable_name))
|
||||||
continue
|
continue
|
||||||
if 'branches' in deliverable_data:
|
if 'branches' not in deliverable_data:
|
||||||
print('{} already has branches'.format(deliverable_name))
|
deliverable_data['branches'] = []
|
||||||
|
skip = False
|
||||||
|
for b in deliverable_data['branches']:
|
||||||
|
if b['name'] == new_branch:
|
||||||
|
print('{} already has branch {}'.format(
|
||||||
|
deliverable_name, new_branch))
|
||||||
|
skip = True
|
||||||
|
if skip:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
latest_release = releases[-1]
|
latest_release = releases[-1]
|
||||||
|
|
||||||
|
print('{} new branch {} at {}'.format(
|
||||||
|
deliverable_name, new_branch, latest_release['version']))
|
||||||
|
if not args.dry_run:
|
||||||
deliverable_data['branches'].append({
|
deliverable_data['branches'].append({
|
||||||
'name': 'stable/' + args.series,
|
'name': new_branch,
|
||||||
'location': latest_release['version'],
|
'location': latest_release['version'],
|
||||||
})
|
})
|
||||||
with open(filename, 'w', encoding='utf-8') as f:
|
with open(filename, 'w', encoding='utf-8') as f:
|
||||||
|
|||||||
Reference in New Issue
Block a user