unable to stop an instance using python api
I am trying to stop an instance using openstack api with the help of python.
from openstack import connection
import os
def auth_args():
d = {}
d['username'] = os.environ['OS_USERNAME']
d['password'] = os.environ['OS_PASSWORD']
d['auth_url'] = os.environ['OS_AUTH_URL']
d['project_name'] = os.environ['OS_TENANT_NAME']
d['project_domain_id'] = os.environ['OS_PROJECT_DOMAIN_ID']
d['user_domain_id'] = os.environ['OS_PROJECT_DOMAIN_ID']
return d
conn=connection.Connection(**auth_args())
for server in conn.compute.servers():
if server.name == 'server_test':
server.stop(server.id)
i have set a source file then i am trying to run this code, but it gives the below error.
Traceback (most recent call last):
File "stop_opsk_srv.py", line 20, in <module>
server.stop(server.id)
File "/root/.local/lib/python2.7/site-packages/openstack/compute/v2/server.py", line 345, in stop
self._action(session, body)
File "/root/.local/lib/python2.7/site-packages/openstack/compute/v2/server.py", line 181, in _action
return session.post(
I am able to retrieve instance details and meta data using the same conn.compute.servers() method. Please help.
Can you publish the complete trace? The fragment you show contains no meaningful information.
Also, are you certain the user has the right to stop the instance?