Skip to content

Commit 5bc9fae

Browse files
damian-polewskicrespocarlos
authored andcommitted
[Index Management] Hide Edit data retention bulk action for ILM managed data streams (elastic#228802)
Closes elastic#211020 ## Summary This PR fixes an issue where `Edit data retention` bulk action was available when data stream fully managed by ILM was selected.
1 parent 9a21a26 commit 5bc9fae

File tree

2 files changed

+27
-1
lines changed

2 files changed

+27
-1
lines changed

x-pack/platform/plugins/shared/index_management/__jest__/client_integration/home/data_streams_tab.test.ts

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -969,6 +969,28 @@ describe('Data Streams tab', () => {
969969
expect(exists('editDataRetentionButton')).toBe(false);
970970
});
971971

972+
test('displays/hides bulk edit data retention depending if data stream fully managed by ILM is selected', async () => {
973+
const {
974+
find,
975+
actions: { selectDataStream, clickManageDataStreamsButton },
976+
} = testBed;
977+
978+
// Select data stream fully managed by ILM
979+
selectDataStream('dataStream1', true);
980+
clickManageDataStreamsButton();
981+
expect(find('bulkEditDataRetentionButton').exists()).toBeFalsy();
982+
983+
// Select data stream managed by DSL
984+
selectDataStream('dataStream2', true);
985+
clickManageDataStreamsButton();
986+
expect(find('bulkEditDataRetentionButton').exists()).toBeFalsy();
987+
988+
// Unselect data stream fully managed by ILM
989+
selectDataStream('dataStream1', false);
990+
clickManageDataStreamsButton();
991+
expect(find('bulkEditDataRetentionButton').exists()).toBeTruthy();
992+
});
993+
972994
test('when partially managed by dsl but has backing indices managed by ILM should show a warning', async () => {
973995
const { setLoadDataStreamResponse } = httpRequestsMockHelpers;
974996

x-pack/platform/plugins/shared/index_management/public/application/sections/home/data_stream_list/data_stream_table/data_stream_table.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -288,7 +288,11 @@ export const DataStreamTable: React.FunctionComponent<Props> = ({
288288
const dataStreamActions: EuiContextMenuPanelItemDescriptor[] = [];
289289

290290
if (
291-
selection.every((dataStream: DataStream) => dataStream.privileges.manage_data_stream_lifecycle)
291+
selection.every(
292+
(dataStream: DataStream) =>
293+
dataStream.privileges.manage_data_stream_lifecycle &&
294+
!isDataStreamFullyManagedByILM(dataStream)
295+
)
292296
) {
293297
dataStreamActions.push({
294298
name: i18n.translate('xpack.idxMgmt.dataStreamList.table.bulkEditDataRetentionButtonLabel', {

0 commit comments

Comments
 (0)