Skip to content

Commit 294eaad

Browse files
authored
Merge pull request #29 from giffels/add_nova_run_action
Add run server action call to nova client
2 parents b35d11d + 6da0ac4 commit 294eaad

2 files changed

Lines changed: 6 additions & 0 deletions

File tree

README.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,9 @@ Usage
6060
servers = await nova.servers.list(name='testvm')
6161
vm = await nova.servers.get(server_id)
6262
63+
action_spec = {'os-stop': None}
64+
await nova.servers.run_action(server_id, **action_spec)
65+
6366
6467
specs = {
6568
"name": 'some_name',
@@ -87,6 +90,7 @@ Available functions
8790
- servers.get(id)
8891
- servers.create(server=server_spec)
8992
- servers.force_delete(id)
93+
- servers.run_action(id, action=action_spec)
9094
- flavors.list()
9195
- metadata.get(server_id)
9296
- metadata.set(server_id, meta=meta_spec)

src/asyncopenstackclient/nova.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,10 @@ async def init_api(self, timeout=60):
1010
self.api.servers.actions["force_delete"] = {"method": "DELETE", "url": "servers/{}"}
1111
self.api.servers.actions["get"] = {"method": "GET", "url": "servers/{}"}
1212
self.api.servers.actions["list"] = {"method": "GET", "url": "servers/detail"}
13+
self.api.servers.actions["run_action"] = {"method": "POST", "url": "servers/{}/action"}
1314
self.api.servers.add_action("force_delete")
1415
self.api.servers.add_action("get")
16+
self.api.servers.add_action("run_action")
1517
self.api.flavors.actions["list"] = {"method": "GET", "url": "flavors/detail"}
1618
self.api.metadata.actions['get'] = {"method": "GET", "url": "servers/{}/metadata"}
1719
self.api.metadata.actions['set'] = {"method": "POST", "url": "servers/{}/metadata"}

0 commit comments

Comments
 (0)