diff --git a/static/terraboard-vuejs/src/components/PlanContent.vue b/static/terraboard-vuejs/src/components/PlanContent.vue index 4cf21067..e3c6f573 100644 --- a/static/terraboard-vuejs/src/components/PlanContent.vue +++ b/static/terraboard-vuejs/src/components/PlanContent.vue @@ -58,7 +58,7 @@ Lineage: - {{ plan.lineage_data.lineage }} + {{ plan.lineage_data.lineage }} TF Version: @@ -88,11 +88,11 @@ Changes:
-
+

Resource changes

-
+

Output changes

@@ -254,30 +254,35 @@ Chart.register( PieController, ArcElement, Tooltip ) return new Date(date).toUTCString(); }, checkPlannedChanges() { - this.plan.parsed_plan.output_changes.forEach((change: any) => { - let actions = change.change.actions; - if (actions.includes("create")) { - this.changes.outputs.added++; - } else if (actions.includes("update")) { - this.changes.outputs.changed++; - } else if (actions.includes("delete")) { - this.changes.outputs.deleted++; - } else { - this.changes.outputs.none++; - } - }); - this.plan.parsed_plan.resource_changes.forEach((change: any) => { - let actions = change.change.actions; - if (actions.includes("create")) { - this.changes.resources.added++; - } else if (actions.includes("update")) { - this.changes.resources.changed++; - } else if (actions.includes("delete")) { - this.changes.resources.deleted++; - } else { - this.changes.resources.none++; - } - }); + if (this.plan.parsed_plan.output_changes != undefined) { + this.plan.parsed_plan.output_changes.forEach((change: any) => { + let actions = change.change.actions; + if (actions.includes("create")) { + this.changes.outputs.added++; + } else if (actions.includes("update")) { + this.changes.outputs.changed++; + } else if (actions.includes("delete")) { + this.changes.outputs.deleted++; + } else { + this.changes.outputs.none++; + } + }); + } + + if (this.plan.parsed_plan.resource_changes != undefined) { + this.plan.parsed_plan.resource_changes.forEach((change: any) => { + let actions = change.change.actions; + if (actions.includes("create")) { + this.changes.resources.added++; + } else if (actions.includes("update")) { + this.changes.resources.changed++; + } else if (actions.includes("delete")) { + this.changes.resources.deleted++; + } else { + this.changes.resources.none++; + } + }); + } }, }, computed: { @@ -303,45 +308,49 @@ Chart.register( PieController, ArcElement, Tooltip ) this.checkPlannedChanges(); }, mounted() { - const ctxResources = document.getElementById('chart-pie-resource-changes') as ChartItem; - const resourceChangesChart = new Chart(ctxResources, { - type: 'pie', - data: { - labels: ["No changes", "Added", "Updated", "Deleted"], - datasets: [{ - label: 'Resource Changes', - data: [this.changes.resources.none, this.changes.resources.added, this.changes.resources.changed, this.changes.resources.deleted], - backgroundColor: [ - '#0d6efd', - '#198754', - '#fd7e14', - '#dc3545', - ], - hoverOffset: 4 - }] - }, - options: this.chartOptions - }); + if (this.plan.parsed_plan.resource_changes != undefined) { + const ctxResources = document.getElementById('chart-pie-resource-changes') as ChartItem; + const resourceChangesChart = new Chart(ctxResources, { + type: 'pie', + data: { + labels: ["No changes", "Added", "Updated", "Deleted"], + datasets: [{ + label: 'Resource Changes', + data: [this.changes.resources.none, this.changes.resources.added, this.changes.resources.changed, this.changes.resources.deleted], + backgroundColor: [ + '#0d6efd', + '#198754', + '#fd7e14', + '#dc3545', + ], + hoverOffset: 4 + }] + }, + options: this.chartOptions + }); + } - const ctxOutputs = document.getElementById('chart-pie-output-changes') as ChartItem; - const outputChangesChart = new Chart(ctxOutputs, { - type: 'pie', - data: { - labels: ["No changes", "Added", "Updated", "Deleted"], - datasets: [{ - label: 'Output Changes', - data: [this.changes.outputs.none, this.changes.outputs.added, this.changes.outputs.changed, this.changes.outputs.deleted], - backgroundColor: [ - '#0d6efd', - '#198754', - '#fd7e14', - '#dc3545', - ], - hoverOffset: 4 - }] - }, - options: this.chartOptions - }); + if (this.plan.parsed_plan.output_changes != undefined) { + const ctxOutputs = document.getElementById('chart-pie-output-changes') as ChartItem; + const outputChangesChart = new Chart(ctxOutputs, { + type: 'pie', + data: { + labels: ["No changes", "Added", "Updated", "Deleted"], + datasets: [{ + label: 'Output Changes', + data: [this.changes.outputs.none, this.changes.outputs.added, this.changes.outputs.changed, this.changes.outputs.deleted], + backgroundColor: [ + '#0d6efd', + '#198754', + '#fd7e14', + '#dc3545', + ], + hoverOffset: 4 + }] + }, + options: this.chartOptions + }); + } }, }) export default class PlanContent extends Vue {} diff --git a/static/terraboard-vuejs/src/views/Plan.vue b/static/terraboard-vuejs/src/views/Plan.vue index 97551455..aa669cdf 100644 --- a/static/terraboard-vuejs/src/views/Plan.vue +++ b/static/terraboard-vuejs/src/views/Plan.vue @@ -2,7 +2,8 @@
-
+ Back to workspace +
Plans
  • -
    + Back to workspace +
    General Information