1
0
mirror of https://github.com/ansible/awx.git synced 2024-11-02 01:21:21 +03:00

use basic auth by default for data setup

This commit is contained in:
Jake McDermott 2018-02-24 14:00:57 -05:00
parent 6bdcba307c
commit 44acecf61e
No known key found for this signature in database
GPG Key ID: 3B02CAD476EECB35

View File

@ -8,15 +8,17 @@ import {
AWX_E2E_PASSWORD
} from './settings';
let authenticated;
const session = axios.create({
baseURL: AWX_E2E_URL,
xsrfHeaderName: 'X-CSRFToken',
xsrfCookieName: 'csrftoken',
httpsAgent: new https.Agent({
rejectUnauthorized: false
})
}),
auth: {
username: AWX_E2E_USERNAME,
password: AWX_E2E_PASSWORD
}
});
const getEndpoint = location => {
@ -27,36 +29,15 @@ const getEndpoint = location => {
return `${AWX_E2E_URL}/api/v2${location}`;
};
const authenticate = () => {
if (authenticated) {
return Promise.resolve();
}
const uri = getEndpoint('/authtoken/');
const credentials = {
username: AWX_E2E_USERNAME,
password: AWX_E2E_PASSWORD
};
return session.post(uri, credentials).then(res => {
session.defaults.headers.Authorization = `Token ${res.data.token}`;
authenticated = true;
return res;
});
};
const request = (method, location, data) => {
const uri = getEndpoint(location);
const action = session[method.toLowerCase()];
return authenticate()
.then(() => action(uri, data))
return action(uri, data)
.then(res => {
console.log([ // eslint-disable-line no-console
res.config.method.toUpperCase(),
uri,
res.config.url,
res.status,
res.statusText
].join(' '));