[TASK] Add script to remove nodes by nodeid into contrib (#81)
This commit is contained in:
parent
d4b1de3da9
commit
db0aa25cf8
32
contrib/yanic-remove-node
Executable file
32
contrib/yanic-remove-node
Executable file
@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env python3
|
||||
import json
|
||||
import argparse
|
||||
import sys
|
||||
|
||||
|
||||
def main(states, nodeid):
|
||||
with open(states) as handle:
|
||||
data = json.load(handle)
|
||||
|
||||
if nodeid in data['nodes']:
|
||||
del data['nodes'][nodeid]
|
||||
print("node {} removed".format(nodeid))
|
||||
else:
|
||||
print('node not in state file', file=sys.stderr)
|
||||
sys.exit(1)
|
||||
|
||||
with open(states, 'w') as handle:
|
||||
json.dump(data, handle)
|
||||
|
||||
if __name__ == '__main__':
|
||||
parser = argparse.ArgumentParser()
|
||||
|
||||
parser.add_argument('-s', '--states', action='store', required=True,
|
||||
help='path to the states json file')
|
||||
parser.add_argument('-n', '--nodeid', action='store', required=True,
|
||||
help='nodeid of the node to remove')
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
main(args.states, args.nodeid)
|
||||
|
Loading…
Reference in New Issue
Block a user