diff --git a/.betterer.results b/.betterer.results
index c5d0b69eb13..7f8ff5acfac 100644
--- a/.betterer.results
+++ b/.betterer.results
@@ -83,7 +83,7 @@ exports[`no enzyme tests`] = {
"public/app/features/dimensions/editors/ThresholdsEditor/ThresholdsEditor.test.tsx:4164297658": [
[0, 17, 13, "RegExp match", "2409514259"]
],
- "public/app/features/folders/FolderSettingsPage.test.tsx:1109052730": [
+ "public/app/features/folders/FolderSettingsPage.test.tsx:1208063654": [
[0, 19, 13, "RegExp match", "2409514259"]
],
"public/app/plugins/datasource/cloudwatch/components/ConfigEditor.test.tsx:4057721851": [
@@ -115,9 +115,6 @@ exports[`no enzyme tests`] = {
],
"public/app/plugins/datasource/prometheus/configuration/AzureCredentialsForm.test.tsx:3424320489": [
[0, 19, 13, "RegExp match", "2409514259"]
- ],
- "public/app/plugins/panel/bargauge/BarGaugePanel.test.tsx:3368730691": [
- [0, 31, 13, "RegExp match", "2409514259"]
]
}`
};
@@ -4366,12 +4363,6 @@ exports[`better eslint`] = {
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
[0, 0, 0, "Unexpected any. Specify a different type.", "1"]
],
- "public/app/features/dashboard/components/SubMenu/DashboardLinksDashboard.tsx:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"]
- ],
"public/app/features/dashboard/components/SubMenu/SubMenu.tsx:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"]
],
@@ -4765,16 +4756,16 @@ exports[`better eslint`] = {
[0, 0, 0, "Unexpected any. Specify a different type.", "10"],
[0, 0, 0, "Unexpected any. Specify a different type.", "11"]
],
- "public/app/features/datasources/DataSourceDashboards.tsx:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"]
- ],
- "public/app/features/datasources/__mocks__/dataSourcesMocks.ts:5381": [
- [0, 0, 0, "Do not use any type assertions.", "0"]
- ],
- "public/app/features/datasources/settings/ButtonRow.tsx:5381": [
+ "public/app/features/datasources/components/ButtonRow.tsx:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
[0, 0, 0, "Unexpected any. Specify a different type.", "1"]
],
+ "public/app/features/datasources/passwordHandlers.test.ts:5381": [
+ [0, 0, 0, "Unexpected any. Specify a different type.", "0"]
+ ],
+ "public/app/features/datasources/passwordHandlers.ts:5381": [
+ [0, 0, 0, "Unexpected any. Specify a different type.", "0"]
+ ],
"public/app/features/datasources/state/actions.test.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
[0, 0, 0, "Unexpected any. Specify a different type.", "1"],
@@ -4799,12 +4790,6 @@ exports[`better eslint`] = {
[0, 0, 0, "Do not use any type assertions.", "0"],
[0, 0, 0, "Do not use any type assertions.", "1"]
],
- "public/app/features/datasources/utils/passwordHandlers.test.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"]
- ],
- "public/app/features/datasources/utils/passwordHandlers.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"]
- ],
"public/app/features/dimensions/color.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"]
],
@@ -5377,15 +5362,7 @@ exports[`better eslint`] = {
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
[0, 0, 0, "Unexpected any. Specify a different type.", "1"],
[0, 0, 0, "Unexpected any. Specify a different type.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "4"]
- ],
- "public/app/features/playlist/PlaylistNewPage.test.tsx:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "4"]
+ [0, 0, 0, "Unexpected any. Specify a different type.", "3"]
],
"public/app/features/playlist/PlaylistSrv.test.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
@@ -5475,9 +5452,6 @@ exports[`better eslint`] = {
[0, 0, 0, "Do not use any type assertions.", "2"],
[0, 0, 0, "Do not use any type assertions.", "3"]
],
- "public/app/features/plugins/admin/state/reducer.ts:5381": [
- [0, 0, 0, "Do not use any type assertions.", "0"]
- ],
"public/app/features/plugins/admin/state/selectors.ts:5381": [
[0, 0, 0, "Do not use any type assertions.", "0"]
],
@@ -5517,11 +5491,8 @@ exports[`better eslint`] = {
[0, 0, 0, "Unexpected any. Specify a different type.", "20"],
[0, 0, 0, "Do not use any type assertions.", "21"],
[0, 0, 0, "Unexpected any. Specify a different type.", "22"],
- [0, 0, 0, "Do not use any type assertions.", "23"],
- [0, 0, 0, "Do not use any type assertions.", "24"],
- [0, 0, 0, "Do not use any type assertions.", "25"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "26"],
- [0, 0, 0, "Do not use any type assertions.", "27"]
+ [0, 0, 0, "Unexpected any. Specify a different type.", "23"],
+ [0, 0, 0, "Do not use any type assertions.", "24"]
],
"public/app/features/plugins/hooks/tests/useImportAppPlugin.test.tsx:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
@@ -5551,11 +5522,39 @@ exports[`better eslint`] = {
[0, 0, 0, "Do not use any type assertions.", "7"],
[0, 0, 0, "Do not use any type assertions.", "8"]
],
+ "public/app/features/plugins/sql/components/query-editor-raw/SQLEditor.tsx:5381": [
+ [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
+ [0, 0, 0, "Do not use any type assertions.", "1"],
+ [0, 0, 0, "Do not use any type assertions.", "2"],
+ [0, 0, 0, "Do not use any type assertions.", "3"],
+ [0, 0, 0, "Do not use any type assertions.", "4"],
+ [0, 0, 0, "Do not use any type assertions.", "5"]
+ ],
"public/app/features/plugins/sql/components/visual-query-builder/AwesomeQueryBuilder.tsx:5381": [
[0, 0, 0, "Do not use any type assertions.", "0"],
[0, 0, 0, "Do not use any type assertions.", "1"],
[0, 0, 0, "Unexpected any. Specify a different type.", "2"]
],
+ "public/app/features/plugins/sql/mocks/Monaco.ts:5381": [
+ [0, 0, 0, "Unexpected any. Specify a different type.", "0"]
+ ],
+ "public/app/features/plugins/sql/mocks/queries/singleLineFullQuery.ts:5381": [
+ [0, 0, 0, "Do not use any type assertions.", "0"]
+ ],
+ "public/app/features/plugins/sql/standardSql/definition.ts:5381": [
+ [0, 0, 0, "Unexpected any. Specify a different type.", "0"]
+ ],
+ "public/app/features/plugins/sql/test-utils/statementPosition.ts:5381": [
+ [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
+ [0, 0, 0, "Do not use any type assertions.", "1"],
+ [0, 0, 0, "Unexpected any. Specify a different type.", "2"],
+ [0, 0, 0, "Do not use any type assertions.", "3"]
+ ],
+ "public/app/features/plugins/sql/utils/debugger.ts:5381": [
+ [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
+ [0, 0, 0, "Do not use any type assertions.", "1"],
+ [0, 0, 0, "Unexpected any. Specify a different type.", "2"]
+ ],
"public/app/features/plugins/tests/datasource_srv.test.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
[0, 0, 0, "Unexpected any. Specify a different type.", "1"],
@@ -5719,35 +5718,24 @@ exports[`better eslint`] = {
[0, 0, 0, "Unexpected any. Specify a different type.", "1"]
],
"public/app/features/scenes/core/SceneObjectBase.tsx:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
+ [0, 0, 0, "Do not use any type assertions.", "0"],
[0, 0, 0, "Do not use any type assertions.", "1"],
- [0, 0, 0, "Do not use any type assertions.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"],
- [0, 0, 0, "Do not use any type assertions.", "4"],
+ [0, 0, 0, "Unexpected any. Specify a different type.", "2"],
+ [0, 0, 0, "Do not use any type assertions.", "3"],
+ [0, 0, 0, "Unexpected any. Specify a different type.", "4"],
[0, 0, 0, "Do not use any type assertions.", "5"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "6"],
- [0, 0, 0, "Do not use any type assertions.", "7"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "8"],
- [0, 0, 0, "Do not use any type assertions.", "9"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "10"]
+ [0, 0, 0, "Unexpected any. Specify a different type.", "6"]
],
"public/app/features/scenes/core/SceneTimeRange.tsx:5381": [
[0, 0, 0, "Do not use any type assertions.", "0"],
[0, 0, 0, "Unexpected any. Specify a different type.", "1"]
],
- "public/app/features/scenes/core/events.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "2"]
- ],
"public/app/features/scenes/core/types.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"]
+ [0, 0, 0, "Unexpected any. Specify a different type.", "0"]
],
"public/app/features/scenes/editor/SceneObjectTree.tsx:5381": [
[0, 0, 0, "Do not use any type assertions.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Do not use any type assertions.", "2"]
+ [0, 0, 0, "Unexpected any. Specify a different type.", "1"]
],
"public/app/features/scenes/querying/SceneQueryRunner.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
@@ -7678,8 +7666,7 @@ exports[`better eslint`] = {
[0, 0, 0, "Unexpected any. Specify a different type.", "10"],
[0, 0, 0, "Unexpected any. Specify a different type.", "11"],
[0, 0, 0, "Unexpected any. Specify a different type.", "12"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "13"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "14"]
+ [0, 0, 0, "Unexpected any. Specify a different type.", "13"]
],
"public/app/plugins/datasource/loki/datasource.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
@@ -7688,8 +7675,7 @@ exports[`better eslint`] = {
[0, 0, 0, "Unexpected any. Specify a different type.", "3"],
[0, 0, 0, "Unexpected any. Specify a different type.", "4"],
[0, 0, 0, "Unexpected any. Specify a different type.", "5"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "6"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "7"]
+ [0, 0, 0, "Unexpected any. Specify a different type.", "6"]
],
"public/app/plugins/datasource/loki/getDerivedFields.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
@@ -7778,171 +7764,15 @@ exports[`better eslint`] = {
[0, 0, 0, "Do not use any type assertions.", "1"],
[0, 0, 0, "Do not use any type assertions.", "2"]
],
- "public/app/plugins/datasource/mssql/datasource.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Do not use any type assertions.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "4"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "5"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "6"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "7"],
- [0, 0, 0, "Do not use any type assertions.", "8"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "9"]
- ],
- "public/app/plugins/datasource/mssql/module.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"]
- ],
- "public/app/plugins/datasource/mssql/query_ctrl.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"]
- ],
- "public/app/plugins/datasource/mssql/response_parser.ts:5381": [
- [0, 0, 0, "Do not use any type assertions.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Do not use any type assertions.", "2"]
- ],
- "public/app/plugins/datasource/mssql/specs/datasource.test.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "4"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "5"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "6"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "7"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "8"]
- ],
- "public/app/plugins/datasource/mssql/types.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "4"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "5"]
- ],
- "public/app/plugins/datasource/mysql/datasource.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Do not use any type assertions.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "4"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "5"],
- [0, 0, 0, "Do not use any type assertions.", "6"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "7"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "8"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "9"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "10"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "11"]
- ],
- "public/app/plugins/datasource/mysql/meta_query.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"]
- ],
- "public/app/plugins/datasource/mysql/module.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"]
- ],
- "public/app/plugins/datasource/mysql/mysql_query_model.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "4"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "5"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "6"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "7"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "8"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "9"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "10"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "11"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "12"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "13"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "14"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "15"]
- ],
- "public/app/plugins/datasource/mysql/query_ctrl.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "4"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "5"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "6"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "7"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "8"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "9"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "10"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "11"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "12"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "13"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "14"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "15"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "16"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "17"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "18"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "19"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "20"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "21"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "22"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "23"],
- [0, 0, 0, "Do not use any type assertions.", "24"],
- [0, 0, 0, "Do not use any type assertions.", "25"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "26"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "27"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "28"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "29"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "30"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "31"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "32"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "33"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "34"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "35"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "36"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "37"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "38"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "39"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "40"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "41"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "42"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "43"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "44"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "45"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "46"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "47"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "48"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "49"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "50"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "51"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "52"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "53"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "54"]
- ],
- "public/app/plugins/datasource/mysql/response_parser.ts:5381": [
- [0, 0, 0, "Do not use any type assertions.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Do not use any type assertions.", "2"]
- ],
"public/app/plugins/datasource/mysql/specs/datasource.test.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"]
- ],
- "public/app/plugins/datasource/mysql/sql_part.ts:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "1"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "2"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "3"]
+ [0, 0, 0, "Unexpected any. Specify a different type.", "0"]
],
"public/app/plugins/datasource/mysql/types.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
[0, 0, 0, "Unexpected any. Specify a different type.", "1"],
[0, 0, 0, "Unexpected any. Specify a different type.", "2"],
[0, 0, 0, "Unexpected any. Specify a different type.", "3"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "4"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "5"]
+ [0, 0, 0, "Unexpected any. Specify a different type.", "4"]
],
"public/app/plugins/datasource/opentsdb/datasource.d.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"]
@@ -8405,8 +8235,7 @@ exports[`better eslint`] = {
[0, 0, 0, "Unexpected any. Specify a different type.", "32"],
[0, 0, 0, "Unexpected any. Specify a different type.", "33"],
[0, 0, 0, "Unexpected any. Specify a different type.", "34"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "35"],
- [0, 0, 0, "Unexpected any. Specify a different type.", "36"]
+ [0, 0, 0, "Unexpected any. Specify a different type.", "35"]
],
"public/app/plugins/datasource/prometheus/language_provider.test.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"],
@@ -8886,9 +8715,6 @@ exports[`better eslint`] = {
"public/app/plugins/panel/bargauge/BarGaugeMigrations.test.ts:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"]
],
- "public/app/plugins/panel/bargauge/BarGaugePanel.test.tsx:5381": [
- [0, 0, 0, "Unexpected any. Specify a different type.", "0"]
- ],
"public/app/plugins/panel/bargauge/BarGaugePanel.tsx:5381": [
[0, 0, 0, "Unexpected any. Specify a different type.", "0"]
],
diff --git a/.drone.star b/.drone.star
index b9d6ab67c91..10719f988f5 100644
--- a/.drone.star
+++ b/.drone.star
@@ -4,12 +4,12 @@
# 3. Run `make drone`
# More information about this process here: https://github.com/grafana/deployment_tools/blob/master/docs/infrastructure/drone/signing.md
-load('scripts/drone/pipelines/pr.star', 'pr_pipelines')
-load('scripts/drone/pipelines/main.star', 'main_pipelines')
+load('scripts/drone/events/pr.star', 'pr_pipelines')
+load('scripts/drone/events/main.star', 'main_pipelines')
load('scripts/drone/pipelines/docs.star', 'docs_pipelines')
-load('scripts/drone/pipelines/release.star', 'release_pipelines', 'publish_image_pipelines', 'publish_artifacts_pipelines', 'publish_npm_pipelines', 'publish_packages_pipeline', 'artifacts_page_pipeline')
+load('scripts/drone/events/release.star', 'release_pipelines', 'publish_image_pipelines', 'publish_artifacts_pipelines', 'publish_npm_pipelines', 'publish_packages_pipeline', 'artifacts_page_pipeline')
load('scripts/drone/version.star', 'version_branch_pipelines')
-load('scripts/drone/pipelines/cron.star', 'cronjobs')
+load('scripts/drone/events/cron.star', 'cronjobs')
load('scripts/drone/vault.star', 'secrets')
def main(ctx):
diff --git a/.drone.yml b/.drone.yml
index d83de1d157f..cb881e4910d 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -15,7 +15,7 @@ steps:
name: identify-runner
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -58,7 +58,7 @@ steps:
name: identify-runner
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -66,13 +66,13 @@ steps:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- yarn install --immutable
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- yarn run prettier:check
@@ -83,14 +83,14 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-frontend
- commands:
- yarn betterer ci
depends_on:
- yarn-install
failure: ignore
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: betterer-frontend
- commands:
- yarn run ci:test-frontend
@@ -98,7 +98,7 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-frontend
trigger:
event:
@@ -134,7 +134,7 @@ steps:
name: identify-runner
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -142,7 +142,7 @@ steps:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -151,13 +151,13 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- |-
@@ -169,13 +169,13 @@ steps:
wan" > words_to_ignore.txt
- codespell -I words_to_ignore.txt docs/
- rm words_to_ignore.txt
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: codespell
- commands:
- ./bin/grabpl shellcheck
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: shellcheck
- commands:
- make lint-go
@@ -183,19 +183,19 @@ steps:
- wire-install
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-backend
- commands:
- go test -short -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend
- commands:
- go test -run Integration -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend-integration
trigger:
event:
@@ -234,7 +234,7 @@ steps:
name: identify-runner
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -242,7 +242,7 @@ steps:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -251,19 +251,19 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- yarn install --immutable
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- failure: ignore
image: grafana/drone-downstream
@@ -283,7 +283,7 @@ steps:
depends_on:
- gen-version
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER}
@@ -292,7 +292,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend
- commands:
- ./bin/grabpl build-frontend-packages --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER}
@@ -301,7 +301,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend-packages
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition oss
@@ -309,7 +309,7 @@ steps:
- gen-version
- yarn-install
environment: null
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-plugins
- commands:
- . scripts/build/gpg-test-vars.sh && ./bin/grabpl package --jobs 8 --edition oss
@@ -320,7 +320,7 @@ steps:
- build-frontend
- build-frontend-packages
environment: null
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: package
- commands:
- ./scripts/grafana-server/start-server
@@ -333,7 +333,7 @@ steps:
environment:
ARCH: linux-amd64
PORT: 3001
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -411,8 +411,15 @@ steps:
- build-frontend-packages
environment:
NODE_OPTIONS: --max_old_space_size=4096
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-storybook
+- commands:
+ - ls dist/*.tar.gz*
+ - cp dist/*.tar.gz* packaging/docker/
+ depends_on:
+ - package
+ image: grafana/build-container:1.5.8
+ name: copy-packages-for-docker
- commands:
- yarn wait-on http://$HOST:$PORT
- pa11y-ci --config .pa11yci-pr.conf.js
@@ -426,13 +433,6 @@ steps:
failure: always
image: grafana/docker-puppeteer:1.0.0
name: test-a11y-frontend
-- commands:
- - ls dist/*.tar.gz*
- - cp dist/*.tar.gz* packaging/docker/
- depends_on:
- - package
- image: grafana/build-container:1.5.7
- name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition oss -archs amd64
depends_on:
@@ -491,7 +491,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -506,13 +506,13 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- apt-get update
@@ -528,7 +528,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: postgres-integration-tests
- commands:
- apt-get update
@@ -544,7 +544,7 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: mysql-integration-tests
trigger:
event:
@@ -578,7 +578,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -590,13 +590,13 @@ steps:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- yarn install --immutable
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- |-
@@ -608,7 +608,7 @@ steps:
wan" > words_to_ignore.txt
- codespell -I words_to_ignore.txt docs/
- rm words_to_ignore.txt
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: codespell
- commands:
- yarn run prettier:checkDocs
@@ -616,7 +616,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-docs
- commands:
- ./bin/grabpl build-frontend-packages --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER}
@@ -625,13 +625,13 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend-packages
- commands:
- ./scripts/ci-reference-docs-lint.sh ci
depends_on:
- build-frontend-packages
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend-docs
- commands:
- mkdir -p /hugo/content/docs/grafana
@@ -668,7 +668,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -680,13 +680,13 @@ steps:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- yarn install --immutable
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- |-
@@ -698,7 +698,7 @@ steps:
wan" > words_to_ignore.txt
- codespell -I words_to_ignore.txt docs/
- rm words_to_ignore.txt
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: codespell
- commands:
- yarn run prettier:checkDocs
@@ -706,7 +706,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-docs
- commands:
- ./bin/grabpl build-frontend-packages --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER}
@@ -715,13 +715,13 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend-packages
- commands:
- ./scripts/ci-reference-docs-lint.sh ci
depends_on:
- build-frontend-packages
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend-docs
- commands:
- mkdir -p /hugo/content/docs/grafana
@@ -757,7 +757,7 @@ steps:
name: identify-runner
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -765,13 +765,13 @@ steps:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- yarn install --immutable
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- yarn run prettier:check
@@ -782,14 +782,14 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-frontend
- commands:
- yarn betterer ci
depends_on:
- yarn-install
failure: ignore
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: betterer-frontend
- commands:
- yarn run ci:test-frontend
@@ -797,7 +797,7 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-frontend
trigger:
branch: main
@@ -825,7 +825,7 @@ steps:
name: identify-runner
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -833,7 +833,7 @@ steps:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -842,20 +842,14 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
-- commands:
- - ./bin/grabpl verify-drone
- depends_on:
- - grabpl
- image: byrnedo/alpine-curl:0.1.8
- name: lint-drone
- commands:
- |-
echo -e "unknwon
@@ -866,13 +860,13 @@ steps:
wan" > words_to_ignore.txt
- codespell -I words_to_ignore.txt docs/
- rm words_to_ignore.txt
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: codespell
- commands:
- ./bin/grabpl shellcheck
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: shellcheck
- commands:
- make lint-go
@@ -880,20 +874,26 @@ steps:
- wire-install
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-backend
- commands:
- go test -short -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend
- commands:
- go test -run Integration -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend-integration
+- commands:
+ - ./bin/grabpl verify-drone
+ depends_on:
+ - grabpl
+ image: byrnedo/alpine-curl:0.1.8
+ name: lint-drone
trigger:
branch: main
event:
@@ -920,7 +920,7 @@ steps:
name: identify-runner
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -928,7 +928,7 @@ steps:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -937,19 +937,19 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- yarn install --immutable
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- git clone "https://$${GITHUB_TOKEN}@github.com/grafana/grafana-enterprise.git"
@@ -970,7 +970,7 @@ steps:
from_secret: github_token
TEST_TAG: v0.0.0-test
failure: ignore
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: trigger-test-release
when:
paths:
@@ -994,7 +994,7 @@ steps:
depends_on:
- gen-version
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER}
@@ -1003,7 +1003,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend
- commands:
- ./bin/grabpl build-frontend-packages --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER}
@@ -1012,7 +1012,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend-packages
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition oss
@@ -1022,7 +1022,7 @@ steps:
environment:
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-plugins
- commands:
- ./bin/grabpl package --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER} --sign
@@ -1040,7 +1040,7 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: package
- commands:
- ./scripts/grafana-server/start-server
@@ -1053,7 +1053,7 @@ steps:
environment:
ARCH: linux-amd64
PORT: 3001
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -1131,26 +1131,15 @@ steps:
- build-frontend-packages
environment:
NODE_OPTIONS: --max_old_space_size=4096
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-storybook
- commands:
- - ./bin/grabpl store-storybook --deployment canary --src-bucket grafana-storybook
+ - ls dist/*.tar.gz*
+ - cp dist/*.tar.gz* packaging/docker/
depends_on:
- - build-storybook
- - end-to-end-tests-dashboards-suite
- - end-to-end-tests-panels-suite
- - end-to-end-tests-smoke-tests-suite
- - end-to-end-tests-various-suite
- environment:
- GCP_KEY:
- from_secret: gcp_key
- PRERELEASE_BUCKET:
- from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
- name: store-storybook
- when:
- repo:
- - grafana/grafana
+ - package
+ image: grafana/build-container:1.5.8
+ name: copy-packages-for-docker
- commands:
- yarn wait-on http://$HOST:$PORT
- pa11y-ci --config .pa11yci.conf.js --json > pa11y-ci-results.json
@@ -1164,6 +1153,24 @@ steps:
failure: ignore
image: grafana/docker-puppeteer:1.0.0
name: test-a11y-frontend
+- commands:
+ - ./bin/grabpl store-storybook --deployment canary --src-bucket grafana-storybook
+ depends_on:
+ - build-storybook
+ - end-to-end-tests-dashboards-suite
+ - end-to-end-tests-panels-suite
+ - end-to-end-tests-smoke-tests-suite
+ - end-to-end-tests-various-suite
+ environment:
+ GCP_KEY:
+ from_secret: gcp_key
+ PRERELEASE_BUCKET:
+ from_secret: prerelease_bucket
+ image: grafana/grafana-ci-deploy:1.3.3
+ name: store-storybook
+ when:
+ repo:
+ - grafana/grafana
- commands:
- ./scripts/ci-frontend-metrics.sh | ./bin/grabpl publish-metrics $${GRAFANA_MISC_STATS_API_KEY}
depends_on:
@@ -1172,18 +1179,11 @@ steps:
GRAFANA_MISC_STATS_API_KEY:
from_secret: grafana_misc_stats_api_key
failure: ignore
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: publish-frontend-metrics
when:
repo:
- grafana/grafana
-- commands:
- - ls dist/*.tar.gz*
- - cp dist/*.tar.gz* packaging/docker/
- depends_on:
- - package
- image: grafana/build-container:1.5.7
- name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition oss
depends_on:
@@ -1260,7 +1260,7 @@ steps:
environment:
NPM_TOKEN:
from_secret: npm_token
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: release-canary-npm-packages
when:
repo:
@@ -1277,7 +1277,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-packages
when:
repo:
@@ -1291,7 +1291,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-cdn-assets
when:
repo:
@@ -1305,12 +1305,6 @@ volumes:
- host:
path: /var/run/docker.sock
name: docker
-- name: postgres
- temp:
- medium: memory
-- name: mysql
- temp:
- medium: memory
---
depends_on: []
kind: pipeline
@@ -1344,7 +1338,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -1359,13 +1353,13 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- apt-get update
@@ -1381,7 +1375,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: postgres-integration-tests
- commands:
- apt-get update
@@ -1397,7 +1391,7 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: mysql-integration-tests
trigger:
branch: main
@@ -1434,7 +1428,7 @@ steps:
name: identify-runner
- commands:
- $$ProgressPreference = "SilentlyContinue"
- - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/windows/grabpl.exe
+ - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/windows/grabpl.exe
-OutFile grabpl.exe
image: grafana/ci-wix:0.1.1
name: windows-init
@@ -1522,7 +1516,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -1530,7 +1524,7 @@ steps:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- echo $DRONE_RUNNER_NAME
@@ -1552,7 +1546,7 @@ steps:
from_secret: gpg_pub_key
GRAFANA_COM_API_KEY:
from_secret: grafana_api_key
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: store-packages-oss
trigger:
branch: main
@@ -1613,7 +1607,7 @@ steps:
name: identify-runner
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -1621,7 +1615,7 @@ steps:
- ./bin/grabpl gen-version ${DRONE_TAG}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -1630,26 +1624,26 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- yarn install --immutable
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition oss ${DRONE_TAG}
depends_on:
- gen-version
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --edition oss ${DRONE_TAG}
@@ -1658,7 +1652,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend
- commands:
- ./bin/grabpl build-frontend-packages --jobs 8 --edition oss ${DRONE_TAG}
@@ -1667,7 +1661,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend-packages
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition oss
@@ -1677,7 +1671,7 @@ steps:
environment:
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-plugins
- commands:
- ./bin/grabpl package --jobs 8 --edition oss --sign ${DRONE_TAG}
@@ -1695,14 +1689,14 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: package
- commands:
- ls dist/*.tar.gz*
- cp dist/*.tar.gz* packaging/docker/
depends_on:
- package
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition oss --shouldSave
@@ -1739,7 +1733,7 @@ steps:
environment:
ARCH: linux-amd64
PORT: 3001
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -1817,7 +1811,7 @@ steps:
- build-frontend-packages
environment:
NODE_OPTIONS: --max_old_space_size=4096
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-storybook
- commands:
- ./bin/grabpl upload-cdn --edition oss
@@ -1828,7 +1822,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-cdn-assets
- commands:
- ./bin/grabpl upload-packages --edition oss
@@ -1842,7 +1836,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-packages
- commands:
- ./bin/grabpl store-storybook --deployment latest --src-bucket grafana-prerelease
@@ -1860,7 +1854,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: store-storybook
- commands:
- ./bin/grabpl artifacts npm store --tag ${DRONE_TAG}
@@ -1871,7 +1865,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: store-npm-packages
trigger:
event:
@@ -1910,7 +1904,7 @@ steps:
name: identify-runner
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -1918,7 +1912,7 @@ steps:
- ./bin/grabpl gen-version ${DRONE_TAG}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -1927,25 +1921,25 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- yarn install --immutable
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- ./bin/grabpl shellcheck
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: shellcheck
- commands:
- |-
@@ -1957,7 +1951,7 @@ steps:
wan" > words_to_ignore.txt
- codespell -I words_to_ignore.txt docs/
- rm words_to_ignore.txt
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: codespell
- commands:
- make lint-go
@@ -1965,7 +1959,7 @@ steps:
- wire-install
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-backend
- commands:
- yarn run prettier:check
@@ -1976,19 +1970,19 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-frontend
- commands:
- go test -short -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend
- commands:
- go test -run Integration -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend-integration
- commands:
- yarn run ci:test-frontend
@@ -1996,7 +1990,7 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-frontend
trigger:
event:
@@ -2045,7 +2039,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2060,13 +2054,13 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- apt-get update
@@ -2082,7 +2076,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: postgres-integration-tests
- commands:
- apt-get update
@@ -2098,7 +2092,7 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: mysql-integration-tests
trigger:
event:
@@ -2139,7 +2133,7 @@ steps:
name: identify-runner
- commands:
- $$ProgressPreference = "SilentlyContinue"
- - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/windows/grabpl.exe
+ - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/windows/grabpl.exe
-OutFile grabpl.exe
image: grafana/ci-wix:0.1.1
name: windows-init
@@ -2198,7 +2192,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2213,7 +2207,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
@@ -2229,25 +2223,25 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: init-enterprise
- commands:
- make gen-go
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- yarn install --immutable
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- ./bin/grabpl gen-version ${DRONE_TAG}
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -2257,14 +2251,14 @@ steps:
- CODEGEN_VERIFY=1 make gen-cue
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition enterprise ${DRONE_TAG}
depends_on:
- gen-version
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --edition enterprise ${DRONE_TAG}
@@ -2273,7 +2267,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend
- commands:
- ./bin/grabpl build-frontend-packages --jobs 8 --edition enterprise ${DRONE_TAG}
@@ -2282,7 +2276,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend-packages
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition enterprise
@@ -2292,14 +2286,14 @@ steps:
environment:
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-plugins
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition enterprise2 ${DRONE_TAG}
depends_on:
- gen-version
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-backend-enterprise2
- commands:
- ./bin/grabpl package --jobs 8 --edition enterprise --sign ${DRONE_TAG}
@@ -2318,14 +2312,14 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: package
- commands:
- ls dist/*.tar.gz*
- cp dist/*.tar.gz* packaging/docker/
depends_on:
- package
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition enterprise --shouldSave
@@ -2363,7 +2357,7 @@ steps:
ARCH: linux-amd64
PORT: 3001
RUNDIR: scripts/grafana-server/tmp-grafana-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -2442,7 +2436,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-cdn-assets
- commands:
- ./bin/grabpl upload-packages --edition enterprise
@@ -2453,7 +2447,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-packages
- commands:
- ./bin/grabpl artifacts npm store --tag ${DRONE_TAG}
@@ -2464,7 +2458,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: store-npm-packages
- commands:
- ./bin/grabpl package --jobs 8 --edition enterprise2 --sign ${DRONE_TAG}
@@ -2483,7 +2477,7 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: package-enterprise2
- commands:
- ./bin/grabpl upload-cdn --edition enterprise2
@@ -2494,7 +2488,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-cdn-assets-enterprise2
- commands:
- ./bin/grabpl upload-packages --edition enterprise2
@@ -2505,7 +2499,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-packages-enterprise2
trigger:
event:
@@ -2544,7 +2538,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2559,7 +2553,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
@@ -2575,25 +2569,25 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: init-enterprise
- commands:
- make gen-go
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- yarn install --immutable
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- ./bin/grabpl gen-version ${DRONE_TAG}
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -2603,7 +2597,7 @@ steps:
- CODEGEN_VERIFY=1 make gen-cue
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- |-
@@ -2615,7 +2609,7 @@ steps:
wan" > words_to_ignore.txt
- codespell -I words_to_ignore.txt docs/
- rm words_to_ignore.txt
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: codespell
- commands:
- make lint-go
@@ -2623,7 +2617,7 @@ steps:
- wire-install
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-backend
- commands:
- yarn run prettier:check
@@ -2634,19 +2628,19 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-frontend
- commands:
- go test -short -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend
- commands:
- go test -run Integration -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend-integration
- commands:
- yarn run ci:test-frontend
@@ -2654,7 +2648,7 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-frontend
- commands:
- make lint-go
@@ -2662,13 +2656,13 @@ steps:
- wire-install
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-backend-enterprise2
- commands:
- go test -tags=pro -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend-enterprise2
trigger:
event:
@@ -2727,7 +2721,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2742,7 +2736,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
@@ -2758,7 +2752,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: init-enterprise
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -2768,13 +2762,13 @@ steps:
- CODEGEN_VERIFY=1 make gen-cue
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- apt-get update
@@ -2790,7 +2784,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: postgres-integration-tests
- commands:
- apt-get update
@@ -2806,7 +2800,7 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: mysql-integration-tests
- commands:
- dockerize -wait tcp://redis:6379/0 -timeout 120s
@@ -2815,7 +2809,7 @@ steps:
- wire-install
environment:
REDIS_URL: redis://redis:6379/0
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: redis-integration-tests
- commands:
- dockerize -wait tcp://memcached:11211 -timeout 120s
@@ -2824,7 +2818,7 @@ steps:
- wire-install
environment:
MEMCACHED_HOSTS: memcached:11211
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: memcached-integration-tests
trigger:
event:
@@ -2869,7 +2863,7 @@ steps:
name: identify-runner
- commands:
- $$ProgressPreference = "SilentlyContinue"
- - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/windows/grabpl.exe
+ - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/windows/grabpl.exe
-OutFile grabpl.exe
- git clone "https://$$env:GITHUB_TOKEN@github.com/grafana/grafana-enterprise.git"
- cd grafana-enterprise
@@ -2944,7 +2938,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3022,7 +3016,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3083,7 +3077,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3162,7 +3156,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3224,7 +3218,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3237,7 +3231,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: publish-artifacts
trigger:
event:
@@ -3262,7 +3256,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3275,7 +3269,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: publish-artifacts
trigger:
event:
@@ -3300,7 +3294,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3308,7 +3302,7 @@ steps:
- yarn install --immutable
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- ./bin/grabpl artifacts npm retrieve --tag v${TAG}
@@ -3319,7 +3313,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: retrieve-npm-packages
- commands:
- ./bin/grabpl artifacts npm release --tag v${TAG}
@@ -3328,7 +3322,7 @@ steps:
environment:
NPM_TOKEN:
from_secret: npm_token
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: release-npm-packages
trigger:
event:
@@ -3356,7 +3350,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3364,7 +3358,7 @@ steps:
- ./bin/grabpl gen-version ${DRONE_TAG}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- ./bin/grabpl store-packages --edition oss --packages-bucket grafana-downloads
@@ -3382,7 +3376,7 @@ steps:
from_secret: gpg_pub_key
GRAFANA_COM_API_KEY:
from_secret: grafana_api_key
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: store-packages-oss
trigger:
event:
@@ -3410,7 +3404,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3418,7 +3412,7 @@ steps:
- ./bin/grabpl gen-version ${DRONE_TAG}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- ./bin/grabpl store-packages --edition enterprise --packages-bucket grafana-downloads
@@ -3436,7 +3430,7 @@ steps:
from_secret: gpg_pub_key
GRAFANA_COM_API_KEY:
from_secret: grafana_api_key
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: store-packages-enterprise
trigger:
event:
@@ -3461,7 +3455,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3469,7 +3463,7 @@ steps:
- ./bin/grabpl artifacts-page
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: artifacts-page
trigger:
event:
@@ -3497,7 +3491,7 @@ steps:
name: identify-runner
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3505,7 +3499,7 @@ steps:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -3514,26 +3508,26 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- yarn install --immutable
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- gen-version
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER}
@@ -3542,7 +3536,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend
- commands:
- ./bin/grabpl build-frontend-packages --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER}
@@ -3551,7 +3545,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend-packages
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition oss
@@ -3561,7 +3555,7 @@ steps:
environment:
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-plugins
- commands:
- ./bin/grabpl package --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER} --sign
@@ -3579,14 +3573,14 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: package
- commands:
- ls dist/*.tar.gz*
- cp dist/*.tar.gz* packaging/docker/
depends_on:
- package
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition oss --shouldSave
@@ -3623,7 +3617,7 @@ steps:
environment:
ARCH: linux-amd64
PORT: 3001
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -3701,7 +3695,7 @@ steps:
- build-frontend-packages
environment:
NODE_OPTIONS: --max_old_space_size=4096
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-storybook
- commands:
- ./bin/grabpl upload-cdn --edition oss
@@ -3712,7 +3706,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-cdn-assets
when:
repo:
@@ -3729,7 +3723,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-packages
when:
repo:
@@ -3765,7 +3759,7 @@ steps:
name: identify-runner
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3773,7 +3767,7 @@ steps:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -3782,25 +3776,25 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- yarn install --immutable
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- ./bin/grabpl shellcheck
depends_on:
- grabpl
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: shellcheck
- commands:
- |-
@@ -3812,7 +3806,7 @@ steps:
wan" > words_to_ignore.txt
- codespell -I words_to_ignore.txt docs/
- rm words_to_ignore.txt
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: codespell
- commands:
- make lint-go
@@ -3820,7 +3814,7 @@ steps:
- wire-install
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-backend
- commands:
- yarn run prettier:check
@@ -3831,19 +3825,19 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-frontend
- commands:
- go test -short -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend
- commands:
- go test -run Integration -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend-integration
- commands:
- yarn run ci:test-frontend
@@ -3851,7 +3845,7 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-frontend
trigger:
ref:
@@ -3894,7 +3888,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3909,13 +3903,13 @@ steps:
in output.'
- CODEGEN_VERIFY=1 make gen-cue
depends_on: []
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- apt-get update
@@ -3931,7 +3925,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: postgres-integration-tests
- commands:
- apt-get update
@@ -3947,7 +3941,7 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: mysql-integration-tests
trigger:
ref:
@@ -3982,7 +3976,7 @@ steps:
name: identify-runner
- commands:
- $$ProgressPreference = "SilentlyContinue"
- - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/windows/grabpl.exe
+ - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/windows/grabpl.exe
-OutFile grabpl.exe
image: grafana/ci-wix:0.1.1
name: windows-init
@@ -4030,7 +4024,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -4045,7 +4039,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
@@ -4058,25 +4052,25 @@ steps:
depends_on:
- clone-enterprise
environment: {}
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: init-enterprise
- commands:
- make gen-go
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- yarn install --immutable
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -4086,14 +4080,14 @@ steps:
- CODEGEN_VERIFY=1 make gen-cue
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition enterprise --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- gen-version
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --edition enterprise --build-id ${DRONE_BUILD_NUMBER}
@@ -4102,7 +4096,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend
- commands:
- ./bin/grabpl build-frontend-packages --jobs 8 --edition enterprise --build-id
@@ -4112,7 +4106,7 @@ steps:
- yarn-install
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-frontend-packages
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition enterprise
@@ -4122,7 +4116,7 @@ steps:
environment:
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-plugins
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition enterprise2 --build-id ${DRONE_BUILD_NUMBER}
@@ -4130,7 +4124,7 @@ steps:
depends_on:
- gen-version
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-backend-enterprise2
- commands:
- ./bin/grabpl package --jobs 8 --edition enterprise --build-id ${DRONE_BUILD_NUMBER}
@@ -4150,14 +4144,14 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: package
- commands:
- ls dist/*.tar.gz*
- cp dist/*.tar.gz* packaging/docker/
depends_on:
- package
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition enterprise --shouldSave
@@ -4195,7 +4189,7 @@ steps:
ARCH: linux-amd64
PORT: 3001
RUNDIR: scripts/grafana-server/tmp-grafana-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -4273,7 +4267,7 @@ steps:
- build-frontend-packages
environment:
NODE_OPTIONS: --max_old_space_size=4096
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: build-storybook
- commands:
- ./bin/grabpl upload-cdn --edition enterprise
@@ -4284,7 +4278,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-cdn-assets
when:
repo:
@@ -4298,7 +4292,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-packages
when:
repo:
@@ -4321,7 +4315,7 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: package-enterprise2
- commands:
- ./bin/grabpl upload-cdn --edition enterprise2
@@ -4332,7 +4326,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-cdn-assets-enterprise2
- commands:
- ./bin/grabpl upload-packages --edition enterprise2
@@ -4343,7 +4337,7 @@ steps:
from_secret: gcp_key
PRERELEASE_BUCKET:
from_secret: prerelease_bucket
- image: grafana/grafana-ci-deploy:1.3.1
+ image: grafana/grafana-ci-deploy:1.3.3
name: upload-packages-enterprise2
trigger:
ref:
@@ -4376,7 +4370,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -4391,7 +4385,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
@@ -4404,25 +4398,25 @@ steps:
depends_on:
- clone-enterprise
environment: {}
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: init-enterprise
- commands:
- make gen-go
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- yarn install --immutable
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: yarn-install
- commands:
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: gen-version
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -4432,7 +4426,7 @@ steps:
- CODEGEN_VERIFY=1 make gen-cue
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- |-
@@ -4444,7 +4438,7 @@ steps:
wan" > words_to_ignore.txt
- codespell -I words_to_ignore.txt docs/
- rm words_to_ignore.txt
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: codespell
- commands:
- make lint-go
@@ -4452,7 +4446,7 @@ steps:
- wire-install
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-backend
- commands:
- yarn run prettier:check
@@ -4463,19 +4457,19 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-frontend
- commands:
- go test -short -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend
- commands:
- go test -run Integration -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend-integration
- commands:
- yarn run ci:test-frontend
@@ -4483,7 +4477,7 @@ steps:
- yarn-install
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-frontend
- commands:
- make lint-go
@@ -4491,13 +4485,13 @@ steps:
- wire-install
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: lint-backend-enterprise2
- commands:
- go test -tags=pro -covermode=atomic -timeout=30m ./pkg/...
depends_on:
- wire-install
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: test-backend-enterprise2
trigger:
ref:
@@ -4550,7 +4544,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -4565,7 +4559,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
@@ -4578,7 +4572,7 @@ steps:
depends_on:
- clone-enterprise
environment: {}
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: init-enterprise
- commands:
- '# It is required that code generated from Thema/CUE be committed and in sync
@@ -4588,13 +4582,13 @@ steps:
- CODEGEN_VERIFY=1 make gen-cue
depends_on:
- init-enterprise
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: verify-gen-cue
- commands:
- make gen-go
depends_on:
- verify-gen-cue
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: wire-install
- commands:
- apt-get update
@@ -4610,7 +4604,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: postgres-integration-tests
- commands:
- apt-get update
@@ -4626,7 +4620,7 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: mysql-integration-tests
- commands:
- dockerize -wait tcp://redis:6379/0 -timeout 120s
@@ -4635,7 +4629,7 @@ steps:
- wire-install
environment:
REDIS_URL: redis://redis:6379/0
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: redis-integration-tests
- commands:
- dockerize -wait tcp://memcached:11211 -timeout 120s
@@ -4644,7 +4638,7 @@ steps:
- wire-install
environment:
MEMCACHED_HOSTS: memcached:11211
- image: grafana/build-container:1.5.7
+ image: grafana/build-container:1.5.8
name: memcached-integration-tests
trigger:
ref:
@@ -4683,7 +4677,7 @@ steps:
name: identify-runner
- commands:
- $$ProgressPreference = "SilentlyContinue"
- - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.52/windows/grabpl.exe
+ - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.54/windows/grabpl.exe
-OutFile grabpl.exe
- git clone "https://$$env:GITHUB_TOKEN@github.com/grafana/grafana-enterprise.git"
- cd grafana-enterprise
@@ -4880,6 +4874,6 @@ kind: secret
name: gcp_upload_artifacts_key
---
kind: signature
-hmac: 55383abbbc205824d35aa689a0e00f374e74520d77dc387e354b063e4ade0869
+hmac: fdbc2724cf738ea9a2cd2be46f70d13928c96cc29179a79b7108650af40740ff
...
diff --git a/.github/commands.json b/.github/commands.json
index 5543c5fb2f3..5357ba7c4f6 100644
--- a/.github/commands.json
+++ b/.github/commands.json
@@ -138,20 +138,12 @@
"url":"https://github.com/orgs/grafana/projects/112"
}
},
- {
- "type":"label",
- "name":"datasource/OpenSearch",
- "action":"addToProject",
- "addToProject":{
- "url":"https://github.com/orgs/grafana/projects/110"
- }
- },
{
"type":"label",
"name":"datasource/Loki",
"action":"addToProject",
"addToProject":{
- "url":"https://github.com/orgs/grafana/projects/110"
+ "url":"https://github.com/orgs/grafana/projects/203"
}
},
{
@@ -167,7 +159,7 @@
"name":"datasource/Elasticsearch",
"action":"addToProject",
"addToProject":{
- "url":"https://github.com/orgs/grafana/projects/110"
+ "url":"https://github.com/orgs/grafana/projects/203"
}
},
{
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 456faeb7272..4e299753e91 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,32 @@
+
+
+# 9.0.4 (2022-07-20)
+
+### Features and enhancements
+
+- **Browse/Search:** Make browser back work properly when visiting Browse or search. [#52271](https://github.com/grafana/grafana/pull/52271), [@torkelo](https://github.com/torkelo)
+- **Logs:** Improve getLogRowContext API. [#52130](https://github.com/grafana/grafana/pull/52130), [@gabor](https://github.com/gabor)
+- **Loki:** Improve handling of empty responses. [#52397](https://github.com/grafana/grafana/pull/52397), [@gabor](https://github.com/gabor)
+- **Plugins:** Always validate root URL if specified in signature manfiest. [#52332](https://github.com/grafana/grafana/pull/52332), [@wbrowne](https://github.com/wbrowne)
+- **Preferences:** Get home dashboard from teams. [#52225](https://github.com/grafana/grafana/pull/52225), [@sakjur](https://github.com/sakjur)
+- **SQLStore:** Support Upserting multiple rows. [#52228](https://github.com/grafana/grafana/pull/52228), [@joeblubaugh](https://github.com/joeblubaugh)
+- **Traces:** Add more template variables in Tempo & Zipkin. [#52306](https://github.com/grafana/grafana/pull/52306), [@joey-grafana](https://github.com/joey-grafana)
+- **Traces:** Remove serviceMap feature flag. [#52375](https://github.com/grafana/grafana/pull/52375), [@joey-grafana](https://github.com/joey-grafana)
+
+### Bug fixes
+
+- **Access Control:** Fix missing folder permissions. [#52410](https://github.com/grafana/grafana/pull/52410), [@IevaVasiljeva](https://github.com/IevaVasiljeva)
+- **Access control:** Fix org user removal for OSS users. [#52473](https://github.com/grafana/grafana/pull/52473), [@IevaVasiljeva](https://github.com/IevaVasiljeva)
+- **Alerting:** Fix Slack notification preview. [#50230](https://github.com/grafana/grafana/pull/50230), [@ekrucio](https://github.com/ekrucio)
+- **Alerting:** Fix Slack push notifications. [#52391](https://github.com/grafana/grafana/pull/52391), [@grobinson-grafana](https://github.com/grobinson-grafana)
+- **Alerting:** Fixes slack push notifications. [#50267](https://github.com/grafana/grafana/pull/50267), [@jgillick](https://github.com/jgillick)
+- **Alerting:** Preserve new-lines from custom email templates in rendered email. [#52253](https://github.com/grafana/grafana/pull/52253), [@alexweav](https://github.com/alexweav)
+- **Insights:** Fix dashboard and data source insights pages. (Enterprise)
+- **Log:** Fix text logging for unsupported types. [#51306](https://github.com/grafana/grafana/pull/51306), [@papagian](https://github.com/papagian)
+- **Loki:** Fix `show context` not working in some occasions. [#52458](https://github.com/grafana/grafana/pull/52458), [@svennergr](https://github.com/svennergr)
+- **Loki:** Fix incorrect TopK value type in query builder. [#52226](https://github.com/grafana/grafana/pull/52226), [@ivanahuckova](https://github.com/ivanahuckova)
+
+
# 9.0.3 (2022-07-14)
diff --git a/Dockerfile b/Dockerfile
index 3bee9879f2c..08a7d6f01ad 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -20,7 +20,7 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
-FROM golang:1.17.11-alpine3.15 as go-builder
+FROM golang:1.17.12-alpine3.15 as go-builder
RUN apk add --no-cache gcc g++ make
diff --git a/Dockerfile.ubuntu b/Dockerfile.ubuntu
index fe72f04a8c2..48ef4cc3920 100644
--- a/Dockerfile.ubuntu
+++ b/Dockerfile.ubuntu
@@ -21,7 +21,7 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
-FROM golang:1.17.11 AS go-builder
+FROM golang:1.17.12 AS go-builder
WORKDIR /src/grafana
diff --git a/Makefile b/Makefile
index 262dc3e3458..9b6f63cada1 100644
--- a/Makefile
+++ b/Makefile
@@ -39,8 +39,9 @@ NGALERT_SPEC_TARGET = pkg/services/ngalert/api/tooling/api.json
$(NGALERT_SPEC_TARGET):
+$(MAKE) -C pkg/services/ngalert/api/tooling api.json
-$(MERGED_SPEC_TARGET): $(SPEC_TARGET) $(NGALERT_SPEC_TARGET) ## Merge generated and ngalert API specs
- go run pkg/api/docs/merge/merge_specs.go -o=$(MERGED_SPEC_TARGET) $(<) $(NGALERT_SPEC_TARGET)
+$(MERGED_SPEC_TARGET): $(SPEC_TARGET) $(NGALERT_SPEC_TARGET) $(SWAGGER) ## Merge generated and ngalert API specs
+ # known conflicts DsPermissionType, AddApiKeyCommand, Json, Duration (identical models referenced by both specs)
+ $(SWAGGER) mixin $(SPEC_TARGET) $(NGALERT_SPEC_TARGET) --ignore-conflicts -o $(MERGED_SPEC_TARGET)
--swagger-api-spec: $(API_DEFINITION_FILES) $(SWAGGER) ## Generate API Swagger specification
SWAGGER_GENERATE_EXTENSION=false $(SWAGGER) generate spec -m -w pkg/server -o public/api-spec.json \
@@ -94,9 +95,30 @@ run-frontend: deps-js ## Fetch js dependencies and watch frontend for rebuild
##@ Testing
-test-go: ## Run tests for backend.
- @echo "test backend"
- $(GO) test -v ./pkg/...
+.PHONY: test-go
+test-go: test-go-unit test-go-integration
+
+.PHONY: test-go-unit
+test-go-unit: ## Run unit tests for backend with flags.
+ @echo "test backend unit tests"
+ $(GO) test -short -covermode=atomic -timeout=30m ./pkg/...
+
+.PHONY: test-go-integration
+test-go-integration: ## Run integration tests for backend with flags.
+ @echo "test backend integration tests"
+ $(GO) test -run Integration -covermode=atomic -timeout=30m ./pkg/...
+
+.PHONY: test-go-integration-postgres
+test-go-integration-postgres: devenv-postgres ## Run integration tests for postgres backend with flags.
+ @echo "test backend integration postgres tests"
+ $(GO) clean -testcache
+ $(GO) list './pkg/...' | xargs -I {} sh -c 'GRAFANA_TEST_DB=postgres go test -run Integration -covermode=atomic -timeout=30m {}'
+
+.PHONY: test-go-integration-mysql
+test-go-integration-mysql: devenv-mysql ## Run integration tests for mysql backend with flags.
+ @echo "test backend integration mysql tests"
+ $(GO) clean -testcache
+ $(GO) list './pkg/...' | xargs -I {} sh -c 'GRAFANA_TEST_DB=mysql go test -run Integration -covermode=atomic -timeout=30m {}'
test-js: ## Run tests for frontend.
@echo "test frontend"
@@ -153,6 +175,14 @@ devenv-down: ## Stop optional services.
test -f docker-compose.yaml && \
docker-compose down || exit 0;
+devenv-postgres:
+ @cd devenv; \
+ sources=postgres_tests
+
+devenv-mysql:
+ @cd devenv; \
+ sources=mysql_tests
+
##@ Helpers
# We separate the protobuf generation because most development tasks on
diff --git a/conf/defaults.ini b/conf/defaults.ini
index 02093ab900c..e06be50e952 100644
--- a/conf/defaults.ini
+++ b/conf/defaults.ini
@@ -467,6 +467,8 @@ api_url = https://api.github.com/user
allowed_domains =
team_ids =
allowed_organizations =
+role_attribute_path =
+role_attribute_strict = false
#################################### GitLab Auth #########################
[auth.gitlab]
@@ -806,6 +808,9 @@ global_session = -1
# global limit of alerts
global_alert_rule = -1
+# global limit of files uploaded to the SQL DB
+global_file = 1000
+
#################################### Unified Alerting ####################
[unified_alerting]
# Enable the Unified Alerting sub-system and interface. When enabled we'll migrate all of your alert rules and notification channels to the new system. New alert rules will be created and your notification channels will be converted into an Alertmanager configuration. Previous data is preserved to enable backwards compatibility but new data is removed when switching. When this configuration section and flag are not defined, the state is defined at runtime. See the documentation for more details.
diff --git a/contribute/style-guides/frontend.md b/contribute/style-guides/frontend.md
index 6794894f252..c4691401ad7 100644
--- a/contribute/style-guides/frontend.md
+++ b/contribute/style-guides/frontend.md
@@ -351,7 +351,7 @@ static defaultProps: Partial
bPxRfiCYEXAMPLEKEY | _Read from runtime environment_ |
+| `aws_region` | AWS instance region | us-east-1 | _Read from runtime environment_ |
+| `kms_key_id` | AWS Key Management System access key, used for secret encryption | 82065da4-3e2b-4372
-87bf-664d1e488244 | _none_ |
+| `secret_name_prefix` | String prepended to each AWS Secret Manager secret name. Use this to avoid secret name conflicts in large organizations running multiple Grafana instances. | metrics-team | _none_ |
+| `secret_description` | Description applied to every secret in AWS Secrets Manager. Use only for bookkeeping purposes. | Metrics team datasource | _none_ |
+
+### Sample configuration
+
+Here is a sample **config.ini** to configure the plugin and [enable migration](#migrate-your-secrets-to-the-plugin).
+
+```ini
+[secrets]
+use_plugin = true
+migrate_to_plugin = true
+
+[plugin.grafana-aws-secretsmanager]
+aws_access_key_id = AKIAIOSFODNN7EXAMPLE
+aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
+aws_region = us-east-1
+kms_key_id = 82065da4-3e2b-4372-87bf-664d1e488244
+secret_name_prefix = my-org
+secret_description = My description
+```
+
+## Migrate your secrets to the plugin
+
+You can configure Grafana to migrate your existing secrets from Grafana to the plugin on startup. This migration is a one-time blocking operation that runs on Grafana startup, meaning Grafana will not be usable until migration is complete.
+
+> **Note:** The speed of this migration is contingent on the number of secrets and system performance, and can run at a rate as low as two secrets per second.
+
+Once migration to the plugin has completed, the plugin must remain installed for Grafana to start unless backward compatibility is enabled. If the plugin is uninstalled unexpectedly, or if it fails to start for any reason, Grafana will also fail to start.
+
+> **Note:** Because we have not yet implemented migrations from the plugin back to Grafana's database, we strongly recommend keeping backward compatibility enabled, as is the default.
+
+### Initiate the migration
+
+To initiate secret migration from Grafana to the plugin, enable the `migrate_to_plugin` setting in the `secrets` section of the Grafana **custom.ini** file:
+
+```ini
+[secrets]
+migrate_to_plugin = true
+```
+
+The plugin migrates secrets individually. If backward compatibility is disabled, it also deletes them from the Grafana database.
+
+## Backward compatibility
+
+After the plugin is installed and enabled, secrets are stored by default in both AWS Secrets Manager **and** in a legacy location in the Grafana database.
+
+To stop storing secrets in the legacy table while the secrets plugin is enabled, disable backward compatibility by adding a [feature toggle]({{< relref "../../configure-grafana/#feature_toggles" >}}) called `disableSecretsCompatibility`:
+
+```ini
+[feature_toggles]
+enabled = disableSecretsCompatibility
+```
+
+While secrets will not be read from this legacy table while the plugin is active, backward compatibility allows you to uninstall the secrets plugin without losing access to all of your secrets.
+
+> **Note:** We have not yet implemented migrations from the plugin back to Grafana's database. Disabling backward compatibility and uninstalling the plugin can cause Grafana to fail to start. We strongly recommend keeping backward compatibility enabled, as is the default.
+
+## Limitations
+
+If your AWS Secrets Manager instance uses secret rotation, the backward compatibility feature will not be a sufficient fallback for plugin errors, because legacy secrets will not be kept up to date with AWS Secrets Manager automatically. If you plan to implement secret rotation, we recommend that you avoid installing this plugin until we implement migration from the plugin back to Grafana's database.
diff --git a/docs/sources/setup-grafana/upgrade-grafana.md b/docs/sources/setup-grafana/upgrade-grafana.md
index 56c5d583696..0f3cad22cf9 100644
--- a/docs/sources/setup-grafana/upgrade-grafana.md
+++ b/docs/sources/setup-grafana/upgrade-grafana.md
@@ -17,7 +17,7 @@ weight: 500
We recommend that you upgrade Grafana often to stay up to date with the latest fixes and enhancements.
In order to make this a reality, Grafana upgrades are backward compatible and the upgrade process is simple and quick.
-Upgrading is generally safe (between many minor and one major version) and dashboards and graphs will look the same. There may be minor breaking changes in some edge cases, which are outlined in the [Release Notes](https://community.grafana.com/c/releases) and [Changelog](https://github.com/grafana/grafana/blob/main/CHANGELOG.md)
+Upgrading is generally safe (between many minor and one major version) and dashboards and graphs will look the same. There may be minor breaking changes in some edge cases, which are outlined in the [Release Notes](https://grafana.com/docs/grafana/latest/release-notes/) and [Changelog](https://github.com/grafana/grafana/blob/main/CHANGELOG.md)
## Backup
@@ -246,7 +246,7 @@ change the `[security]` setting `cookie_secure` to `true` and use HTTPS when `co
### PhantomJS removed
-PhantomJS was deprecated in [Grafana v6.4]({{< relref "../whatsnew/whats-new-in-v6-4/#phantomjs-deprecation" >}}) and starting from Grafana v7.0.0, all PhantomJS support has been removed. This means that Grafana no longer ships with a built-in image renderer, and we advise you to install the [Grafana Image Renderer plugin](https://grafana.com/grafana/plugins/grafana-image-renderer).
+PhantomJS was deprecated in Grafana v6.4 and starting from Grafana v7.0.0, all PhantomJS support has been removed. This means that Grafana no longer ships with a built-in image renderer, and we advise you to install the [Grafana Image Renderer plugin](https://grafana.com/grafana/plugins/grafana-image-renderer).
### Dashboard minimum refresh interval enforced
@@ -374,7 +374,7 @@ ORDER BY time
There are two possible workarounds to resolve this problem:
1. In Grafana v8.0.3, use an alias of the string column selected as `metric`. for example, `hostname as metric`.
-2. Use the [Standard field definitions' display name]({{< relref "../panels/standard-field-definitions/#display-name" >}}) to format the alias. For the preceding example query, you would use `${__field.labels.hostname}` option.
+2. Use the [Standard field definitions' display name]({{< relref "../panels/configure-standard-options/#display-name" >}}) to format the alias. For the preceding example query, you would use `${__field.labels.hostname}` option.
For more information, refer to the our relational databases documentation of [Postgres]({{< relref "../datasources/postgres/#time-series-queries" >}}), [MySQL]({{< relref "../datasources/mysql/#time-series-queries" >}}), [Microsoft SQL Server]({{< relref "../datasources/mssql/#time-series-queries" >}}).
diff --git a/docs/sources/visualizations/bar-chart.md b/docs/sources/visualizations/bar-chart.md
index 0dd277840b3..b03d53d07b8 100644
--- a/docs/sources/visualizations/bar-chart.md
+++ b/docs/sources/visualizations/bar-chart.md
@@ -157,4 +157,4 @@ Set a **Soft min** or **soft max** option for better control of Y-axis limits. B
**Soft min** and **soft max** settings can prevent blips from turning into mountains when the data is mostly flat, and hard min or max derived from standard min and max field options can prevent intermittent spikes from flattening useful detail by clipping the spikes past a defined point.
-You can set standard min/max options to define hard limits of the Y-axis. For more information, refer to [Standard field definitions]({{< relref "../panels/standard-field-definitions/#max" >}}).
+You can set standard min/max options to define hard limits of the Y-axis. For more information, refer to [Standard options definitions]({{< relref "../panels/configure-standard-options/#max" >}}).
diff --git a/docs/sources/visualizations/histogram.md b/docs/sources/visualizations/histogram.md
index ae2c36d49d2..071b23fccca 100644
--- a/docs/sources/visualizations/histogram.md
+++ b/docs/sources/visualizations/histogram.md
@@ -50,7 +50,7 @@ Controls the fill opacity bars.
### Gradient mode
-Set the mode of the gradient fill. Fill gradient is based on the line color. To change the color, use the standard [color scheme]({{< relref "../panels/working-with-panels/apply-color-to-series/" >}}) field option.
+Set the mode of the gradient fill. Fill gradient is based on the line color. To change the color, use the standard [color scheme]({{< relref "../panels/configure-standard-options/#color-scheme" >}}) field option.
Gradient display is influenced by the **Fill opacity** setting.
diff --git a/docs/sources/visualizations/state-timeline.md b/docs/sources/visualizations/state-timeline.md
index 31c76b22099..b6295cf0cf4 100644
--- a/docs/sources/visualizations/state-timeline.md
+++ b/docs/sources/visualizations/state-timeline.md
@@ -60,6 +60,6 @@ The panel can be used with time series data as well. In this case, the threshold
## Legend options
-When the legend option is enabled it can show either the value mappings or the threshold brackets. To show the value mappings in the legend, it's important that the `Color scheme` as referenced in [Apply color to a series and fields]({{< relref "../panels/working-with-panels/apply-color-to-series/" >}}) is set to `Single color` or `Classic palette`. To see the threshold brackets in the legend set the `Color scheme` to `From thresholds`.
+When the legend option is enabled it can show either the value mappings or the threshold brackets. To show the value mappings in the legend, it's important that the `Color scheme` as referenced in [Color scheme]({{< relref "../panels/configure-standard-options/#color-scheme" >}}) is set to `Single color` or `Classic palette`. To see the threshold brackets in the legend set the `Color scheme` to `From thresholds`.
{{< docs/shared "visualizations/legend-mode.md" >}}
diff --git a/docs/sources/visualizations/status-history.md b/docs/sources/visualizations/status-history.md
index da78aa1a420..0a9429de24d 100644
--- a/docs/sources/visualizations/status-history.md
+++ b/docs/sources/visualizations/status-history.md
@@ -57,6 +57,6 @@ use gradient color schemes to color values.
## Legend options
-When the legend option is enabled it can show either the value mappings or the threshold brackets. To show the value mappings in the legend, it's important that the `Color scheme` as referenced in [Apply color to a series and fields]({{< relref "../panels/working-with-panels/apply-color-to-series/" >}}) is set to `Single color` or `Classic palette`. To see the threshold brackets in the legend set the `Color scheme` to `From thresholds`.
+When the legend option is enabled it can show either the value mappings or the threshold brackets. To show the value mappings in the legend, it's important that the `Color scheme` as referenced in [Color scheme]({{< relref "../panels/configure-standard-options/#color-scheme" >}}) is set to `Single color` or `Classic palette`. To see the threshold brackets in the legend set the `Color scheme` to `From thresholds`.
{{< docs/shared "visualizations/legend-mode.md" >}}
diff --git a/docs/sources/visualizations/time-series/change-axis-display.md b/docs/sources/visualizations/time-series/change-axis-display.md
index cb87d3c2154..8f31bc2c191 100644
--- a/docs/sources/visualizations/time-series/change-axis-display.md
+++ b/docs/sources/visualizations/time-series/change-axis-display.md
@@ -70,7 +70,7 @@ Set a **Soft min** or **soft max** option for better control of Y-axis limits. B
**Soft min** and **soft max** settings can prevent blips from turning into mountains when the data is mostly flat, and hard min or max derived from standard min and max field options can prevent intermittent spikes from flattening useful detail by clipping the spikes past a defined point.
-You can set standard min/max options to define hard limits of the Y-axis. For more information, refer to [Standard field definitions]({{< relref "../../panels/standard-field-definitions/#max" >}}).
+You can set standard min/max options to define hard limits of the Y-axis. For more information, refer to [Configure standard options]({{< relref "../../panels/configure-standard-options/#max" >}}).

diff --git a/docs/sources/visualizations/time-series/graph-color-scheme.md b/docs/sources/visualizations/time-series/graph-color-scheme.md
index 78692b8005f..1dc9cb688fa 100644
--- a/docs/sources/visualizations/time-series/graph-color-scheme.md
+++ b/docs/sources/visualizations/time-series/graph-color-scheme.md
@@ -16,7 +16,7 @@ weight: 400
# Graph and color schemes
-To set the graph and color schemes, refer to [Apply color to series and fields]({{< relref "../../panels/working-with-panels/apply-color-to-series/" >}}).
+To set the graph and color schemes, refer to [Color scheme]({{< relref "../../panels/configure-standard-options/#color-scheme" >}}).
## Classic palette
diff --git a/docs/sources/visualizations/time-series/graph-time-series-as-bars.md b/docs/sources/visualizations/time-series/graph-time-series-as-bars.md
index aeb0ea82af0..c7afbba7cdc 100644
--- a/docs/sources/visualizations/time-series/graph-time-series-as-bars.md
+++ b/docs/sources/visualizations/time-series/graph-time-series-as-bars.md
@@ -83,7 +83,7 @@ Fill opacity set to 95:
### Gradient mode
-Set the mode of the gradient fill. Fill gradient is based on the line color. To change the color, use the standard color scheme field option. For more information, refer to [Apply color to series and fields]({{< relref "../../panels/working-with-panels/apply-color-to-series/" >}}).
+Set the mode of the gradient fill. Fill gradient is based on the line color. To change the color, use the standard color scheme field option. For more information, refer to [Color scheme]({{< relref "../../panels/configure-standard-options/#color-scheme" >}}).
Gradient appearance is influenced by the **Fill opacity** setting. In the screenshots below, **Fill opacity** is set to 50.
@@ -107,7 +107,7 @@ Gradient color is generated based on the hue of the line color.
#### Scheme
-In this mode the whole bar will use a color gradient defined by your Color scheme. For more information, refer to [Apply color to series and fields]({{< relref "../../panels/working-with-panels/apply-color-to-series/" >}}). There is more information on this option in [Graph and color scheme]({{< relref "graph-color-scheme/" >}}).
+In this mode the whole bar will use a color gradient defined by your color scheme. For more information, refer to [Color scheme]({{< relref "../../panels/configure-standard-options/#color-scheme" >}}). There is more information on this option in [Graph and color scheme]({{< relref "graph-color-scheme/" >}}).
{{< figure src="/static/img/docs/time-series-panel/gradient_mode_scheme_bars.png" max-width="1200px" caption="Gradient color scheme mode" >}}
diff --git a/docs/sources/visualizations/time-series/graph-time-series-as-lines.md b/docs/sources/visualizations/time-series/graph-time-series-as-lines.md
index d35f40b3bb2..c7e65b37093 100644
--- a/docs/sources/visualizations/time-series/graph-time-series-as-lines.md
+++ b/docs/sources/visualizations/time-series/graph-time-series-as-lines.md
@@ -89,7 +89,7 @@ Fill opacity set to 95:
### Gradient mode
-Set the mode of the gradient fill. Fill gradient is based on the line color. To change the color, use the standard color scheme field option. For more information, refer to [Apply color to series and fields]({{< relref "../../panels/working-with-panels/apply-color-to-series/" >}}) .
+Set the mode of the gradient fill. Fill gradient is based on the line color. To change the color, use the standard color scheme field option. For more information, refer to [Color scheme]({{< relref "../../panels/configure-standard-options/#color-scheme" >}}).
Gradient appearance is influenced by the **Fill opacity** setting. In the screenshots below, **Fill opacity** is set to 50.
@@ -113,13 +113,13 @@ Gradient color is generated based on the hue of the line color.
#### Scheme
-In this mode the whole line will use a color gradient defined by your Color scheme. For more information, refer to [Apply color to series and fields]({{< relref "../../panels/working-with-panels/apply-color-to-series/" >}}). There is more information on this option in [Graph and color scheme]({{< relref "graph-color-scheme/" >}}).
+In this mode the whole line will use a color gradient defined by your Color scheme. For more information, refer to [Color scheme]({{< relref "../../panels/configure-standard-options/#color-scheme" >}}). There is more information on this option in [Graph and color scheme]({{< relref "graph-color-scheme/" >}}).
{{< figure src="/static/img/docs/time-series-panel/gradient_mode_scheme_line.png" max-width="1200px" caption="Gradient mode scheme" >}}
### Line style
-Set the style of the line. To change the color, use the standard color scheme field option. For more information, refer to [Apply color to series and fields]({{< relref "../../panels/working-with-panels/apply-color-to-series/" >}})
+Set the style of the line. To change the color, use the standard color scheme field option. For more information, refer to [Color scheme]({{< relref "../../panels/configure-standard-options/#color-scheme" >}}).
Line style appearance is influenced by the **Line width** and **Fill opacity** settings. In the screenshots below, **Line width** is set to 3 and **Fill opacity** is set to 20.
diff --git a/docs/sources/whatsnew/_index.md b/docs/sources/whatsnew/_index.md
index 37a8c807c8e..34970d95552 100644
--- a/docs/sources/whatsnew/_index.md
+++ b/docs/sources/whatsnew/_index.md
@@ -2,11 +2,63 @@
aliases:
- /docs/grafana/latest/guides/
- /docs/grafana/latest/whatsnew/
+ - /docs/grafana/latest/guides/whats-new-in-v2/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v2-0/
+ - /docs/grafana/latest/guides/whats-new-in-v2-1/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v2-1/
+ - /docs/grafana/latest/guides/whats-new-in-v2-5/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v2-5/
+ - /docs/grafana/latest/guides/whats-new-in-v2-6/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v2-6/
+ - /docs/grafana/latest/guides/whats-new-in-v3/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v3-0/
+ - /docs/grafana/latest/guides/whats-new-in-v3-1/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v3-1/
+ - /docs/grafana/latest/guides/whats-new-in-v4/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v4-0/
+ - /docs/grafana/latest/guides/whats-new-in-v4-1/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v4-1/
+ - /docs/grafana/latest/guides/whats-new-in-v4-2/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v4-2/
+ - /docs/grafana/latest/guides/whats-new-in-v4-3/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v4-3/
+ - /docs/grafana/latest/guides/whats-new-in-v4-4/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v4-4/
+ - /docs/grafana/latest/guides/whats-new-in-v4-5/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v4-5/
+ - /docs/grafana/latest/guides/whats-new-in-v4-6/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v4-6/
+ - /docs/grafana/latest/guides/whats-new-in-v5/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v5-0/
+ - /docs/grafana/latest/guides/whats-new-in-v5-1/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v5-1/
+ - /docs/grafana/latest/guides/whats-new-in-v5-2/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v5-2/
+ - /docs/grafana/latest/guides/whats-new-in-v5-3/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v5-3/
+ - /docs/grafana/latest/guides/whats-new-in-v5-4/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v5-4/
+ - /docs/grafana/latest/guides/whats-new-in-v6-0/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v6-0/
+ - /docs/grafana/latest/guides/whats-new-in-v6-1/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v6-1/
+ - /docs/grafana/latest/guides/whats-new-in-v6-2/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v6-2/
+ - /docs/grafana/latest/guides/whats-new-in-v6-3/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v6-3/
+ - /docs/grafana/latest/guides/whats-new-in-v6-4/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v6-4/
+ - /docs/grafana/latest/guides/whats-new-in-v6-5/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v6-5/
+ - /docs/grafana/latest/guides/whats-new-in-v6-6/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v6-6/
+ - /docs/grafana/latest/guides/whats-new-in-v6-7/
+ - /docs/grafana/latest/whatsnew/whats-new-in-v6-7/
title: What's new
weight: 1
---
-# What's new Grafana
+# What's new in Grafana
Grafana is changing all the time. For release highlights checkout links below, if you want a complete list of every change, as well
as info on deprecations, breaking changes and plugin development read the [release notes]({{< relref "../release-notes/" >}}).
@@ -32,22 +84,3 @@ as info on deprecations, breaking changes and plugin development read the [relea
- [What's new in 7.2]({{< relref "whats-new-in-v7-2/" >}})
- [What's new in 7.1]({{< relref "whats-new-in-v7-1/" >}})
- [What's new in 7.0]({{< relref "whats-new-in-v7-0/" >}})
-
-## Grafana 6
-
-- [What's new in 6.7]({{< relref "whats-new-in-v6-7/" >}})
-- [What's new in 6.6]({{< relref "whats-new-in-v6-6/" >}})
-- [What's new in 6.5]({{< relref "whats-new-in-v6-5/" >}})
-- [What's new in 6.4]({{< relref "whats-new-in-v6-4/" >}})
-- [What's new in 6.3]({{< relref "whats-new-in-v6-3/" >}})
-- [What's new in 6.2]({{< relref "whats-new-in-v6-2/" >}})
-- [What's new in 6.1]({{< relref "whats-new-in-v6-1/" >}})
-- [What's new in 6.0]({{< relref "whats-new-in-v6-0/" >}})
-
-## Grafana 5
-
-- [What's new in 5.4]({{< relref "whats-new-in-v5-4/" >}})
-- [What's new in 5.3]({{< relref "whats-new-in-v5-3/" >}})
-- [What's new in 5.2]({{< relref "whats-new-in-v5-2/" >}})
-- [What's new in 5.1]({{< relref "whats-new-in-v5-1/" >}})
-- [What's new in 5.0]({{< relref "whats-new-in-v5-0/" >}})
diff --git a/docs/sources/whatsnew/whats-new-in-v2-0.md b/docs/sources/whatsnew/whats-new-in-v2-0.md
deleted file mode 100644
index ad6dab1fc8c..00000000000
--- a/docs/sources/whatsnew/whats-new-in-v2-0.md
+++ /dev/null
@@ -1,185 +0,0 @@
----
-_build:
- list: false
-aliases:
- - /docs/grafana/latest/guides/whats-new-in-v2/
- - /docs/grafana/latest/whatsnew/whats-new-in-v2-0/
-description: Feature and improvement highlights for Grafana v2.0
-keywords:
- - grafana
- - new
- - documentation
- - '2.0'
- - release notes
-title: What's new in Grafana v2.0
-weight: -1
----
-
-# What's new in Grafana v2.0
-
-Grafana 2.0 represents months of work by the Grafana team and the community. We are pleased to be able to
-release the Grafana 2.0 beta. This is a guide that describes some of changes and new features that can
-be found in Grafana V2.0.
-
-If you are interested in how to migrate from Grafana V1.x to V2.0, please read our [Migration Guide](../installation/migrating_to2.md)
-
-## New backend server
-
-Grafana now ships with its own required backend server. Also completely open-source, it's written in Go and has a full HTTP API.
-
-In addition to new features, the backend server makes it much easier to set up and enjoy Grafana. Grafana 2.0 now ships as cross platform binaries with no dependencies. Authentication is built in, and Grafana is now capable of proxying connections to Data Sources. There are no longer any CORS (Cross Origin Resource Sharing) issues requiring messy workarounds. Elasticsearch is no longer required just to store dashboards.
-
-## User and Organization permissions
-
-All Dashboards and Data Sources are linked to an Organization (not to a User). Users are linked to
-Organizations via a role. That role can be:
-
-- `Viewer`: Can only view dashboards, not save / create them.
-- `Editor`: Can view, update and create dashboards.
-- `Admin`: Everything an Editor can plus edit and add data sources and organization users.
-
-> **Note:** A `Viewer` can still view all metrics exposed through a data source, not only
-> the metrics used in already existing dashboards. That is because there are not
-> per series permissions in Graphite, InfluxDB or OpenTSDB.
-
-There are currently no permissions on individual dashboards.
-
-Read more about Grafana's new user model on the [Admin section](../reference/admin/)
-
-## Dashboard Snapshot sharing
-
-A Dashboard Snapshot is an easy way to create and share a URL for a stripped down, point-in-time version of any Dashboard.
-You can give this URL to anyone or everyone, and they can view the Snapshot even if they're not a User of your Grafana instance.
-
-You can set an expiration time for any Snapshots you create. When you create a Snapshot, we strip sensitive data, like
-panel metric queries, annotation and template queries and panel links. The data points displayed on
-screen for that specific time period in your Dashboard is saved in the JSON of the Snapshot itself.
-
-Sharing a Snapshot is similar to sharing a link to a screenshot of your dashboard, only way better (they'll look great at any screen resolution, you can hover over series,
-even zoom in). Also they are fast to load as they aren't actually connected to any live Data Sources in any way.
-
-They're a great way to communicate about a particular incident with specific people who aren't users of your Grafana instance. You can also use them to show off your dashboards over the Internet.
-
-
-
-### Publish snapshots
-
-You can publish snapshots locally or to [snapshots.raintank.io](https://snapshots.raintank.io). snapshots.raintank.io is a free service provided by [Grafana Labs](https://grafana.com) for hosting external Grafana snapshots.
-
-Either way, anyone with the link (and access to your Grafana instance for local snapshots) can view it.
-
-## Panel time overrides and timeshift
-
-In Grafana v2.x you can now override the relative time range for individual panels, causing them to be different than what is selected in the Dashboard time picker in the upper right. You can also add a time shift to individual panels. This allows you to show metrics from different time periods or days at the same time.
-
-
-
-You control these overrides in panel editor mode and the new tab `Time Range`.
-
-
-
-When you zoom or change the Dashboard time to a custom absolute time range, all panel overrides will be disabled. The panel relative time override is only active when the dashboard time is also relative. The panel timeshift override however is always active, even when the dashboard time is absolute.
-
-The `Hide time override info` option allows you to hide the override info text that is by default shown in the
-upper right of a panel when overridden time range options.
-
-Currently you can only override the dashboard time with relative time ranges, not absolute time ranges.
-
-## Panel iframe embedding
-
-You can embed a single panel on another web page or your own application using the panel share dialog.
-
-Below you should see an iframe with a graph panel (taken from a Dashboard snapshot at [snapshots.raintank.io](http://snapshots.raintank.io).
-
-Try hovering or zooming on the panel below!
-
-
-
-This feature makes it easy to include interactive visualizations from your Grafana instance anywhere you want.
-
-## New dashboard top header
-
-The top header has gotten a major streamlining in Grafana V2.0.
-
-
-
-1. `Side menubar toggle` Toggle the side menubar on or off. This allows you to focus on the data presented on the Dashboard. The side menubar provides access to features unrelated to a Dashboard such as Users, Organizations, and Data Sources.
-1. `Dashboard dropdown` The main dropdown shows you which Dashboard you are currently viewing, and allows you to easily switch to a new Dashboard. From here you can also create a new Dashboard, Import existing Dashboards, and manage the Playlist.
-1. `Star Dashboard`: Star (or un-star) the current Dashboard. Starred Dashboards will show up on your own Home Dashboard by default, and are a convenient way to mark Dashboards that you're interested in.
-1. `Share Dashboard`: Share the current dashboard by creating a link or create a static Snapshot of it. Make sure the Dashboard is saved before sharing.
-1. `Save dashboard`: Save the current Dashboard with the current name.
-1. `Settings`: Manage Dashboard settings and features such as Templating, Annotations and the name.
-
-> **Note:** In Grafana v2.0 when you change the title of a dashboard and then save it, it will no
-> longer create a new Dashboard. It will just change the name for the current Dashboard.
-> To change name and create a new Dashboard use the `Save As...` menu option
-
-### New Side menubar
-
-The new side menubar provides access to features such as User Preferences, Organizations, and Data Sources.
-
-If you have multiple Organizations, you can easily switch between them here.
-
-The side menubar will become more useful as we build out additional functionality in Grafana 2.x
-
-You can easily collapse or re-open the side menubar at any time by clicking the Grafana icon in the top left. We never want to get in the way of the data.
-
-## New search view and starring dashboards
-
-
-
-The dashboard search view has gotten a big overhaul. You can now see and filter by which dashboard you have personally starred.
-
-## Logarithmic scale
-
-The Graph panel now supports 3 logarithmic scales, `log base 10`, `log base 32`, `log base 1024`. Logarithmic y-axis scales are very useful when rendering many series of different order of magnitude on the same scale (eg.
-latency, network traffic, and storage)
-
-
-
-## Dashlist panel
-
-
-
-The dashlist is a new panel in Grafana v2.0. It allows you to show your personal starred dashboards, as well as do custom searches based on search strings or tags.
-
-dashlist is used on the new Grafana Home screen. It is included as a reference Panel and is useful to provide basic linking between Dashboards.
-
-## Data Source proxy and admin views
-
-Data sources in Grafana v2.0 are no longer defined in a config file. Instead, they are added through the UI or the HTTP API.
-
-The backend can now proxy data from Data Sources, which means that it is a lot easier to get started using Grafana with Graphite or OpenTSDB without having to spend time with CORS (Cross origin resource sharing) work-arounds.
-
-In addition, connections to Data Sources can be better controlled and secured, and authentication information no longer needs to be exposed to the browser.
-
-## Dashboard "now delay"
-
-A commonly reported problem has been graphs dipping to zero at the end, because metric data for the last interval has yet to be written to the Data Source. These graphs then "self correct" once the data comes in, but can look deceiving or alarming at times.
-
-You can avoid this problem by adding a `now delay` in `Dashboard Settings` > `Time Picker` tab. This new feature will cause Grafana to ignore the most recent data up to the set delay.
-
-
-The delay that may be necessary depends on how much latency you have in your collection pipeline.
-
-## Dashboard overwrite protection
-
-Grafana v2.0 protects Users from accidentally overwriting each others Dashboard changes. Similar protections are in place if you try to create a new Dashboard with the same name as an existing one.
-
-
-
-These protections are only the first step; we will be building out additional capabilities around dashboard versioning and management in future versions of Grafana.
-
-## User preferences
-
-If you open side menu (by clicking on the Grafana icon in the top header) you can access your Profile Page.
-
-Here you can update your user details, UI Theme, and change your password.
-
-## Server-side Panel rendering
-
-Grafana now supports server-side PNG rendering. From the Panel share dialog you now have access to a link that will render a particular Panel to a PNG image.
-
-> **Note:** This requires that your Data Source is accessible from your Grafana instance.
-
-
diff --git a/docs/sources/whatsnew/whats-new-in-v2-1.md b/docs/sources/whatsnew/whats-new-in-v2-1.md
deleted file mode 100644
index 043e4e4910b..00000000000
--- a/docs/sources/whatsnew/whats-new-in-v2-1.md
+++ /dev/null
@@ -1,155 +0,0 @@
----
-_build:
- list: false
-aliases:
- - /docs/grafana/latest/guides/whats-new-in-v2-1/
- - /docs/grafana/latest/whatsnew/whats-new-in-v2-1/
-description: Feature and improvement highlights for Grafana v2.1
-keywords:
- - grafana
- - new
- - documentation
- - '2.1'
- - release notes
-title: What's new in Grafana v2.1
-weight: -2
----
-
-# What's new in Grafana v2.1
-
-Grafana 2.1 brings improvements in three core areas: dashboarding, authentication, and data sources.
-As with every Grafana release, there is a whole slew of new features, enhancements, and bug fixes.
-
-## More Dynamic Dashboards
-
-The Templating system is one of the most powerful and well-used features of Grafana.
-The 2.1 release brings numerous improvements that make dashboards more dynamic than ever before.
-
-### Multi-Value Template Variables
-
-A template variable with Multi-Value enabled allows for the selection of multiple values at the same time.
-These variables can then be used in any Panel to make them more dynamic, and to give you the perfect view of your data.
-Multi-Value variables are also enabling the new `row repeat` and `panel repeat` feature described below.
-
-
-
-
-### Repeating Rows and Panels
-
-It’s now possible to create a dashboard that automatically adds (or removes) both rows and panels based
-on selected variable values. Any row or any panel can be configured to repeat (duplicate itself) based
-on a multi-value template variable.
-
-A new timepicker with room for more quick ranges as well as new types of relative ranges, like `Today`,
-`The day so far` and `This day last week`. Also an improved time and calendar picker that now works
-correctly in UTC mode.
-
-### Elasticsearch
-
-
-
-
-Grafana 2.5 ships with a new CloudWatch data source that will allow you to query and visualize CloudWatch
-metrics directly from Grafana.
-
-- Rich editor with auto completion for metric names, namespaces and dimensions
-- Templating queries for generic dashboards
-- Alias patterns for short readable series names
-
-### Prometheus
-
-
-
-Grafana 2.5 ships with a new Prometheus data source that will allow you to query and visualize data
-stored in Prometheus.
-
-### Mix different data sources
-
-
-
-In previous releases you have been able to mix different data sources on the same dashboard. In v2.5 you
-will be able to mix then on the same graph! You can enable this by selecting the built in `-- Mixed --` data source.
-When selected this will allow you to specify data source on a per query basis. This will, for example, allow you
-to plot metrics from different Graphite servers on the same Graph or plot data from Elasticsearch alongside
-data from Prometheus. Mixing different data sources on the same graph works for any data source, even custom ones.
-
-### Panel Resize handles
-
-
-
-This release adds resize handles to the bottom right corners of panels making it easy to resize both width and height.
-
-### User invites
-
-
-
-This version also brings some new features for user management.
-
-- Organization admins can now invite new users (via email or manually via invite link)
-- Users can signup using invite link and get automatically added to invited organization
-- User signup workflow can (if enabled) contain an email verification step.
-- Check out [#2353](https://github.com/grafana/grafana/issues/2353) for more info.
-
-### Miscellaneous improvements
-
-- InfluxDB query editor now supports math and AS expressions
-- InfluxDB query editor now supports custom group by interval
-- Panel drilldown link is easier to reach
-- LDAP improvements (can now search for group membership if your LDAP server does not support memberOf attribute)
-- More units for graph and singlestat panel (Length, Volume, Temperature, Pressure, Currency)
-- Admin page for all organizations (remove / edit)
-
-### Breaking changes
-
-There have been some changes to the data source plugin API. If you are using a custom plugin check that there is an update for it before you upgrade. Also
-the new time picker does not currently support custom quick ranges like the last one did. This will likely be added in a
-future release.
-
-### Changelog
-
-For a detailed list and link to github issues for everything included in the 2.5 release please
-view the [CHANGELOG.md](https://github.com/grafana/grafana/blob/master/CHANGELOG.md) file.
-
----
-
-### Download Grafana 2.5 now
diff --git a/docs/sources/whatsnew/whats-new-in-v2-6.md b/docs/sources/whatsnew/whats-new-in-v2-6.md
deleted file mode 100644
index 880ee853bf5..00000000000
--- a/docs/sources/whatsnew/whats-new-in-v2-6.md
+++ /dev/null
@@ -1,144 +0,0 @@
----
-_build:
- list: false
-aliases:
- - /docs/grafana/latest/guides/whats-new-in-v2-6/
- - /docs/grafana/latest/whatsnew/whats-new-in-v2-6/
-description: Feature and improvement highlights for Grafana v2.6
-keywords:
- - grafana
- - new
- - documentation
- - '2.6'
- - release notes
-title: What's new in Grafana v2.6
-weight: -4
----
-
-# What's new in Grafana v2.6
-
-## Release highlights
-
-The release includes a new Table panel, a new InfluxDB query editor, support for Elasticsearch Pipeline Metrics and
-support for multiple Cloudwatch credentials.
-
-## Table Panel
-
-
-
-The new table panel is very flexible, supporting both multiple modes for time series as well as for
-table, annotation and raw JSON data. It also provides date formatting and value formatting and coloring options.
-
-### Time series to rows
-
-In the most simple mode you can turn time series to rows. This means you get a `Time`, `Metric` and a `Value` column.
-Where `Metric` is the name of the time series.
-
-
-
-### Table Transform
-
-Above you see the options tab for the **Table Panel**. The most important option is the `To Table Transform`.
-This option controls how the result of the metric/data query is turned into a table.
-
-### Column Styles
-
-The column styles allow you control how dates and numbers are formatted.
-
-### Time series to columns
-
-This transform allows you to take multiple time series and group them by time. Which will result in a `Time` column
-and a column for each time series.
-
-
-
-In the screenshot above you can see how the same time series query as in the previous example can be transformed into
-a different table by changing the `To Table Transform` to `Time series to columns`.
-
-### Time series to aggregations
-
-This transform works very similar to the legend values in the Graph panel. Each series gets its own row. In the Options
-tab you can select which aggregations you want using the plus button the Columns section.
-
-
-
-You have to think about how accurate the aggregations will be. It depends on what aggregation is used in the time series query,
-how many data points are fetched, etc. The time series aggregations are calculated by Grafana after aggregation is performed
-by the time series database.
-
-### Raw logs queries
-
-If you want to show documents from Elasticsearch pick `Raw Document` as the first metric.
-
-
-
-This in combination with the `JSON Data` table transform will allow you to pick which fields in the document
-you want to show in the table.
-
-
-
-### Elasticsearch aggregations
-
-You can also make Elasticsearch aggregation queries without a `Date Histogram`. This allows you to
-use Elasticsearch metric aggregations to get accurate aggregations for the selected time range.
-
-
-
-### Annotations
-
-The table can also show any annotations you have enabled in the dashboard.
-
-
-
-## The New InfluxDB Editor
-
-The new InfluxDB editor is a lot more flexible and powerful. It supports nested functions, like `derivative`.
-It also uses the same technique as the Graphite query editor in that it presents nested functions as chain of function
-transformations. It tries to simplify and unify the complicated nature of InfluxDB's query language.
-
-
-
-In the `SELECT` row you can specify what fields and functions you want to use. If you have a
-group by time you need an aggregation function. Some functions like derivative require an aggregation function.
-
-The editor tries simplify and unify this part of the query. For example:
-
-
-
-The above will generate the following InfluxDB `SELECT` clause:
-
-```sql
-SELECT derivative(mean("value"), 10s) /10 AS "REQ/s" FROM ....
-```
-
-### Select multiple fields
-
-Use the plus button and select Field > field to add another SELECT clause. You can also
-specify an asterix `*` to select all fields.
-
-### Group By
-
-To group by a tag click the plus icon at the end of the GROUP BY row. Pick a tag from the dropdown that appears.
-You can remove the group by by clicking on the `tag` and then click on the x icon.
-
-The new editor also allows you to remove group by time and select `raw` table data. Which is very useful
-in combination with the new Table panel to show raw log data stored in InfluxDB.
-
-
-
-## Pipeline metrics
-
-If you have Elasticsearch 2.x and Grafana 2.6 or above then you can use pipeline metric aggregations like
-**Moving Average** and **Derivative**. Elasticsearch pipeline metrics require another metric to be based on. Use the eye icon next to the metric
-to hide metrics from appearing in the graph.
-
-
-
-## Changelog
-
-For a detailed list and link to github issues for everything included in the 2.6 release please
-view the [CHANGELOG.md](https://github.com/grafana/grafana/blob/master/CHANGELOG.md) file.
-
----
-
-Download Grafana 2.6 now
diff --git a/docs/sources/whatsnew/whats-new-in-v3-0.md b/docs/sources/whatsnew/whats-new-in-v3-0.md
deleted file mode 100644
index a0bb5c8a1e9..00000000000
--- a/docs/sources/whatsnew/whats-new-in-v3-0.md
+++ /dev/null
@@ -1,236 +0,0 @@
----
-_build:
- list: false
-aliases:
- - /docs/grafana/latest/guides/whats-new-in-v3/
- - /docs/grafana/latest/whatsnew/whats-new-in-v3-0/
-description: Feature and improvement highlights for Grafana v3.0
-keywords:
- - grafana
- - new
- - documentation
- - '3.0'
- - release notes
-title: What's new in Grafana v3.0
-weight: -5
----
-
-# What's new in Grafana v3.0
-
-## Commercial Support
-
-Commercial Support subscriptions for Grafana are now [generally available](https://grafana.com/support/plans/).
-
-Raintank is committed to a 100% open-source strategy for Grafana. We
-do not want to go down the “open core” route. If your organization
-finds Grafana valuable, please consider purchasing a subscription. Get
-direct support, bug fixes, and training from the core Grafana team.
-
-## Plugins
-
-With the popularity of Grafana continuing to accelerate, it has been
-challenging to keep up with all the requests for new features, new
-panels, new data sources, and new functionality. Saying “no” so often
-has been frustrating, especially for an open source project with such
-a vibrant community.
-
-The team felt that it was time to dramatically improve extensibility
-through plugin support. Grafana 3.0 comes with a completely revamped
-plugin SDK / API.
-
-We’ve refactored our **Data Source** plugin architecture and added
-two new plugin types:
-
-- **Panel** plugins let you add new panel types for your Dashboards.
-- **App** plugins bundle **Panels** plugins, **Data Sources** plugins,
- Dashboards, and Grafana **Pages**. Apps are a great way to provide an
- entire experience right within Grafana.
-
-## Grafana.com
-
-
-
-[Grafana.com](https://grafana.com) offers a central repository where the community can come together to discover, create and
-share plugins (data sources, panels, apps) and dashboards.
-
-We are also working on a hosted Graphite-compatible data source that will be optimized for use with Grafana.
-It’ll be easy to combine your existing data source(s) with this OpenSaaS option. Finally, Grafana.com can
-also be a hub to manage all your Grafana instances. You’ll be able to monitor their health and availability,
-perform dashboard backups, and more.
-
-We are also working on a hosted Graphite-compatible Data Source that
-will be optimized for use with Grafana. It’ll be easy to combine your
-existing Data Source(s) with this OpenSaaS option.
-
-Finally, Grafana.com will also be a hub to manage all your Grafana
-instances. You’ll be able to monitor their health and availability,
-perform Dashboard backups, and more.
-
-Grafana.net will officially launch along with the stable version of
-Grafana 3.0, but go to and check out the preview
-and sign up for an account in the meantime.
-
-## grafana-cli
-
-Grafana 3.0 comes with a new command line tool called grafana-cli. You
-can easily install plugins from Grafana.net with it. For
-example:
-
-```
-grafana-cli install grafana-pie-chart-panel
-```
-
-## Personalization and Preferences
-
-The home dashboard, timezone and theme can now be customized on Organization
-and user Profile level. Grafana can also track recently viewed dashboards, which
-can then be displayed in the dashboard list panel.
-
-## Improved Playlists
-
-You can now save Playlists, and start them by using a Playlist URL. If
-you update a running Playlist, it will update after its next cycle.
-
-This is powerful as it allows you to remote control Grafana. If you
-have a big TV display showing Grafana in your company lobby, create a
-playlist named Lobby, and start it on the computer connected to the
-Lobby TV.
-
-You can now change the Lobby playlist and have the dashboards shown in
-the Lobby update accordingly, automatically.
-
-The playlist does not even have to contain multiple Dashboards; you
-can use this feature to reload the whole Dashboard (and Grafana)
-periodically and remotely.
-
-You can also make Playlists dynamic by using Dashboard **tags** to
-define the Playlist.
-
-
-
-## Improved UI
-
-We’ve always tried to focus on a good looking, usable, and responsive
-UI. We’ve continued to pay a lot of attention to these areas in this
-release.
-
-Grafana 3.0 has a dramatically updated UI that not only looks better
-but also has a number of usability improvements. The side menu now
-works as a dropdown that you can pin to the side. The Organization /
-Profile / Sign out side menu links have been combined into an on hover
-slide out menu.
-
-In addition, all the forms and the layouts of all pages have been
-updated to look and flow better, and be much more consistent. There
-are literally hundreds of UI improvements and refinements.
-
-Here’s the new side menu in action:
-
-
-
-And here's the new look for Dashboard settings:
-
-
-
-Check out the Play
-Site to get a feel for some of the UI changes.
-
-## Improved Annotations
-
-It is now possible to define a link in each annotation. You can hover
-over the link and click the annotation text. This feature is very
-useful for linking to particular commits or tickets where more
-detailed information can be presented to the user.
-
-
-
-## Data source variables
-
-This has been a top requested feature for very long we are excited to finally provide
-this feature. You can now add a new `Data source` type variable. That will
-automatically be filled with instance names of your data sources.
-
-
-
-You can then use this variable as the panel data source:
-
-
-
-This will allow you to quickly change data source server and reuse the
-same dashboard for different instances of your metrics backend. For example
-you might have Graphite running in multiple data centers or environments.
-
-## Prometheus, InfluxDB, and OpenTSDB improvements
-
-All three of these popular included Data Sources have seen a variety
-of improvements in this release. Here are some highlights:
-
-### Prometheus
-
-The Prometheus Data Source now supports annotations.
-
-### InfluxDB
-
-You can now select the InfluxDB policy from the query editor.
-
-
-Grafana 3.0 also comes with support for InfluxDB 0.11 and InfluxDB 0.12.
-
-### OpenTSDB
-
-OpenTSDB 2.2 is better supported and now supports millisecond precision.
-
-## Breaking changes
-
-Dashboards from v2.6 are compatible; no manual updates should be necessary. There could
-be some edge case scenarios where dashboards using templating could stop working.
-If that is the case just enter the edit view for the template variable and hit Update button.
-This is due to a simplification of the variable format system where template variables are
-now stored without any formatting (glob/regex/etc), this is done on the fly when the
-variable is interpolated.
-
-- Plugin API: The plugin API has changed so if you are using a custom
- data source (or panel) they need to be updated as well.
-
-- InfluxDB 0.8: This data source is no longer included in releases,
- you can still install manually from [Grafana.com](https://grafana.com)
-
-- KairosDB: This data source has also no longer shipped with Grafana,
- you can install it manually from [Grafana.com](https://grafana.com)
-
-## Plugin showcase
-
-Discovering and installing plugins is very quick and easy with Grafana 3.0 and [Grafana.com](https://grafana.com). Here
-are a couple that I encourage you try!
-
-#### [Clock Panel](https://grafana.com/plugins/grafana-clock-panel)
-
-Support's both current time and count down mode.
-
-
-#### [Pie Chart Panel](https://grafana.com/plugins/grafana-piechart-panel)
-
-A simple pie chart panel is now available as an external plugin.
-
-
-#### [WorldPing App](https://grafana.com/plugins/raintank-worldping-app)
-
-This is full blown Grafana App that adds new panels, data sources and pages to give
-feature rich global performance monitoring directly from your on-prem Grafana.
-
-
-
-#### [Zabbix App](https://grafana.com/plugins/alexanderzobnin-zabbix-app)
-
-This app contains the already very pouplar Zabbix data source plugin, 2 dashboards and a triggers panel. It is
-created and maintained by [Alexander Zobnin](https://github.com/alexanderzobnin/grafana-zabbix).
-
-
-
-Check out the full list of plugins on [Grafana.com](https://grafana.com/plugins)
-
-## CHANGELOG
-
-For a detailed list and link to github issues for everything included
-in the 3.0 release please view the
-[CHANGELOG.md](https://github.com/grafana/grafana/blob/master/CHANGELOG.md) file.
diff --git a/docs/sources/whatsnew/whats-new-in-v3-1.md b/docs/sources/whatsnew/whats-new-in-v3-1.md
deleted file mode 100644
index ba9c07cfbf7..00000000000
--- a/docs/sources/whatsnew/whats-new-in-v3-1.md
+++ /dev/null
@@ -1,68 +0,0 @@
----
-_build:
- list: false
-aliases:
- - /docs/grafana/latest/guides/whats-new-in-v3-1/
- - /docs/grafana/latest/whatsnew/whats-new-in-v3-1/
-description: Feature and improvement highlights for Grafana v3.1
-keywords:
- - grafana
- - new
- - documentation
- - '3.1'
- - release notes
-title: What's new in Grafana v3.1
-weight: -6
----
-
-# What's new in Grafana v3.1
-
-## Dashboard Export and Import
-
-The export feature is now accessed from the share menu.
-
-
-
-Dashboards exported from Grafana 3.1 are now more portable and easier for others to import than before. The export process extracts information data source types used by panels and adds these to a new `inputs` section in the dashboard json. So when you or another person tries to import the dashboard they will be asked to select data source and optional metric prefix options.
-
-
-
-The above screenshot shows the new import modal that gives you 3 options for how to import a dashboard. One notable new addition here is the ability to import directly from Dashboards shared on [Grafana.com](https://grafana.com).
-
-The next step in the import process:
-
-
-
-Here you can change the name of the dashboard and also pick what data sources you want the dashboard to use. The above screenshot shows a CollectD dashboard for Graphite that requires a metric prefix be specified.
-
-## Discover Dashboards
-
-On [Grafana.com](https://grafana.com) you can now browse and search for dashboards. We have already added a few but more are being uploaded every day. To import a dashboard just copy the dashboard URL and head back to Grafana, then Dashboard Search -> Import -> Paste Grafana.com Dashboard URL.
-
-
-
-## Constant template variables
-
-We added a new template variable named constant that makes it easier to share and export dashboard that have custom prefixes.
-
-## Dashboard URLs
-
-Having current time range and template variable value always sync with the URL makes it possible to always copy your current Grafana URL to share with a colleague without having to use the Share modal.
-
-## Internal metrics
-
-Do you want metrics about viewing metrics? Of course you do! In this release we added support for sending metrics about Grafana to graphite. You can configure interval and server in the config file.
-
-## Logging
-
-Switched logging framework to log15 to enable key value per logging and filtering based on different log levels. It's now possible to configure different log levels for different modules.
-
-### Breaking changes
-
-- **Logging** format have been changed to improve log filtering.
-- **Graphite PNG** Graphite PNG support dropped from Graph panel (use Grafana native PNG instead).
-- **Migration** No longer possible to migrate dashboards from 1.x (Stored in ES or Influx 0.8).
-
-## CHANGELOG
-
-For a detailed list and link to github issues for everything included in the 3.1 release please view the [CHANGELOG.md](https://github.com/grafana/grafana/blob/master/CHANGELOG.md) file.
diff --git a/docs/sources/whatsnew/whats-new-in-v4-0.md b/docs/sources/whatsnew/whats-new-in-v4-0.md
deleted file mode 100644
index 8d175914f15..00000000000
--- a/docs/sources/whatsnew/whats-new-in-v4-0.md
+++ /dev/null
@@ -1,184 +0,0 @@
----
-_build:
- list: false
-aliases:
- - /docs/grafana/latest/guides/whats-new-in-v4/
- - /docs/grafana/latest/whatsnew/whats-new-in-v4-0/
-description: Feature and improvement highlights for Grafana v4.0
-keywords:
- - grafana
- - new
- - documentation
- - '4.0'
- - release notes
-title: What's new in Grafana v4.0
-weight: -7
----
-
-# What's new in Grafana v4.0
-
-As usual this release contains a ton of minor new features, fixes and improved UX. But on top of the usual new goodies
-is a core new feature: Alerting! Read on below for a detailed description of what's new in v4.0.
-
-## Alerting
-
-{{< figure class="float-right" max-width="40%" src="/static/img/docs/v4/drag_handles_gif.gif" caption="Alerting overview" >}}
-
-Alerting is a really revolutionary feature for Grafana. It transforms Grafana from a
-visualization tool into a truly mission critical monitoring tool. The alert rules are very easy to
-configure using your existing graph panels and threshold levels can be set simply by dragging handles to
-the right side of the graph. The rules will continually be evaluated by grafana-server and
-notifications will be sent out when the rule conditions are met.
-
-This feature has been worked on for over a year with many iterations and rewrites
-just to make sure the foundations are really solid. We are really proud to finally release it!
-Since the alerting execution is processed in the backend not all data source plugins are supported.
-Right now Graphite, Prometheus, InfluxDB and OpenTSDB are supported. Elasticsearch is being worked
-on but will be not ready for v4 release.
-
-
-
-### Rules
-
-{{< figure class="float-right" max-width="40%" src="/static/img/docs/v4/alerting_conditions.png" caption="Alerting Conditions" >}}
-
-The rule configuration allows you to specify a name, how often the rule should be evaluated and a series
-of conditions that all need to be true for the alert to fire.
-
-Currently the only condition type that exists is a `Query` condition that allows you to
-specify a query letter, time range and an aggregation function. The letter refers to
-a query you already have added in the **Metrics** tab. The result from the
-query and the aggregation function is a single value that is then used in the threshold check.
-
-We plan to add other condition types in the future, like `Other Alert`, where you can include the state
-of another alert in your conditions, and `Time Of Day`.
-
-### Notifications
-
-{{< figure class="float-right" max-width="40%" src="/static/img/docs/v4/slack_notification.png" caption="Alerting Slack Notification" >}}
-
-Alerting would not be very useful if there was no way to send notifications when rules trigger and change state. You
-can set up notifications of different types. We currently have `Slack`, `PagerDuty`, `Email` and `Webhook` with more in the
-pipe that will be added during beta period. The notifications can then be added to your alert rules.
-If you have configured an external image store in the grafana.ini config file (s3, webdav, and azure_blob options available)
-you can get very rich notifications with an image of the graph and the metric
-values all included in the notification.
-
-### Annotations
-
-Alert state changes are recorded in a new annotation store that is built into Grafana. This store
-currently only supports storing annotations in Grafana's own internal database (mysql, postgres or sqlite).
-The Grafana annotation storage is currently only used for alert state changes but we hope to add the ability for users
-to add graph comments in the form of annotations directly from within Grafana in a future release.
-
-### Alert List Panel
-
-{{< figure class="float-right" max-width="30%" src="/static/img/docs/v4/alert_list_panel.png" caption="Alert List Panel" >}}
-
-This new panel allows you to show alert rules or a history of alert rule state changes. You can filter based on states you are
-interested in. This panel is very useful for overview style dashboards.
-
-
-
-## Ad-hoc filter variable
-
-{{< figure class="float-right" max-width="30%" src="/static/img/docs/v4/adhoc_filters.gif" caption="Ad-hoc filters variable" >}}
-
-This is a new and very different type of template variable. It will allow you to create new key/value filters on the fly
-with autocomplete for both key and values. The filter condition will be automatically applied to all
-queries that use that data source. This feature opens up more exploratory dashboards. In the gif animation to the right
-you have a dashboard for Elasticsearch log data. It uses one query variable that allow you to quickly change how the data
-is grouped, and an interval variable for controlling the granularity of the time buckets. What was missing
-was a way to dynamically apply filters to the log query. With the `Ad-Hoc Filters` variable you can
-dynamically add filters to any log property!
-
-## UX Improvements
-
-We always try to bring some UX/UI refinements and polish in every release.
-
-### TV-mode and Kiosk mode
-
-- Grafana is so often used on wall mounted TVs that we figured a clean TV mode would be - really nice. In TV mode the top navbar, row and panel controls will all fade to transparent. -
- -
- This happens automatically after one minute of user inactivity but can also be toggled manually
- with the d v sequence shortcut. Any mouse movement or keyboard action will
- restore navbar and controls.
-
- Another feature is the kiosk mode. This can be enabled with d k
- shortcut or by adding &kiosk to the URL when you load a dashboard.
- In kiosk mode the navbar is completely hidden/removed from view.
-
(test\.|test2) | Formats multi-value variable into a regex string |
-| `pipe` | ${servers:pipe} | `'test.', 'test2'` | test.|test2 | Formats multi-value variable into a pipe-separated string |
-| `csv` | ${servers:csv} | `'test1', 'test2'` | `test1,test2` | Formats multi-value variable as a comma-separated string |
-
-## Improved workflow for provisioned dashboards
-
-{{< figure src="/static/img/docs/v51/provisioning_cannot_save_dashboard.png" max-width="800px" class="docs-image--right" >}}
-
-Grafana v5.1 brings an improved workflow for provisioned dashboards:
-
-- A populated `id` property in JSON is now automatically removed when provisioning dashboards.
-- When making changes to a provisioned dashboard you can `Save` the dashboard which now will bring up a _Cannot save provisioned dashboard_ dialog like seen in the screenshot to the right.
-
-Available options in the dialog will let you `Copy JSON to Clipboard` and/or `Save JSON to file` which can help you synchronize your dashboard changes back to the provisioning source.
-More information in the [Provisioning documentation](/administration/provisioning/).
-
-
-
-## Changelog
-
-Check out the [CHANGELOG.md](https://github.com/grafana/grafana/blob/master/CHANGELOG.md) file for a complete list
-of new features, changes, and bug fixes.
diff --git a/docs/sources/whatsnew/whats-new-in-v5-2.md b/docs/sources/whatsnew/whats-new-in-v5-2.md
deleted file mode 100644
index 37847ba8837..00000000000
--- a/docs/sources/whatsnew/whats-new-in-v5-2.md
+++ /dev/null
@@ -1,106 +0,0 @@
----
-_build:
- list: false
-aliases:
- - /docs/grafana/latest/guides/whats-new-in-v5-2/
- - /docs/grafana/latest/whatsnew/whats-new-in-v5-2/
-description: Feature and improvement highlights for Grafana v5.2
-keywords:
- - grafana
- - new
- - documentation
- - '5.2'
- - release notes
-title: What's new in Grafana v5.2
-weight: -16
----
-
-# What's new in Grafana v5.2
-
-Grafana v5.2 brings new features, many enhancements and bug fixes. This article will detail the major new features and enhancements.
-
-- [Elasticsearch alerting]({{< relref "#elasticsearch-alerting" >}}) it's finally here!
-- [Native builds for ARM]({{< relref "#native-builds-for-arm" >}}) native builds of Grafana for many more platforms!
-- [Improved Docker image]({{< relref "#improved-docker-image" >}}) with support for docker secrets
-- [Security]({{< relref "#security" >}}) make your Grafana instance more secure
-- [Prometheus]({{< relref "#prometheus" >}}) with alignment enhancements
-- [InfluxDB]({{< relref "#influxdb" >}}) now supports the `mode` function
-- [Alerting]({{< relref "#alerting" >}}) with alert notification channel type for Discord
-- [Dashboards and Panels]({{< relref "#dashboards-panels" >}}) with save and import enhancements
-
-## Elasticsearch alerting
-
-{{< figure src="/static/img/docs/v52/elasticsearch_alerting.png" max-width="800px" class="docs-image--right" >}}
-
-Grafana v5.2 ships with an updated Elasticsearch data source with support for alerting. Alerting support for Elasticsearch has been one of
-the most requested features by our community and now it's finally here. Please try it out and let us know what you think.
-
-
-
-## Native builds for ARM
-
-Grafana v5.2 brings an improved build pipeline with cross-platform support. This enables native builds of Grafana for ARMv7 (x32) and ARM64 (x64).
-We've been longing for native ARM build support for ages. With the help from our amazing community this is now finally available.
-Please try it out and let us know what you think.
-
-Another great addition with the improved build pipeline is that binaries for macOS/Darwin (x64) and Windows (x64) are now automatically built and
-published for both stable and nightly builds.
-
-## Improved Docker image
-
-The Grafana docker image adds support for Docker secrets which enables you to supply Grafana with configuration through files. More
-information in the [Installing using Docker documentation](/installation/docker/#reading-secrets-from-files-support-for-docker-secrets).
-
-## Security
-
-{{< figure src="/static/img/docs/v52/login_change_password.png" max-width="800px" class="docs-image--right" >}}
-
-Starting from Grafana v5.2, when you login with the administrator account using the default password you'll be presented with a form to change the password.
-We hope this encourages users to follow Grafana's best practices and change the default administrator password.
-
-
-
-## Prometheus
-
-The Prometheus data source now aligns the start/end of the query sent to Prometheus with the step, which ensures PromQL expressions with _rate_
-functions get consistent results, and thus avoids graphs jumping around on reload.
-
-## InfluxDB
-
-The InfluxDB data source now includes support for the _mode_ function which returns the most frequent value in a list of field values.
-
-## Alerting
-
-By popular demand Grafana now includes support for an alert notification channel type for [Discord](https://discordapp.com/).
-
-## Dashboards and Panels
-
-### Modified time range and variables are no longer saved by default
-
-{{< figure src="/static/img/docs/v52/dashboard_save_modal.png" max-width="800px" class="docs-image--right" >}}
-
-Starting from Grafana v5.2, a modified time range or variable are no longer saved by default. To save a modified
-time range or variable, you'll need to actively select that when saving a dashboard, see screenshot.
-This should hopefully make it easier to have same defaults for time and variables in dashboards and make it more explicit
-when you actually want to overwrite those settings.
-
-
-
-### Import dashboard enhancements
-
-{{< figure src="/static/img/docs/v52/dashboard_import.png" max-width="800px" class="docs-image--right" >}}
-
-Grafana v5.2 adds support for specifying an existing folder or creating a new one when importing a dashboard - a long-awaited feature since
-Grafana v5.0 introduced support for dashboard folders and permissions. The import dashboard page has also got some general improvements
-and should now make it more clear if a possible import will overwrite an existing dashboard, or not.
-
-This release also adds some improvements for those users only having editor or admin permissions in certain folders. The links to
-_Create Dashboard_ and _Import Dashboard_ are now available in the side navigation, in dashboard search and on the manage dashboards/folder page for a
-user that has editor role in an organization or the edit permission in at least one folder.
-
-
-
-## Changelog
-
-Check out the [CHANGELOG.md](https://github.com/grafana/grafana/blob/master/CHANGELOG.md) file for a complete list
-of new features, changes, and bug fixes.
diff --git a/docs/sources/whatsnew/whats-new-in-v5-3.md b/docs/sources/whatsnew/whats-new-in-v5-3.md
deleted file mode 100644
index 260f06a1e0b..00000000000
--- a/docs/sources/whatsnew/whats-new-in-v5-3.md
+++ /dev/null
@@ -1,97 +0,0 @@
----
-_build:
- list: false
-aliases:
- - /docs/grafana/latest/guides/whats-new-in-v5-3/
- - /docs/grafana/latest/whatsnew/whats-new-in-v5-3/
-description: Feature and improvement highlights for Grafana v5.3
-keywords:
- - grafana
- - new
- - documentation
- - '5.3'
- - release notes
-title: What's new in Grafana v5.3
-weight: -17
----
-
-# What's new in Grafana v5.3
-
-Grafana v5.3 brings new features, many enhancements and bug fixes. This article will detail the major new features and enhancements.
-
-- [Google Stackdriver]({{< relref "#google-stackdriver" >}}) as a core data source!
-- [TV mode]({{< relref "#tv-and-kiosk-mode" >}}) is improved and more accessible
-- [Alerting]({{< relref "#notification-reminders" >}}) with notification reminders
-- [Postgres]({{< relref "#postgres-query-builder" >}}) gets a new query builder!
-- [OAuth]({{< relref "#improved-oauth-support-for-gitlab" >}}) support for GitLab is improved
-- [Annotations]({{< relref "#annotations" >}}) with template variable filtering
-- [Variables]({{< relref "#variables" >}}) with free text support
-
-## Google Stackdriver
-
-{{< figure src="/static/img/docs/v53/stackdriver-with-heatmap.png" max-width= "600px" class="docs-image--no-shadow docs-image--right" >}}
-
-Grafana v5.3 ships with built-in support for [Google Stackdriver](https://cloud.google.com/stackdriver/) and enables you to visualize your Stackdriver metrics in Grafana.
-
-Getting started with the plugin is easy. Simply create a GCE Service account that has access to the Stackdriver API scope, download the Service Account key file from Google and upload it on the Stackdriver data source configuration page in Grafana and you should have a secure server-to-server authentication setup. Like other core plugins, Stackdriver has built-in support for alerting. It also comes with support for heatmaps and basic variables.
-
-If you're already accustomed to the Stackdriver Metrics Explorer UI, you'll notice that there are a lot of similarities to the query editor in Grafana. It is possible to add filters using wildcards and regular expressions. You can do Group By, Primary Aggregation and Alignment.
-
-Alias By allows you to format the legend the way you want, and it's a feature that is not yet present in the Metrics Explorer. Two other features that are only supported in the Grafana plugin are the abilities to manually set the Alignment Period in the query editor and to add Annotations queries.
-
-The Grafana Stackdriver plugin comes with support for automatic unit detection. Grafana will try to map the Stackdriver unit type to a corresponding unit type in Grafana, and if successful the panel Y-axes will be updated accordingly to display the correct unit of measure. This is the first core plugin to provide support for unit detection, and it is our intention to provide support for this in other core plugins in the near future.
-
-The data source is still in the `beta` phase, meaning it's currently in active development and is still missing one important feature - templating queries.
-Please try it out, but be aware of that it might be subject to changes and possible bugs. We would love to hear your feedback.
-
-Refer to [Using Google Stackdriver in Grafana]({{< relref "../datasources/google-cloud-monitoring/" >}}) for more detailed information on how to get started and use it.
-
-## TV and Kiosk Mode
-
-{{< figure src="/static/img/docs/v53/tv_mode_still.png" max-width="600px" class="docs-image--no-shadow docs-image--right" animated-gif="/static/img/docs/v53/tv_mode.gif" >}}
-
-We've improved the TV and kiosk mode to make it easier to use. There's now an icon in the top bar that will let you cycle through the different view modes.
-
-1. In the first view mode, the sidebar and most of the buttons in the top bar will be hidden.
-1. In the second view mode, the top bar is completely hidden so that only the dashboard itself is shown.
-1. Hit the escape key to go back to the default view mode.
-
-When switching view modes, the URL will be updated to reflect the view mode selected. This allows a dashboard to be opened with a
-certain view mode enabled. Additionally, this also enables [playlists](/dashboards/playlist) to be started with a certain view mode enabled.
-
-
-
-## Notification Reminders
-
-Do you use Grafana Alerting and have some notifications that are more important than others? Then it's possible to set reminders so that you continue to be alerted until the problem is fixed. This is done on the notification channel itself and will affect all alerts that use that channel.
-For additional examples of why reminders might be useful for you, see [multiple series](/alerting/alerts-overview/#multiple-series).
-
-For more information about how to enable and configure reminders, refer to [alerting reminders](/alerting/notifications/#send-reminders).
-
-## Postgres Query Builder
-
-Grafana 5.3 comes with a new graphical query builder for Postgres. This brings Postgres integration more in line with some of the other data sources and makes it easier for both advanced users and beginners to work with timeseries in Postgres. For more information about Postgres graphical query builder, refer to [query editor]({{< relref "../datasources/postgres/#query-editor" >}}).
-
-{{< figure src="/static/img/docs/v53/postgres_query_still.png" class="docs-image--no-shadow" animated-gif="/static/img/docs/v53/postgres_query.gif" >}}
-
-## Improved OAuth Support for GitLab
-
-Grafana 5.3 comes with a new OAuth integration for GitLab that enables configuration to only allow users that are a member of certain GitLab groups to authenticate. This makes it possible to use GitLab OAuth with Grafana in a shared environment without giving everyone access to Grafana.
-For more information about how to enable and configure OAuth, refer to [Gitlab OAuth](/auth/gitlab/).
-
-## Annotations
-
-Grafana 5.3 brings improved support for [native annotations](/dashboards/annotations/#native-annotations) and makes it possible to use template variables when filtering by tags.
-For more information about native annotation, refer to [query by tag](/dashboards/annotations/#query-by-tag).
-
-{{< figure src="/static/img/docs/v53/annotation_tag_filter_variable.png" max-width="600px" >}}
-
-## Variables
-
-Grafana 5.3 ships with a brand new variable type named `Text box` which makes it easier and more convenient to provide free text input to a variable.
-This new variable type will display as a free text input field with an optional prefilled default value.
-
-## Changelog
-
-Check out the [CHANGELOG.md](https://github.com/grafana/grafana/blob/master/CHANGELOG.md) file for a complete list
-of new features, changes, and bug fixes.
diff --git a/docs/sources/whatsnew/whats-new-in-v5-4.md b/docs/sources/whatsnew/whats-new-in-v5-4.md
deleted file mode 100644
index 8630cbdfbd1..00000000000
--- a/docs/sources/whatsnew/whats-new-in-v5-4.md
+++ /dev/null
@@ -1,88 +0,0 @@
----
-_build:
- list: false
-aliases:
- - /docs/grafana/latest/guides/whats-new-in-v5-4/
- - /docs/grafana/latest/whatsnew/whats-new-in-v5-4/
-description: Feature and improvement highlights for Grafana v5.4
-keywords:
- - grafana
- - new
- - documentation
- - '5.4'
- - release notes
-title: What's new in Grafana v5.4
-weight: -18
----
-
-# What's new in Grafana v5.4
-
-Grafana v5.4 brings new features, many enhancements and bug fixes. This article will detail the major new features and enhancements.
-
-- [Alerting]({{< relref "#alerting" >}}) Limit false positives with the new `For` setting
-- [Google Stackdriver]({{< relref "#google-stackdriver" >}}) Now with support for templating queries
-- [MySQL]({{< relref "#mysql-query-builder" >}}) gets a new query builder!
-- [Graph Panel]({{< relref "#graph-panel-enhancements" >}}) Highlight time regions and more
-- [Team Preferences]({{< relref "#team-preferences" >}}) Give your teams their own home dashboard
-
-## Alerting
-
-{{< figure src="/static/img/docs/v54/alerting-for-dark-theme.png" max-width="600px" class="docs-image--right" >}}
-
-Grafana v5.4 ships with a new alert rule setting named `For` which is great for removing false positives. If an alert rule has a configured `For` and the query violates the configured threshold it will first go from `OK` to `Pending`. Going from `OK` to `Pending` Grafana will not send any notifications. Once the alert rule has been firing for more than `For` duration, it will change to `Alerting` and send alert notifications. Typically, it's always a good idea to use this setting since it's often worse to get false positive than wait a few minutes before the alert notification triggers.
-
-In the screenshot you can see an example timeline of an alert using the `For` setting. At ~16:04 the alert state changes to `Pending` and after 4 minutes it changes to `Alerting` which is when alert notifications are sent. Once the series falls back to normal the alert rule goes back to `OK`. [Learn more](/alerting/alerts-overview/#for).
-
-Additionally, there's now support for disable the sending of `OK` alert notifications. [Learn more](/alerting/notifications/#disable-resolve-message).
-
-
-
-## Google Stackdriver
-
-{{< figure src="/static/img/docs/v54/stackdriver_template_query.png" max-width="600px" class="docs-image--right" >}}
-
-Grafana v5.3 included built-in support for [Google Stackdriver](https://cloud.google.com/stackdriver/) which enables you to visualize your Stackdriver metrics in Grafana.
-One important feature missing was support for templating queries. This is now included together with a brand new templating query editor for Stackdriver.
-
-The Stackdriver templating query editor lets you choose from a set of different Query Types. This will in turn reveal additional drop-downs to help you
-find, filter and select the templating values you're interested in, see screenshot for details. The templating query editor also supports chaining multiple variables
-making it easy to define variables that's dependent on other variables.
-
-Stackdriver is the first data source which has support for a custom templating query editor. But starting from Grafana v5.4 it's now possible for all data sources, including plugin data sources, to
-create their very own templating query editor.
-
-Additionally, if Grafana is running on a Google Compute Engine (GCE) virtual machine, it is now possible for Grafana to automatically retrieve default credentials from the metadata server.
-This has the advantage of not needing to generate a private key file for the service account and also not having to upload the file to Grafana. [Learn more]({{< relref "../datasources/google-cloud-monitoring/#using-gce-default-service-account" >}}).
-
-Please read [Using Google Stackdriver in Grafana]({{< relref "../datasources/google-cloud-monitoring/" >}}) for more detailed information on how to get started and use it.
-
-
-
-## MySQL Query Builder
-
-Grafana v5.4 comes with a new graphical query builder for MySQL. This brings MySQL integration more in line with some of the other data sources and makes it easier for both advanced users and beginners to work with timeseries in MySQL. For more information about MySQL graphical query builder, refer to [query editor]({{< relref "../datasources/mysql/#query-editor" >}}).
-
-{{< figure src="/static/img/docs/v54/mysql_query_still.png" animated-gif="/static/img/docs/v54/mysql_query.gif" >}}
-
-## Graph Panel Enhancements
-
-Grafana v5.4 adds support for highlighting weekdays and/or certain timespans in the graph panel. This should make it easier to compare for example weekends, business hours and/or off work hours.
-
-{{< figure src="/static/img/docs/v54/graph_time_regions.png" max-width= "800px" >}}
-
-Additionally, when rendering series as lines in the graph panel, should there be only one data point available for one series so that a connecting line cannot be established, a point will
-automatically be rendered for that data point. This should make it easier to understand what's going on when only receiving a single data point.
-
-{{< figure src="/static/img/docs/v54/graph_dot_single_point.png" max-width= "800px" >}}
-
-## Team Preferences
-
-Grafana v5.4 adds support for customizing home dashboard, timezone and theme for teams, in addition to the existing customization on Organization and user Profile level.
-
-1. Specifying a preference on User Profile level will override preference on Team and/or Organization level
-1. Specifying a preference on Team level will override preference on Organization level.
-
-## Changelog
-
-Check out the [CHANGELOG.md](https://github.com/grafana/grafana/blob/master/CHANGELOG.md) file for a complete list
-of new features, changes, and bug fixes.
diff --git a/docs/sources/whatsnew/whats-new-in-v6-0.md b/docs/sources/whatsnew/whats-new-in-v6-0.md
deleted file mode 100644
index d6068ed4680..00000000000
--- a/docs/sources/whatsnew/whats-new-in-v6-0.md
+++ /dev/null
@@ -1,181 +0,0 @@
----
-_build:
- list: false
-aliases:
- - /docs/grafana/latest/guides/whats-new-in-v6-0/
- - /docs/grafana/latest/whatsnew/whats-new-in-v6-0/
-description: Feature and improvement highlights for Grafana v6.0
-keywords:
- - grafana
- - new
- - documentation
- - '6.0'
- - release notes
-title: What's new in Grafana v6.0
-weight: -19
----
-
-# What's new in Grafana v6.0
-
-This update to Grafana introduces a new way of exploring your data, support for log data, and tons of other features.
-
-The main highlights are:
-
-- [Explore]({{< relref "#explore" >}}) - A new query focused workflow for ad-hoc data exploration and troubleshooting.
-- [Grafana Loki]({{< relref "#explore-and-grafana-loki" >}}) - Integration with the new open source log aggregation system from Grafana Labs.
-- [Gauge Panel]({{< relref "#gauge-panel" >}}) - A new standalone panel for gauges.
-- [New Panel Editor UX]({{< relref "#new-panel-editor" >}}) improves panel editing
- and enables easy switching between different visualizations.
-- [Google Stackdriver data source]({{< relref "#google-stackdriver-data-source" >}}) is out of beta and is officially released.
-- [Azure Monitor]({{< relref "#azure-monitor-data-source" >}}) plugin is ported from being an external plugin to be a core data source
-- [React Plugin]({{< relref "#react-panels-query-editors" >}}) support enables an easier way to build plugins.
-- [Named Colors]({{< relref "#named-colors" >}}) in our new improved color picker.
-- [Removal of user session storage]({{< relref "#easier-to-deploy-improved-security" >}}) makes Grafana easier to deploy and improves security.
-
-## Explore
-
-{{< figure src="/static/img/docs/v60/explore_prometheus.png" max-width="800px" class="docs-image--right" caption="Screenshot of the new Explore option in the panel menu" >}}
-
-Grafana's dashboard UI is all about building dashboards for visualization. **Explore** strips away all the dashboard and panel options so that you can focus on the query and metric exploration. Iterate until you have a working query and then think about building a dashboard. You can also jump from a dashboard panel into **Explore** and from there do some ad-hoc query exploration with the panel queries as a starting point.
-
-For infrastructure monitoring and incident response, you no longer need to switch to other tools to debug what went wrong. **Explore** allows you to dig deeper into your metrics and logs to find the cause. Grafana's new logging data source, [Loki](https://github.com/grafana/loki) is tightly integrated into Explore and allows you to correlate metrics and logs by viewing them side-by-side.
-
-**Explore** is a new paradigm for Grafana. It creates a new interactive debugging workflow that integrates two pillars
-of observability—metrics and logs. Explore works with every data source but for Prometheus we have customized the
-query editor and the experience to provide the best possible exploration UX.
-
-### Explore and Prometheus
-
-Explore features a new [Prometheus query editor](/explore/#prometheus-specific-features). This new editor has improved autocomplete, metric tree selector,
-integrations with the Explore table view for easy label filtering, and useful query hints that can automatically apply
-functions to your query. There is also integration between Prometheus and Grafana Loki (see more about Loki below) that
-enabled jumping between metrics query and logs query with preserved label filters.
-
-### Explore splits
-
-Explore supports splitting the view so you can compare different queries, different data sources and metrics and logs side by side!
-
-{{< figure src="/static/img/docs/v60/explore_split.png" max-width="800px" caption="Screenshot of the new Explore option in the panel menu" >}}
-
-
-
-Simply clicking the button will return you to the origin dashboard, or, if you'd like to bring changes you make in Explore back to the dashboard, simply click
-the arrow next to the button to reveal a "Return to panel with changes" menu item.
-
-
-
-### Live tailing improvements
-
-With 6.4 version you can now pause the live tail view to see the last 1000 lines of logs without being interrupted by new logs coming in. You can either pause manually with pause button or the live tailing will automatically pause when you scroll up to see older logs. To resume you just hit the resume button to continue live tailing.
-
-We also introduced some performance optimizations to allow live tailing of higher throughput log streams and various UI fixes and improvements like more consistent styling and fresh logs highlighting.
-
-
-
-### New Logs Panel
-
-The logs panel shows log lines from datasources that support logs, e.g., Elastic, Influx, and Loki. Typically you would use this panel next to a graph panel to display the log output of a related process.
-
-
-
-Limitations: Even though Live tailing can be enabled on logs panels in dashboards, we recommend using Live tailing in Explore. On dashboards, the refresher at the top of the page should be used instead to keep the data of all panels in sync. Note that the logs panel is still beta and we're looking to get feedback.
-
-## Data Links improvements
-
-With Grafana 6.3 we introduced a new way of creating [Data Links](https://grafana.com/blog/2019/08/27/new-in-grafana-6.3-easy-to-use-data-links/).
-Grafana 6.4 improves Data Links and adds them to the Gauge and Bar Gauge and panels.
-
-With Data Links you can define dynamic links to other dashboards and systems. The link can now reference template variables and query results like series name and labels, field name, value and time.
-
-For more information about Data Links, refer to [data link](https://grafana.com/docs/features/panels/graph/#data-link)
-
-## Series override to turn constant into a line
-
-Some graph query results are made up only of one datapoint per series but can be shown in the graph panel with the help of [series overrides](/features/panels/graph/#series-overrides).
-To show a horizontal line through the Y-value of the datapoint across the whole graph, add a series override and select `Transform > constant`.
-
-
-
-## Share query results between panels
-
-Grafana 6.4 continues the work started in 6.3 of creating a data model and query execution lifecycle that can support robust analytics and streaming. These changes are mostly structural and lay the foundation for powerful features in future releases.
-
-The first new feature all these changes have enabled is the ability to share query results between panels. So for example if you have an expensive query you can visualize the same results in a graph, table and singlestat panel. To reuse another panel’s query result select the data source named `-- Dashboard --` and then select the panel.
-
-To make the sharing of query results even more powerful we are introducing a transformation step as well that allows you to select specific parts of the query result and transform it. This new transformation feature is in [alpha](https://grafana.com/docs/administration/configuration/#enable-alpha) state and has to be enabled in the config file.
-
-DataFrame, our primary data model, has now a [columnar](https://en.wikipedia.org/wiki/Column-oriented_DBMS) layout. This
-will support easier frontend processing. The DataSource query interface has been updated to better support streaming.
-The result can now either return a `Promise