From f415a0898b6f1f5cee8aa43259e8aedf07d395aa Mon Sep 17 00:00:00 2001 From: Yoshie Muranaka Date: Mon, 7 Dec 2020 13:04:11 -0800 Subject: Add DumpsStore API calls Ties in API requests to the Dumps page and adds ability to: - Create new System or BMC dump - Delete single or multiple BMC dumps. Uses ClearLog service to delete all and DELETE request for single dump deletion Signed-off-by: Yoshie Muranaka Change-Id: Iae928fa3b8fab00e549c33c0ab914a4b04de0f40 --- src/env/components/Dumps/Dumps.vue | 46 +++++++++++-- src/env/components/Dumps/DumpsForm.vue | 38 ++++++++++- .../components/Dumps/DumpsModalConfirmation.vue | 75 ++++++++++++++++++++++ 3 files changed, 151 insertions(+), 8 deletions(-) create mode 100644 src/env/components/Dumps/DumpsModalConfirmation.vue (limited to 'src/env/components') diff --git a/src/env/components/Dumps/Dumps.vue b/src/env/components/Dumps/Dumps.vue index eba90b7a..3bf5579a 100644 --- a/src/env/components/Dumps/Dumps.vue +++ b/src/env/components/Dumps/Dumps.vue @@ -3,14 +3,14 @@ - + - + { @@ -246,7 +249,7 @@ export default { this.filterStartDate = fromDate; this.filterEndDate = toDate; }, - onTableRowAction(action) { + onTableRowAction(action, dump) { if (action === 'delete') { this.$bvModal .msgBoxConfirm(this.$tc('pageDumps.modal.deleteDumpConfirmation'), { @@ -255,7 +258,19 @@ export default { cancelTitle: this.$t('global.action.cancel'), }) .then((deleteConfrimed) => { - if (deleteConfrimed); // delete dump + if (deleteConfrimed) { + this.$store + .dispatch('dumps/deleteDumps', [dump]) + .then((messages) => { + messages.forEach(({ type, message }) => { + if (type === 'success') { + this.successToast(message); + } else if (type === 'error') { + this.errorToast(message); + } + }); + }); + } }); } }, @@ -280,7 +295,26 @@ export default { } ) .then((deleteConfrimed) => { - if (deleteConfrimed); // delete dump + if (deleteConfrimed) { + if (this.selectedRows.length === this.dumps.length) { + this.$store + .dispatch('dumps/deleteAllDumps') + .then((success) => this.successToast(success)) + .catch(({ message }) => this.errorToast(message)); + } else { + this.$store + .dispatch('dumps/deleteDumps', this.selectedRows) + .then((messages) => { + messages.forEach(({ type, message }) => { + if (type === 'success') { + this.successToast(message); + } else if (type === 'error') { + this.errorToast(message); + } + }); + }); + } + } }); } }, diff --git a/src/env/components/Dumps/DumpsForm.vue b/src/env/components/Dumps/DumpsForm.vue index ed81b3a8..9dc8bcb1 100644 --- a/src/env/components/Dumps/DumpsForm.vue +++ b/src/env/components/Dumps/DumpsForm.vue @@ -21,20 +21,28 @@ {{ $t('global.form.required') }} + + {{ $t('pageDumps.form.systemDumpInfo') }} + - {{ $t('pageDumps.form.createNewDump') }} + {{ $t('pageDumps.form.initiateDump') }} + -- cgit v1.2.3