mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
AzureMonitor: Bump credential wait time (#68120)
Bump credential wait time as 15s seems too short
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
import { Interception } from 'cypress/types/net-stubbing';
|
||||||
import { load } from 'js-yaml';
|
import { load } from 'js-yaml';
|
||||||
import { v4 as uuidv4 } from 'uuid';
|
import { v4 as uuidv4 } from 'uuid';
|
||||||
|
|
||||||
@@ -22,6 +23,20 @@ type AzureMonitorProvision = { datasources: AzureMonitorConfig[] };
|
|||||||
|
|
||||||
const dataSourceName = `Azure Monitor E2E Tests - ${uuidv4()}`;
|
const dataSourceName = `Azure Monitor E2E Tests - ${uuidv4()}`;
|
||||||
|
|
||||||
|
const maxRetryCount = 3;
|
||||||
|
|
||||||
|
Cypress.Commands.add('checkHealthRetryable', function (fn: Function, retryCount: number) {
|
||||||
|
cy.then(() => {
|
||||||
|
const result = fn(++retryCount);
|
||||||
|
result.then((res: Interception) => {
|
||||||
|
if (retryCount < maxRetryCount && res.response.statusCode !== 200) {
|
||||||
|
cy.wait(20000);
|
||||||
|
cy.checkHealthRetryable(fn, retryCount);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
function provisionAzureMonitorDatasources(datasources: AzureMonitorProvision[]) {
|
function provisionAzureMonitorDatasources(datasources: AzureMonitorProvision[]) {
|
||||||
const datasource = datasources[0].datasources[0];
|
const datasource = datasources[0].datasources[0];
|
||||||
|
|
||||||
@@ -43,8 +58,11 @@ function provisionAzureMonitorDatasources(datasources: AzureMonitorProvision[])
|
|||||||
.type(datasource.secureJsonData.clientSecret, { log: false });
|
.type(datasource.secureJsonData.clientSecret, { log: false });
|
||||||
e2eSelectors.configEditor.loadSubscriptions.button().click().wait('@subscriptions').wait(500);
|
e2eSelectors.configEditor.loadSubscriptions.button().click().wait('@subscriptions').wait(500);
|
||||||
e2eSelectors.configEditor.defaultSubscription.input().find('input').type('datasources{enter}');
|
e2eSelectors.configEditor.defaultSubscription.input().find('input').type('datasources{enter}');
|
||||||
// Wait for 15s so that credentials are ready. 5s has been tested locally before and seemed insufficient.
|
|
||||||
e2e().wait(15000);
|
// We can do this because awaitHealth is set to true so @health is defined
|
||||||
|
cy.checkHealthRetryable(() => {
|
||||||
|
return e2e.pages.DataSource.saveAndTest().click().wait('@health');
|
||||||
|
}, 0);
|
||||||
},
|
},
|
||||||
expectedAlertMessage: 'Successfully connected to all Azure Monitor endpoints',
|
expectedAlertMessage: 'Successfully connected to all Azure Monitor endpoints',
|
||||||
// Reduce the timeout from 30s to error faster when an invalid alert message is presented
|
// Reduce the timeout from 30s to error faster when an invalid alert message is presented
|
||||||
|
|||||||
Reference in New Issue
Block a user