mirror of
https://github.com/ansible/awx.git
synced 2026-05-08 01:47:35 -02:30
Merge pull request #4480 from ryanpetrello/372-cred-plugin-30x
properly report 30x errors on credential plugin tests
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
from .plugin import CredentialPlugin, CertFiles
|
from .plugin import CredentialPlugin, CertFiles, raise_for_status
|
||||||
|
|
||||||
from urllib.parse import quote, urlencode, urljoin
|
from urllib.parse import quote, urlencode, urljoin
|
||||||
|
|
||||||
@@ -84,7 +84,7 @@ def aim_backend(**kwargs):
|
|||||||
verify=verify,
|
verify=verify,
|
||||||
allow_redirects=False,
|
allow_redirects=False,
|
||||||
)
|
)
|
||||||
res.raise_for_status()
|
raise_for_status(res)
|
||||||
return res.json()['Content']
|
return res.json()['Content']
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
from .plugin import CredentialPlugin, CertFiles
|
from .plugin import CredentialPlugin, CertFiles, raise_for_status
|
||||||
|
|
||||||
import base64
|
import base64
|
||||||
from urllib.parse import urljoin, quote_plus
|
from urllib.parse import urljoin, quote_plus
|
||||||
@@ -69,7 +69,7 @@ def conjur_backend(**kwargs):
|
|||||||
urljoin(url, '/'.join(['authn', account, username, 'authenticate'])),
|
urljoin(url, '/'.join(['authn', account, username, 'authenticate'])),
|
||||||
**auth_kwargs
|
**auth_kwargs
|
||||||
)
|
)
|
||||||
resp.raise_for_status()
|
raise_for_status(resp)
|
||||||
token = base64.b64encode(resp.content).decode('utf-8')
|
token = base64.b64encode(resp.content).decode('utf-8')
|
||||||
|
|
||||||
lookup_kwargs = {
|
lookup_kwargs = {
|
||||||
@@ -90,7 +90,7 @@ def conjur_backend(**kwargs):
|
|||||||
with CertFiles(cacert) as cert:
|
with CertFiles(cacert) as cert:
|
||||||
lookup_kwargs['verify'] = cert
|
lookup_kwargs['verify'] = cert
|
||||||
resp = requests.get(path, timeout=30, **lookup_kwargs)
|
resp = requests.get(path, timeout=30, **lookup_kwargs)
|
||||||
resp.raise_for_status()
|
raise_for_status(resp)
|
||||||
return resp.text
|
return resp.text
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import os
|
|||||||
import pathlib
|
import pathlib
|
||||||
from urllib.parse import urljoin
|
from urllib.parse import urljoin
|
||||||
|
|
||||||
from .plugin import CredentialPlugin, CertFiles
|
from .plugin import CredentialPlugin, CertFiles, raise_for_status
|
||||||
|
|
||||||
import requests
|
import requests
|
||||||
from django.utils.translation import ugettext_lazy as _
|
from django.utils.translation import ugettext_lazy as _
|
||||||
@@ -125,7 +125,7 @@ def kv_backend(**kwargs):
|
|||||||
with CertFiles(cacert) as cert:
|
with CertFiles(cacert) as cert:
|
||||||
request_kwargs['verify'] = cert
|
request_kwargs['verify'] = cert
|
||||||
response = sess.get(request_url, **request_kwargs)
|
response = sess.get(request_url, **request_kwargs)
|
||||||
response.raise_for_status()
|
raise_for_status(response)
|
||||||
|
|
||||||
json = response.json()
|
json = response.json()
|
||||||
if api_version == 'v2':
|
if api_version == 'v2':
|
||||||
@@ -168,7 +168,7 @@ def ssh_backend(**kwargs):
|
|||||||
request_kwargs['verify'] = cert
|
request_kwargs['verify'] = cert
|
||||||
resp = sess.post(request_url, **request_kwargs)
|
resp = sess.post(request_url, **request_kwargs)
|
||||||
|
|
||||||
resp.raise_for_status()
|
raise_for_status(resp)
|
||||||
return resp.json()['data']['signed_key']
|
return resp.json()['data']['signed_key']
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -3,9 +3,19 @@ import tempfile
|
|||||||
|
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
|
|
||||||
|
from requests.exceptions import HTTPError
|
||||||
|
|
||||||
CredentialPlugin = namedtuple('CredentialPlugin', ['name', 'inputs', 'backend'])
|
CredentialPlugin = namedtuple('CredentialPlugin', ['name', 'inputs', 'backend'])
|
||||||
|
|
||||||
|
|
||||||
|
def raise_for_status(resp):
|
||||||
|
resp.raise_for_status()
|
||||||
|
if resp.status_code >= 300:
|
||||||
|
exc = HTTPError()
|
||||||
|
setattr(exc, 'response', resp)
|
||||||
|
raise exc
|
||||||
|
|
||||||
|
|
||||||
class CertFiles():
|
class CertFiles():
|
||||||
"""
|
"""
|
||||||
A context manager used for writing a certificate and (optional) key
|
A context manager used for writing a certificate and (optional) key
|
||||||
|
|||||||
Reference in New Issue
Block a user