[TASK] Add script to remove nodes by nodeid into contrib (#81)

This commit is contained in:
hexa- 2017-11-02 16:55:03 +01:00 committed by Geno
parent d4b1de3da9
commit db0aa25cf8

32
contrib/yanic-remove-node Executable file
View 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)