diff --git a/estate/assets/js/api/terraform.js b/estate/assets/js/api/terraform.js index 4fd37d0..fffcc14 100644 --- a/estate/assets/js/api/terraform.js +++ b/estate/assets/js/api/terraform.js @@ -182,6 +182,18 @@ export function doApplyForNamespace(id, plan_hash) { return req } +export function getStateForNamespace(id) { + const req = axios.get(`/api/terraform/state/?namespace=${id}`) + req.then((res) => { + console.log(res) + dispatch({ + type: "UPDATE_STATEFILE", + payload: res.data[0] + }) + }, messages.handleResponseError) + return req +} + export function getTemplates(page, pagesize, search) { dispatch({ type: "LOADING_TEMPLATES"}) const req = axios.get(`/api/terraform/template/?page=${page}&page_size=${pagesize}&search=${search}`) diff --git a/estate/assets/js/components/TerraformNamespaceAddFileModal.jsx b/estate/assets/js/components/TerraformNamespaceAddFileModal.jsx index c272712..2c65b6e 100644 --- a/estate/assets/js/components/TerraformNamespaceAddFileModal.jsx +++ b/estate/assets/js/components/TerraformNamespaceAddFileModal.jsx @@ -113,13 +113,13 @@ let mapDispatchToProps = (dispatch, ownProps) => { addFileToNamespace: (payload) => { var req = api.addFileToNamespace(payload) req.then((res) => { - ownProps.history.push( urljoin(ownProps.url, "/file/", res.data.slug, "/") ) + ownProps.history.push( urljoin(ownProps.url, "/file/", res.data.slug + "/") ) }) }, addTemplateToNamespace: (payload) => { var req = api.addTemplateToNamespace(payload) req.then((res) => { - ownProps.history.push( urljoin(ownProps.url, "/template/", res.data.slug, "/") ) + ownProps.history.push( urljoin(ownProps.url, "/template/", res.data.slug + "/") ) }) } } diff --git a/estate/assets/js/components/TerraformNamespaceItem.jsx b/estate/assets/js/components/TerraformNamespaceItem.jsx index 15a177a..0d9d050 100644 --- a/estate/assets/js/components/TerraformNamespaceItem.jsx +++ b/estate/assets/js/components/TerraformNamespaceItem.jsx @@ -33,6 +33,7 @@ class TerraformNamespaceItem extends React.Component { const namespace = nextProps.namespace nextProps.getPlan(namespace.pk) nextProps.getApply(namespace.pk) + nextProps.getState(namespace.pk) this.mergeFiles(namespace) this.mergeTemplates(namespace) } @@ -404,6 +405,18 @@ class TerraformNamespaceItem extends React.Component { ) } + createStatePane() { + var data = this.props.stateObject + var output = join(data.content, "") + return ( +
+

If you need to edit this please contact an administrator

+
+                    {output}
+                
+
+ ) + } render() { if (this.props.namespace == null) { return null @@ -449,6 +462,9 @@ class TerraformNamespaceItem extends React.Component { +
  • + Statefile +