def get_auth_headers(consumer_key, key, secret):
resource_tok_string = "oauth_token_secret=%s&oauth_token=%s" % (
secret, key)
resource_token = oauth.OAuthToken.from_string(resource_tok_string)
consumer_token = oauth.OAuthConsumer(consumer_key, "")
oauth_request = oauth.OAuthRequest.from_consumer_and_token(
consumer_token, token=resource_token, http_url=MAAS_API,
parameters={'oauth_nonce': uuid.uuid4().hex})
oauth_request.sign_request(
oauth.OAuthSignatureMethod_PLAINTEXT(), consumer_token,
resource_token)
headers = oauth_request.to_header()
headers['Accept'] = 'application/json'
return headers
uri = MAAS_API + "/machines/{system_id}/".format(
system_id=system_id
)
params = {
'hostname': 'herbert',
}
response = requests.put(
uri, data=params, headers=get_auth_headers(consumer_key, key, secret)
)
# result is in response.json()