Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

use kbnArchiver and test_user with minimal role in x-pack/test/functional/apps/rollup_job/tsvb.js #107712

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 14 additions & 4 deletions x-pack/test/functional/apps/rollup_job/tsvb.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,9 @@ import mockRolledUpData from './hybrid_index_helper';

export default function ({ getService, getPageObjects }) {
const es = getService('es');
const esArchiver = getService('esArchiver');
const retry = getService('retry');
const security = getService('security');
const kibanaServer = getService('kibanaServer');
const esDeleteAllIndices = getService('esDeleteAllIndices');
const PageObjects = getPageObjects([
'common',
Expand All @@ -26,7 +27,7 @@ export default function ({ getService, getPageObjects }) {
//we add the Date.now() to avoid name collision if you run the tests locally back to back.
const rollupJobName = `tsvb-test-rollup-job-${Date.now()}`;
const rollupSourceIndexName = 'rollup-source-data';
const rollupTargetIndexName = `rollup-target-data`;
const rollupTargetIndexName = 'rollup-target-data';
const pastDates = [
new Date('October 15, 2019 05:35:32'),
new Date('October 15, 2019 05:34:32'),
Expand All @@ -35,7 +36,13 @@ export default function ({ getService, getPageObjects }) {

before(async () => {
// load visualize to have an index pattern ready, otherwise visualize will redirect
await esArchiver.load('x-pack/test/functional/es_archives/visualize/default');
await security.testUser.setRoles(['global_visualize_all', 'test_rollup_reader']);
await kibanaServer.importExport.load(
'x-pack/test/functional/fixtures/kbn_archiver/rollup/rollup.json'
);
await kibanaServer.uiSettings.replace({
defaultIndex: 'rollup',
});
Comment on lines +43 to +45
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just out of curiosity, is this actually needed? It looks like you load a config object from rollup.json that already sets the default index to "rollup".

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jportner I just had a discussion with @wayneseymour about this for another test he's working on. I don't really understand why, but the "config" object we load from an archive never seems to be used. After this kbnArchive is loaded, if you look at the saved objects, you'll find another one for the current version and it won't have the defaultIndex set. I don't know if it's only because the version doesn't match, or if Kibana already created another one? It could be because we don't treat the previous version config object like an upgrade case on dev builds?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, interesting! Not sure why but it's good to know for future reference!

});

it('create rollup tsvb', async () => {
Expand Down Expand Up @@ -100,7 +107,10 @@ export default function ({ getService, getPageObjects }) {
});

await esDeleteAllIndices([rollupTargetIndexName, rollupSourceIndexName]);
await esArchiver.load('x-pack/test/functional/es_archives/empty_kibana');
await kibanaServer.importExport.unload(
'x-pack/test/functional/fixtures/kbn_archiver/rollup/rollup.json'
);
await security.testUser.restoreDefaults();
});
});
}
11 changes: 11 additions & 0 deletions x-pack/test/functional/config.js
Original file line number Diff line number Diff line change
Expand Up @@ -465,6 +465,17 @@ export default async function ({ readConfigFile }) {
],
},

test_rollup_reader: {
elasticsearch: {
indices: [
{
names: ['rollup-*'],
privileges: ['read', 'view_index_metadata'],
},
],
},
},

//Kibana feature privilege isn't specific to advancedSetting. It can be anything. https://github.com/elastic/kibana/issues/35965
test_api_keys: {
elasticsearch: {
Expand Down
39 changes: 39 additions & 0 deletions x-pack/test/functional/fixtures/kbn_archiver/rollup/rollup.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{
"attributes": {
"accessibility:disableAnimations": true,
"buildNum": 9007199254740991,
"dateFormat:tz": "UTC",
"defaultIndex": "rollup",
"visualization:visualize:legacyChartsLibrary": true,
"visualization:visualize:legacyPieChartsLibrary": true
},
"coreMigrationVersion": "7.15.0",
"id": "7.15.0",
"migrationVersion": {
"config": "7.13.0"
},
"references": [],
"type": "config",
"updated_at": "2021-08-04T23:35:47.992Z",
"version": "WzQwLDFd"
}

{
"attributes": {
"fieldAttrs": "{}",
"fields": "[]",
"runtimeFieldMap": "{}",
"timeFieldName": "@timestamp.date_histogram.timestamp",
"title": "rollup*",
"typeMeta": "{}"
},
"coreMigrationVersion": "7.15.0",
"id": "rollup",
"migrationVersion": {
"index-pattern": "7.11.0"
},
"references": [],
"type": "index-pattern",
"updated_at": "2021-08-04T23:22:14.902Z",
"version": "WzIyLDFd"
}