Skip to content

Commit a6b692d

Browse files
author
René Moser
authored
Add new options for volume and floating-ips (#34)
1 parent 59ac425 commit a6b692d

3 files changed

Lines changed: 30 additions & 1 deletion

File tree

cloudscale_cli/commands/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ def cmd_create(self, silent=False, **kwargs):
166166
click.echo(e, err=True)
167167
sys.exit(1)
168168

169-
def cmd_update(self, uuid, tags, clear_tags, clear_all_tags, wait=False, **kwargs):
169+
def cmd_update(self, uuid, tags=None, clear_tags=None, clear_all_tags=False, wait=False, **kwargs):
170170
try:
171171
with Spinner(text=f"Querying by UUID {uuid}"):
172172
self.get_client_resource().get_by_uuid(uuid)

cloudscale_cli/commands/floating_ip.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,16 @@ def cmd_update(cloudscale, network_id, server_uuid, reverse_ptr, tags, clear_tag
8181
reverse_ptr=reverse_ptr,
8282
)
8383

84+
@click.argument('network-id', required=True)
85+
@click.option('--server-uuid', '--server', required=True)
86+
@floating_ip.command("assign")
87+
@click.pass_obj
88+
def cmd_assign(cloudscale, network_id, server_uuid):
89+
cloudscale.cmd_update(
90+
uuid=network_id,
91+
server_uuid=server_uuid,
92+
)
93+
8494
@click.argument('network-id', required=True)
8595
@click.option('--force', is_flag=True)
8696
@floating_ip.command("delete")

cloudscale_cli/commands/volume.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,25 @@ def cmd_update(cloudscale, uuid, name, server_uuids, size_gb, detach, tags, clea
9494
size_gb=size_gb,
9595
)
9696

97+
@click.argument('uuid', required=True)
98+
@click.option('--server-uuids', multiple=True, required=True)
99+
@volume.command("attach")
100+
@click.pass_obj
101+
def cmd_attach(cloudscale, uuid, server_uuids):
102+
cloudscale.cmd_update(
103+
uuid=uuid,
104+
server_uuids=server_uuids,
105+
)
106+
107+
@click.argument('uuid', required=True)
108+
@volume.command("detach")
109+
@click.pass_obj
110+
def cmd_detach(cloudscale, uuid):
111+
cloudscale.cmd_update(
112+
uuid=uuid,
113+
server_uuids=list(),
114+
)
115+
97116
@click.argument('uuid', required=True)
98117
@click.option('--force', is_flag=True)
99118
@volume.command("delete")

0 commit comments

Comments
 (0)