-
Notifications
You must be signed in to change notification settings - Fork 17
/
dcm-create-volume
executable file
·31 lines (26 loc) · 1.23 KB
/
dcm-create-volume
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/env python
# Creates a volume.
# Returns Job ID.
from mixcoatl.infrastructure.volume import Volume
import argparse
import sys
if __name__ == '__main__':
parser = argparse.ArgumentParser()
group = parser.add_argument_group("required arguments")
group.add_argument('--budgetid', '-b', type=int, help='Budget ID.', required=True)
group.add_argument('--datacenter', '-d', type=int, help='Data Center ID in which to create the volume.', required=True)
group.add_argument('--description', '-D', help='The description of the volume.', required=True)
group.add_argument('--name', '-n', help='The name of the volume.', required=True)
group.add_argument('--size', '-s', type=int, help="The size of the volume in GB.", required=True)
cmd_args = parser.parse_args()
if None in [cmd_args.budgetid, cmd_args.datacenter, cmd_args.description, cmd_args.name, cmd_args.size]:
parser.print_help()
sys.exit(1)
new_volume = Volume()
new_volume.data_center = cmd_args.datacenter
new_volume.description = cmd_args.description
new_volume.name = cmd_args.name
new_volume.size_in_gb = cmd_args.size
new_volume.budget = cmd_args.budgetid
result = new_volume.create()
print(result.job_id)