diff --git a/.drone.star b/.drone.star
index f025f8df415..0829f79f299 100644
--- a/.drone.star
+++ b/.drone.star
@@ -6,6 +6,7 @@
load('scripts/drone/pipelines/pr.star', 'pr_pipelines')
load('scripts/drone/pipelines/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')
load('scripts/drone/version.star', 'version_branch_pipelines')
load('scripts/drone/pipelines/cron.star', 'cronjobs')
diff --git a/.drone.yml b/.drone.yml
index dea2d555745..8236478e924 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -11,7 +11,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -23,7 +23,7 @@ steps:
- make gen-go
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
- yarn install --immutable
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- ./bin/grabpl verify-drone
@@ -43,13 +43,13 @@ steps:
- rm words_to_ignore.txt
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: codespell
- commands:
- ./bin/grabpl shellcheck
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: shellcheck
- commands:
- ./bin/grabpl lint-backend --edition oss
@@ -57,7 +57,7 @@ steps:
- initialize
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-backend
- commands:
- yarn run prettier:check
@@ -68,19 +68,19 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-frontend
- commands:
- ./bin/grabpl test-backend --edition oss
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend
- commands:
- ./bin/grabpl integration-tests --edition oss
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend-integration
- commands:
- yarn run ci:test-frontend
@@ -88,11 +88,14 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-frontend
trigger:
event:
- pull_request
+ paths:
+ exclude:
+ - docs/**
type: docker
volumes:
- host:
@@ -111,7 +114,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -123,7 +126,7 @@ steps:
- make gen-go
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
- yarn install --immutable
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER}
@@ -131,7 +134,7 @@ steps:
depends_on:
- initialize
environment: {}
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --no-install-deps --edition oss --build-id
@@ -140,20 +143,20 @@ steps:
- initialize
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-frontend
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition oss --no-install-deps
depends_on:
- initialize
environment: null
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-plugins
- commands:
- ./bin/linux-amd64/grafana-cli cue validate-schema --grafana-root .
depends_on:
- build-backend
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: validate-scuemata
- commands:
- '# Make sure the git tree is clean.'
@@ -174,7 +177,7 @@ steps:
- git stash pop
depends_on:
- validate-scuemata
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: ensure-cuetsified
- commands:
- . scripts/build/gpg-test-vars.sh && ./bin/grabpl package --jobs 8 --edition oss
@@ -184,7 +187,7 @@ steps:
- build-backend
- build-frontend
environment: null
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: package
- commands:
- ./scripts/grafana-server/start-server
@@ -196,7 +199,7 @@ steps:
environment:
ARCH: linux-amd64
PORT: 3001
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -273,7 +276,7 @@ steps:
- build-frontend
environment:
NODE_OPTIONS: --max_old_space_size=4096
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-storybook
- commands:
- yarn wait-on http://$HOST:$PORT
@@ -288,26 +291,12 @@ steps:
failure: always
image: grafana/docker-puppeteer:1.0.0
name: test-a11y-frontend
-- commands:
- - ./scripts/ci-reference-docs-lint.sh ci
- depends_on:
- - build-frontend
- image: grafana/build-container:1.4.9
- name: build-frontend-docs
-- commands:
- - mkdir -p /hugo/content/docs/grafana
- - cp -r docs/sources/* /hugo/content/docs/grafana/latest/
- - cd /hugo && make prod
- depends_on:
- - build-frontend-docs
- image: grafana/docs-base:latest
- name: build-docs-website
- commands:
- ls dist/*.tar.gz*
- cp dist/*.tar.gz* packaging/docker/
depends_on:
- package
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition oss -archs amd64
@@ -324,6 +313,9 @@ steps:
trigger:
event:
- pull_request
+ paths:
+ exclude:
+ - docs/**
type: docker
volumes:
- host:
@@ -362,7 +354,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -379,7 +371,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: postgres-integration-tests
- commands:
- apt-get update
@@ -394,11 +386,14 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: mysql-integration-tests
trigger:
event:
- pull_request
+ paths:
+ exclude:
+ - docs/**
type: docker
volumes:
- host:
@@ -413,7 +408,7 @@ volumes:
---
depends_on: []
kind: pipeline
-name: main-test
+name: pr-docs
node:
type: no-parallel
platform:
@@ -423,7 +418,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -435,7 +430,116 @@ steps:
- make gen-go
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
- yarn install --immutable
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
+ name: initialize
+- commands:
+ - yarn packages:build
+ - yarn packages:docsExtract
+ - yarn packages:docsToMarkdown
+ - ./scripts/ci-reference-docs-lint.sh ci
+ depends_on:
+ - initialize
+ image: grafana/build-container:1.5.1
+ name: build-frontend-docs
+- commands:
+ - mkdir -p /hugo/content/docs/grafana
+ - cp -r docs/sources/* /hugo/content/docs/grafana/latest/
+ - cd /hugo && make prod
+ depends_on:
+ - build-frontend-docs
+ image: grafana/docs-base:latest
+ name: build-docs-website
+trigger:
+ event:
+ - pull_request
+ paths:
+ include:
+ - docs/**
+ - packages/**
+type: docker
+volumes:
+- host:
+ path: /var/run/docker.sock
+ name: docker
+---
+depends_on: []
+kind: pipeline
+name: main-docs
+node:
+ type: no-parallel
+platform:
+ arch: amd64
+ os: linux
+services: []
+steps:
+- commands:
+ - mkdir -p bin
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
+ - chmod +x bin/grabpl
+ image: byrnedo/alpine-curl:0.1.8
+ name: grabpl
+- commands:
+ - echo $DRONE_RUNNER_NAME
+ image: alpine:3.15
+ name: identify-runner
+- commands:
+ - make gen-go
+ - ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
+ - yarn install --immutable
+ image: grafana/build-container:1.5.1
+ name: initialize
+- commands:
+ - yarn packages:build
+ - yarn packages:docsExtract
+ - yarn packages:docsToMarkdown
+ - ./scripts/ci-reference-docs-lint.sh ci
+ depends_on:
+ - initialize
+ image: grafana/build-container:1.5.1
+ name: build-frontend-docs
+- commands:
+ - mkdir -p /hugo/content/docs/grafana
+ - cp -r docs/sources/* /hugo/content/docs/grafana/latest/
+ - cd /hugo && make prod
+ depends_on:
+ - build-frontend-docs
+ image: grafana/docs-base:latest
+ name: build-docs-website
+trigger:
+ branch: main
+ event:
+ - push
+type: docker
+volumes:
+- host:
+ path: /var/run/docker.sock
+ name: docker
+---
+depends_on: []
+kind: pipeline
+name: main-test
+node:
+ type: no-parallel
+platform:
+ arch: amd64
+ os: linux
+services: []
+steps:
+- commands:
+ - mkdir -p bin
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
+ - chmod +x bin/grabpl
+ image: byrnedo/alpine-curl:0.1.8
+ name: grabpl
+- commands:
+ - echo $DRONE_RUNNER_NAME
+ image: alpine:3.15
+ name: identify-runner
+- commands:
+ - make gen-go
+ - ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
+ - yarn install --immutable
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- ./bin/grabpl verify-drone
@@ -455,13 +559,13 @@ steps:
- rm words_to_ignore.txt
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: codespell
- commands:
- ./bin/grabpl shellcheck
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: shellcheck
- commands:
- ./bin/grabpl lint-backend --edition oss
@@ -469,7 +573,7 @@ steps:
- initialize
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-backend
- commands:
- yarn run prettier:check
@@ -480,19 +584,19 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-frontend
- commands:
- ./bin/grabpl test-backend --edition oss
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend
- commands:
- ./bin/grabpl integration-tests --edition oss
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend-integration
- commands:
- yarn run ci:test-frontend
@@ -500,7 +604,7 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-frontend
trigger:
branch: main
@@ -524,7 +628,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -536,13 +640,13 @@ steps:
- make gen-go
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
- yarn install --immutable
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- image: grafana/drone-downstream
name: trigger-enterprise-downstream
settings:
params:
- - SOURCE_BUILD_NUMBER=${DRONE_BUILD_NUMBER}
+ - SOURCE_BUILD_NUMBER=${DRONE_COMMIT}
- SOURCE_COMMIT=${DRONE_COMMIT}
repositories:
- grafana/grafana-enterprise@main
@@ -555,7 +659,7 @@ steps:
depends_on:
- initialize
environment: {}
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --no-install-deps --edition oss --build-id
@@ -564,7 +668,7 @@ steps:
- initialize
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-frontend
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition oss --no-install-deps --sign --signing-admin
@@ -573,13 +677,13 @@ steps:
environment:
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-plugins
- commands:
- ./bin/linux-amd64/grafana-cli cue validate-schema --grafana-root .
depends_on:
- build-backend
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: validate-scuemata
- commands:
- '# Make sure the git tree is clean.'
@@ -600,7 +704,7 @@ steps:
- git stash pop
depends_on:
- validate-scuemata
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: ensure-cuetsified
- commands:
- ./bin/grabpl package --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER} --no-pull-enterprise
@@ -620,7 +724,7 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: package
- commands:
- ./scripts/grafana-server/start-server
@@ -632,7 +736,7 @@ steps:
environment:
ARCH: linux-amd64
PORT: 3001
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -709,7 +813,7 @@ steps:
- build-frontend
environment:
NODE_OPTIONS: --max_old_space_size=4096
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-storybook
- commands:
- printenv GCP_KEY | base64 -d > /tmp/gcpkey.json
@@ -749,20 +853,14 @@ steps:
GRAFANA_MISC_STATS_API_KEY:
from_secret: grafana_misc_stats_api_key
failure: ignore
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: publish-frontend-metrics
-- commands:
- - ./scripts/ci-reference-docs-lint.sh ci
- depends_on:
- - build-frontend
- image: grafana/build-container:1.4.9
- name: build-frontend-docs
- commands:
- ls dist/*.tar.gz*
- cp dist/*.tar.gz* packaging/docker/
depends_on:
- package
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition oss
@@ -834,7 +932,7 @@ steps:
environment:
NPM_TOKEN:
from_secret: npm_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: release-canary-npm-packages
- commands:
- ./bin/grabpl upload-packages --edition oss --packages-bucket grafana-downloads
@@ -909,7 +1007,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -926,7 +1024,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: postgres-integration-tests
- commands:
- apt-get update
@@ -941,7 +1039,7 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: mysql-integration-tests
trigger:
branch: main
@@ -977,7 +1075,7 @@ steps:
name: identify-runner
- commands:
- $$ProgressPreference = "SilentlyContinue"
- - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/windows/grabpl.exe
+ - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/windows/grabpl.exe
-OutFile grabpl.exe
image: grafana/ci-wix:0.1.1
name: initialize
@@ -1060,7 +1158,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -1070,7 +1168,7 @@ steps:
name: identify-runner
- commands:
- make gen-go
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- ./bin/grabpl store-packages --edition oss --gcp-key /tmp/gcpkey.json --build-id
@@ -1142,7 +1240,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -1155,7 +1253,7 @@ steps:
- ./bin/grabpl verify-version ${DRONE_TAG}
- ./bin/grabpl gen-version ${DRONE_TAG}
- yarn install --immutable
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition oss --github-token $${GITHUB_TOKEN}
@@ -1165,7 +1263,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --github-token $${GITHUB_TOKEN} --no-install-deps
@@ -1174,7 +1272,7 @@ steps:
- initialize
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-frontend
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition oss --no-install-deps --sign --signing-admin
@@ -1183,13 +1281,13 @@ steps:
environment:
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-plugins
- commands:
- ./bin/linux-amd64/grafana-cli cue validate-schema --grafana-root .
depends_on:
- build-backend
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: validate-scuemata
- commands:
- '# Make sure the git tree is clean.'
@@ -1210,7 +1308,7 @@ steps:
- git stash pop
depends_on:
- validate-scuemata
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: ensure-cuetsified
- commands:
- ./bin/grabpl package --jobs 8 --edition oss --github-token $${GITHUB_TOKEN} --no-pull-enterprise
@@ -1230,14 +1328,14 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: package
- commands:
- ls dist/*.tar.gz*
- cp dist/*.tar.gz* packaging/docker/
depends_on:
- package
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition oss --shouldSave
@@ -1273,7 +1371,7 @@ steps:
environment:
ARCH: linux-amd64
PORT: 3001
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -1350,7 +1448,7 @@ steps:
- build-frontend
environment:
NODE_OPTIONS: --max_old_space_size=4096
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-storybook
- commands:
- ./bin/grabpl upload-cdn --edition oss --src-bucket "$${PRERELEASE_BUCKET}" --src-dir
@@ -1400,7 +1498,7 @@ steps:
- ./scripts/build/build-npm-packages.sh ${DRONE_TAG}
depends_on:
- store-storybook
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-npm-packages
- commands:
- ./bin/grabpl artifacts npm store --tag ${DRONE_TAG}
@@ -1446,7 +1544,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -1459,7 +1557,7 @@ steps:
- ./bin/grabpl verify-version ${DRONE_TAG}
- ./bin/grabpl gen-version ${DRONE_TAG}
- yarn install --immutable
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- |-
@@ -1473,13 +1571,13 @@ steps:
- rm words_to_ignore.txt
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: codespell
- commands:
- ./bin/grabpl shellcheck
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: shellcheck
- commands:
- ./bin/grabpl lint-backend --edition oss
@@ -1487,7 +1585,7 @@ steps:
- initialize
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-backend
- commands:
- yarn run prettier:check
@@ -1498,19 +1596,19 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-frontend
- commands:
- ./bin/grabpl test-backend --edition oss
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend
- commands:
- ./bin/grabpl integration-tests --edition oss
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend-integration
- commands:
- yarn run ci:test-frontend
@@ -1518,7 +1616,7 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-frontend
trigger:
event:
@@ -1567,7 +1665,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -1580,7 +1678,7 @@ steps:
- ./bin/grabpl verify-version ${DRONE_TAG}
- ./bin/grabpl gen-version ${DRONE_TAG}
- yarn install --immutable
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- apt-get update
@@ -1595,7 +1693,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: postgres-integration-tests
- commands:
- apt-get update
@@ -1610,7 +1708,7 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: mysql-integration-tests
trigger:
event:
@@ -1651,7 +1749,7 @@ steps:
name: identify-runner
- commands:
- $$ProgressPreference = "SilentlyContinue"
- - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/windows/grabpl.exe
+ - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/windows/grabpl.exe
-OutFile grabpl.exe
image: grafana/ci-wix:0.1.1
name: initialize
@@ -1710,7 +1808,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -1725,7 +1823,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
@@ -1745,7 +1843,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition enterprise --github-token $${GITHUB_TOKEN}
@@ -1755,7 +1853,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --github-token $${GITHUB_TOKEN} --no-install-deps
@@ -1764,7 +1862,7 @@ steps:
- initialize
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-frontend
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition enterprise --no-install-deps --sign
@@ -1774,13 +1872,13 @@ steps:
environment:
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-plugins
- commands:
- ./bin/linux-amd64/grafana-cli cue validate-schema --grafana-root .
depends_on:
- build-backend
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: validate-scuemata
- commands:
- '# Make sure the git tree is clean.'
@@ -1801,7 +1899,7 @@ steps:
- git stash pop
depends_on:
- validate-scuemata
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: ensure-cuetsified
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition enterprise2 --github-token $${GITHUB_TOKEN}
@@ -1811,7 +1909,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-backend-enterprise2
- commands:
- ./bin/grabpl package --jobs 8 --edition enterprise --github-token $${GITHUB_TOKEN}
@@ -1832,14 +1930,14 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: package
- commands:
- ls dist/*.tar.gz*
- cp dist/*.tar.gz* packaging/docker/
depends_on:
- package
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition enterprise --shouldSave
@@ -1876,7 +1974,7 @@ steps:
ARCH: linux-amd64
PORT: 3001
RUNDIR: scripts/grafana-server/tmp-grafana-enterprise
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -1988,7 +2086,7 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: package-enterprise2
- commands:
- ./bin/grabpl upload-cdn --edition enterprise2 --src-bucket "$${PRERELEASE_BUCKET}"
@@ -2050,7 +2148,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2065,7 +2163,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
@@ -2085,7 +2183,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- |-
@@ -2099,13 +2197,13 @@ steps:
- rm words_to_ignore.txt
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: codespell
- commands:
- ./bin/grabpl shellcheck
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: shellcheck
- commands:
- ./bin/grabpl lint-backend --edition enterprise
@@ -2113,7 +2211,7 @@ steps:
- initialize
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-backend
- commands:
- yarn run prettier:check
@@ -2124,19 +2222,19 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-frontend
- commands:
- ./bin/grabpl test-backend --edition enterprise
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend
- commands:
- ./bin/grabpl integration-tests --edition enterprise
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend-integration
- commands:
- yarn run ci:test-frontend
@@ -2144,7 +2242,7 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-frontend
- commands:
- ./bin/grabpl lint-backend --edition enterprise2
@@ -2152,19 +2250,19 @@ steps:
- initialize
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-backend-enterprise2
- commands:
- ./bin/grabpl test-backend --edition enterprise2
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend-enterprise2
- commands:
- ./bin/grabpl integration-tests --edition enterprise2
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend-integration-enterprise2
trigger:
event:
@@ -2223,7 +2321,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2238,7 +2336,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
@@ -2258,7 +2356,7 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- apt-get update
@@ -2273,7 +2371,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: postgres-integration-tests
- commands:
- apt-get update
@@ -2288,7 +2386,7 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: mysql-integration-tests
- commands:
- dockerize -wait tcp://redis:6379/0 -timeout 120s
@@ -2297,7 +2395,7 @@ steps:
- initialize
environment:
REDIS_URL: redis://redis:6379/0
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: redis-integration-tests
- commands:
- dockerize -wait tcp://memcached:11211 -timeout 120s
@@ -2306,7 +2404,7 @@ steps:
- initialize
environment:
MEMCACHED_HOSTS: memcached:11211
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: memcached-integration-tests
trigger:
event:
@@ -2351,7 +2449,7 @@ steps:
name: identify-runner
- commands:
- $$ProgressPreference = "SilentlyContinue"
- - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/windows/grabpl.exe
+ - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/windows/grabpl.exe
-OutFile grabpl.exe
- git clone "https://$$env:GITHUB_TOKEN@github.com/grafana/grafana-enterprise.git"
- cd grafana-enterprise
@@ -2426,7 +2524,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2504,7 +2602,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2565,7 +2663,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2644,7 +2742,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2706,7 +2804,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2742,7 +2840,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2785,11 +2883,11 @@ steps:
- ./bin/grabpl verify-version ${DRONE_TAG}
- ./bin/grabpl gen-version ${DRONE_TAG}
- yarn install --immutable
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2811,7 +2909,7 @@ steps:
environment:
NPM_TOKEN:
from_secret: npm_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: release-npm-packages
trigger:
event:
@@ -2837,7 +2935,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2900,7 +2998,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -2912,7 +3010,7 @@ steps:
- make gen-go
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
- yarn install --immutable
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER}
@@ -2920,7 +3018,7 @@ steps:
depends_on:
- initialize
environment: {}
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --no-install-deps --edition oss --build-id
@@ -2929,7 +3027,7 @@ steps:
- initialize
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-frontend
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition oss --no-install-deps --sign --signing-admin
@@ -2938,13 +3036,13 @@ steps:
environment:
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-plugins
- commands:
- ./bin/linux-amd64/grafana-cli cue validate-schema --grafana-root .
depends_on:
- build-backend
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: validate-scuemata
- commands:
- '# Make sure the git tree is clean.'
@@ -2965,7 +3063,7 @@ steps:
- git stash pop
depends_on:
- validate-scuemata
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: ensure-cuetsified
- commands:
- ./bin/grabpl package --jobs 8 --edition oss --build-id ${DRONE_BUILD_NUMBER} --no-pull-enterprise
@@ -2985,14 +3083,14 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: package
- commands:
- ls dist/*.tar.gz*
- cp dist/*.tar.gz* packaging/docker/
depends_on:
- package
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition oss --shouldSave
@@ -3028,7 +3126,7 @@ steps:
environment:
ARCH: linux-amd64
PORT: 3001
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -3105,7 +3203,7 @@ steps:
- build-frontend
environment:
NODE_OPTIONS: --max_old_space_size=4096
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-storybook
- commands:
- ./bin/grabpl upload-cdn --edition oss --src-bucket "grafana-static-assets"
@@ -3159,7 +3257,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3171,7 +3269,7 @@ steps:
- make gen-go
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
- yarn install --immutable
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- |-
@@ -3185,13 +3283,13 @@ steps:
- rm words_to_ignore.txt
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: codespell
- commands:
- ./bin/grabpl shellcheck
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: shellcheck
- commands:
- ./bin/grabpl lint-backend --edition oss
@@ -3199,7 +3297,7 @@ steps:
- initialize
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-backend
- commands:
- yarn run prettier:check
@@ -3210,19 +3308,19 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-frontend
- commands:
- ./bin/grabpl test-backend --edition oss
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend
- commands:
- ./bin/grabpl integration-tests --edition oss
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend-integration
- commands:
- yarn run ci:test-frontend
@@ -3230,7 +3328,7 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-frontend
trigger:
ref:
@@ -3273,7 +3371,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3285,7 +3383,7 @@ steps:
- make gen-go
- ./bin/grabpl gen-version --build-id ${DRONE_BUILD_NUMBER}
- yarn install --immutable
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- apt-get update
@@ -3300,7 +3398,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: postgres-integration-tests
- commands:
- apt-get update
@@ -3315,7 +3413,7 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: mysql-integration-tests
trigger:
ref:
@@ -3350,7 +3448,7 @@ steps:
name: identify-runner
- commands:
- $$ProgressPreference = "SilentlyContinue"
- - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/windows/grabpl.exe
+ - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/windows/grabpl.exe
-OutFile grabpl.exe
image: grafana/ci-wix:0.1.1
name: initialize
@@ -3398,7 +3496,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3413,13 +3511,13 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
- rmdir bin
- mv grafana-enterprise /tmp/
- - /tmp/grabpl init-enterprise --github-token $${GITHUB_TOKEN} /tmp/grafana-enterprise
+ - /tmp/grabpl init-enterprise /tmp/grafana-enterprise
- mv /tmp/grafana-enterprise/deployment_tools_config.json deployment_tools_config.json
- mkdir bin
- mv /tmp/grabpl bin/
@@ -3428,10 +3526,8 @@ steps:
- yarn install --immutable
depends_on:
- clone-enterprise
- environment:
- GITHUB_TOKEN:
- from_secret: github_token
- image: grafana/build-container:1.4.9
+ environment: {}
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition enterprise --build-id ${DRONE_BUILD_NUMBER}
@@ -3439,7 +3535,7 @@ steps:
depends_on:
- initialize
environment: {}
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-backend
- commands:
- ./bin/grabpl build-frontend --jobs 8 --no-install-deps --edition enterprise --build-id
@@ -3448,7 +3544,7 @@ steps:
- initialize
environment:
NODE_OPTIONS: --max_old_space_size=8192
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-frontend
- commands:
- ./bin/grabpl build-plugins --jobs 8 --edition enterprise --no-install-deps --sign
@@ -3458,13 +3554,13 @@ steps:
environment:
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-plugins
- commands:
- ./bin/linux-amd64/grafana-cli cue validate-schema --grafana-root .
depends_on:
- build-backend
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: validate-scuemata
- commands:
- '# Make sure the git tree is clean.'
@@ -3485,7 +3581,7 @@ steps:
- git stash pop
depends_on:
- validate-scuemata
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: ensure-cuetsified
- commands:
- ./bin/grabpl build-backend --jobs 8 --edition enterprise2 --build-id ${DRONE_BUILD_NUMBER}
@@ -3493,7 +3589,7 @@ steps:
depends_on:
- initialize
environment: {}
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-backend-enterprise2
- commands:
- ./bin/grabpl package --jobs 8 --edition enterprise --build-id ${DRONE_BUILD_NUMBER}
@@ -3514,14 +3610,14 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: package
- commands:
- ls dist/*.tar.gz*
- cp dist/*.tar.gz* packaging/docker/
depends_on:
- package
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: copy-packages-for-docker
- commands:
- ./bin/grabpl build-docker --edition enterprise --shouldSave
@@ -3558,7 +3654,7 @@ steps:
ARCH: linux-amd64
PORT: 3001
RUNDIR: scripts/grafana-server/tmp-grafana-enterprise
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: grafana-server
- commands:
- apt-get install -y netcat
@@ -3635,7 +3731,7 @@ steps:
- build-frontend
environment:
NODE_OPTIONS: --max_old_space_size=4096
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: build-storybook
- commands:
- ./bin/grabpl upload-cdn --edition enterprise --src-bucket "grafana-static-assets"
@@ -3678,7 +3774,7 @@ steps:
from_secret: gpg_pub_key
GRAFANA_API_KEY:
from_secret: grafana_api_key
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: package-enterprise2
- commands:
- ./bin/grabpl upload-cdn --edition enterprise2 --src-bucket "grafana-static-assets"
@@ -3733,7 +3829,7 @@ services: []
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3748,13 +3844,13 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
- rmdir bin
- mv grafana-enterprise /tmp/
- - /tmp/grabpl init-enterprise --github-token $${GITHUB_TOKEN} /tmp/grafana-enterprise
+ - /tmp/grabpl init-enterprise /tmp/grafana-enterprise
- mv /tmp/grafana-enterprise/deployment_tools_config.json deployment_tools_config.json
- mkdir bin
- mv /tmp/grabpl bin/
@@ -3763,10 +3859,8 @@ steps:
- yarn install --immutable
depends_on:
- clone-enterprise
- environment:
- GITHUB_TOKEN:
- from_secret: github_token
- image: grafana/build-container:1.4.9
+ environment: {}
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- |-
@@ -3780,13 +3874,13 @@ steps:
- rm words_to_ignore.txt
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: codespell
- commands:
- ./bin/grabpl shellcheck
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: shellcheck
- commands:
- ./bin/grabpl lint-backend --edition enterprise
@@ -3794,7 +3888,7 @@ steps:
- initialize
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-backend
- commands:
- yarn run prettier:check
@@ -3805,19 +3899,19 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-frontend
- commands:
- ./bin/grabpl test-backend --edition enterprise
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend
- commands:
- ./bin/grabpl integration-tests --edition enterprise
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend-integration
- commands:
- yarn run ci:test-frontend
@@ -3825,7 +3919,7 @@ steps:
- initialize
environment:
TEST_MAX_WORKERS: 50%
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-frontend
- commands:
- ./bin/grabpl lint-backend --edition enterprise2
@@ -3833,19 +3927,19 @@ steps:
- initialize
environment:
CGO_ENABLED: "1"
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: lint-backend-enterprise2
- commands:
- ./bin/grabpl test-backend --edition enterprise2
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend-enterprise2
- commands:
- ./bin/grabpl integration-tests --edition enterprise2
depends_on:
- initialize
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: test-backend-integration-enterprise2
trigger:
ref:
@@ -3898,7 +3992,7 @@ services:
steps:
- commands:
- mkdir -p bin
- - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/grabpl
+ - curl -fL -o bin/grabpl https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/grabpl
- chmod +x bin/grabpl
image: byrnedo/alpine-curl:0.1.8
name: grabpl
@@ -3913,13 +4007,13 @@ steps:
environment:
GITHUB_TOKEN:
from_secret: github_token
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: clone-enterprise
- commands:
- mv bin/grabpl /tmp/
- rmdir bin
- mv grafana-enterprise /tmp/
- - /tmp/grabpl init-enterprise --github-token $${GITHUB_TOKEN} /tmp/grafana-enterprise
+ - /tmp/grabpl init-enterprise /tmp/grafana-enterprise
- mv /tmp/grafana-enterprise/deployment_tools_config.json deployment_tools_config.json
- mkdir bin
- mv /tmp/grabpl bin/
@@ -3928,10 +4022,8 @@ steps:
- yarn install --immutable
depends_on:
- clone-enterprise
- environment:
- GITHUB_TOKEN:
- from_secret: github_token
- image: grafana/build-container:1.4.9
+ environment: {}
+ image: grafana/build-container:1.5.1
name: initialize
- commands:
- apt-get update
@@ -3946,7 +4038,7 @@ steps:
GRAFANA_TEST_DB: postgres
PGPASSWORD: grafanatest
POSTGRES_HOST: postgres
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: postgres-integration-tests
- commands:
- apt-get update
@@ -3961,7 +4053,7 @@ steps:
environment:
GRAFANA_TEST_DB: mysql
MYSQL_HOST: mysql
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: mysql-integration-tests
- commands:
- dockerize -wait tcp://redis:6379/0 -timeout 120s
@@ -3970,7 +4062,7 @@ steps:
- initialize
environment:
REDIS_URL: redis://redis:6379/0
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: redis-integration-tests
- commands:
- dockerize -wait tcp://memcached:11211 -timeout 120s
@@ -3979,7 +4071,7 @@ steps:
- initialize
environment:
MEMCACHED_HOSTS: memcached:11211
- image: grafana/build-container:1.4.9
+ image: grafana/build-container:1.5.1
name: memcached-integration-tests
trigger:
ref:
@@ -4018,7 +4110,7 @@ steps:
name: identify-runner
- commands:
- $$ProgressPreference = "SilentlyContinue"
- - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.2/windows/grabpl.exe
+ - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v2.9.5/windows/grabpl.exe
-OutFile grabpl.exe
- git clone "https://$$env:GITHUB_TOKEN@github.com/grafana/grafana-enterprise.git"
- cd grafana-enterprise
@@ -4215,6 +4307,6 @@ kind: secret
name: gcp_upload_artifacts_key
---
kind: signature
-hmac: a29229ea9d7c398be08208f7294bebc889c74f2b886822c295aeabd844eabf8e
+hmac: 689db4e7e75f82f24715aed3f81d93ae70d2739fe763b4fa69bb159b0b29f2e8
...
diff --git a/CHANGELOG.md b/CHANGELOG.md
index f10bf7020ae..74f4e77db4c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,18 @@
+
+
+# 8.4.1 (2022-02-18)
+
+### Features and enhancements
+
+- **Cloudwatch:** Add support for AWS/PrivateLink\* metrics and dimensions. [#45515](https://github.com/grafana/grafana/pull/45515), [@szymonpk](https://github.com/szymonpk)
+- **Configuration:** Add ability to customize okta login button name and icon. [#44079](https://github.com/grafana/grafana/pull/44079), [@DanCech](https://github.com/DanCech)
+- **Tempo:** Switch out Select with AsyncSelect component to get loading state in Tempo Search. [#45110](https://github.com/grafana/grafana/pull/45110), [@CatPerry](https://github.com/CatPerry)
+
+### Bug fixes
+
+- **Alerting:** Fix migrations by making send_alerts_to field nullable. [#45572](https://github.com/grafana/grafana/pull/45572), [@santihernandezc](https://github.com/santihernandezc)
+
+
# 8.4.0 (2022-02-16)
diff --git a/Dockerfile b/Dockerfile
index 618c0fa1e88..20aa6b5b3e1 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -20,7 +20,7 @@ COPY emails emails
ENV NODE_ENV production
RUN yarn build
-FROM golang:1.17.6-alpine3.15 as go-builder
+FROM golang:1.17.7-alpine3.15 as go-builder
RUN apk add --no-cache gcc g++ make
diff --git a/Dockerfile.ubuntu b/Dockerfile.ubuntu
index db3794d1bb1..4c3f2325a8f 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.6 AS go-builder
+FROM golang:1.17.7 AS go-builder
WORKDIR /src/grafana
diff --git a/babel.config.json b/babel.config.json
index 4de74eb504a..28e9f48eeed 100644
--- a/babel.config.json
+++ b/babel.config.json
@@ -33,6 +33,9 @@
"allowDeclareFields": true
}
],
+ // added to mitigate https://github.com/babel/babel/issues/14289
+ // package (and following line) can be removed once the issue is fixed and released
+ "@babel/plugin-proposal-class-properties",
["@babel/plugin-proposal-object-rest-spread", { "loose": true }],
"@babel/plugin-transform-react-constant-elements",
"@babel/plugin-proposal-nullish-coalescing-operator",
diff --git a/conf/defaults.ini b/conf/defaults.ini
index b514f480436..ad610c4d112 100644
--- a/conf/defaults.ini
+++ b/conf/defaults.ini
@@ -400,6 +400,9 @@ oauth_auto_login = false
# OAuth state max age cookie duration in seconds. Defaults to 600 seconds.
oauth_state_cookie_max_age = 600
+# Skip forced assignment of OrgID 1 or 'auto_assign_org_id' for social logins
+oauth_skip_org_role_update_sync = false
+
# limit of api_key seconds to live before expiration
api_key_max_seconds_to_live = -1
diff --git a/conf/sample.ini b/conf/sample.ini
index 710a8ea4810..9f1e822933d 100644
--- a/conf/sample.ini
+++ b/conf/sample.ini
@@ -394,6 +394,9 @@
# OAuth state max age cookie duration in seconds. Defaults to 600 seconds.
;oauth_state_cookie_max_age = 600
+# Skip forced assignment of OrgID 1 or 'auto_assign_org_id' for social logins
+;oauth_skip_org_role_update_sync = false
+
# limit of api_key seconds to live before expiration
;api_key_max_seconds_to_live = -1
diff --git a/docs/sources/administration/configuration.md b/docs/sources/administration/configuration.md
index 97d454d71ad..9287a8a056c 100644
--- a/docs/sources/administration/configuration.md
+++ b/docs/sources/administration/configuration.md
@@ -751,6 +751,12 @@ This setting is ignored if multiple OAuth providers are configured. Default is `
How many seconds the OAuth state cookie lives before being deleted. Default is `600` (seconds)
Administrators can increase this if they experience OAuth login state mismatch errors.
+### oauth_skip_org_role_update_sync
+
+Skip forced assignment of OrgID `1` or `auto_assign_org_id` for external logins. Default is `false`.
+Use this setting to distribute users with external login to multiple organizations.
+Otherwise, the users' organization would get reset on every new login, for example, via AzureAD.
+
### api_key_max_seconds_to_live
Limit of API key seconds to live before expiration. Default is -1 (unlimited).
diff --git a/docs/sources/alerting/unified-alerting/notifications/mute-timings.md b/docs/sources/alerting/unified-alerting/notifications/mute-timings.md
index a41915e1660..254a9a0d26b 100644
--- a/docs/sources/alerting/unified-alerting/notifications/mute-timings.md
+++ b/docs/sources/alerting/unified-alerting/notifications/mute-timings.md
@@ -7,7 +7,7 @@ weight = 450
# Mute timings
-A mute timing is a recurring interval of time when no new notifications for a policy are generated or sent. are sent for a policy. Use them to prevent alerts from firing a specific and reoccurring period, for example, a regular maintenance period.
+A mute timing is a recurring interval of time when no new notifications for a policy are generated or sent. Use them to prevent alerts from firing a specific and reoccurring period, for example, a regular maintenance period.
Similar to silences, mute timings do not prevent alert rules from being evaluated, nor do they stop alert instances from being shown in the user interface. They only prevent notifications from being created.
diff --git a/docs/sources/datasources/alertmanager.md b/docs/sources/datasources/alertmanager.md
index f3bcc5505c7..68422acc56c 100644
--- a/docs/sources/datasources/alertmanager.md
+++ b/docs/sources/datasources/alertmanager.md
@@ -26,7 +26,7 @@ apiVersion: 1
datasources:
- name: Alertmanager
type: alertmanager
- url: http://localhost:9090
+ url: http://localhost:9093
access: proxy
jsonData:
implementation: 'prometheus' # alternatively 'cortex'
diff --git a/docs/sources/datasources/jaeger.md b/docs/sources/datasources/jaeger.md
index 0f4509aa46c..f0b686cd6d8 100644
--- a/docs/sources/datasources/jaeger.md
+++ b/docs/sources/datasources/jaeger.md
@@ -32,6 +32,7 @@ This is a configuration for the [trace to logs feature]({{< relref "../explore/t
- **Data source -** Target data source.
- **Tags -** The tags that will be used in the Loki query. Default is `'cluster', 'hostname', 'namespace', 'pod'`.
+- **Map tag names -** When enabled, allows configuring how Jaeger tag names map to Loki label names. For example, map `service.name` to `service`.
- **Span start time shift -** Shift in the start time for the Loki query based on the span start time. In order to extend to the past, you need to use a negative value. Use time interval units like 5s, 1m, 3h. The default is 0.
- **Span end time shift -** Shift in the end time for the Loki query based on the span end time. Time units can be used here, for example, 5s, 1m, 3h. The default is 0.
- **Filter by Trace ID -** Toggle to append the trace ID to the Loki query.
@@ -147,12 +148,15 @@ datasources:
tracesToLogs:
# Field with internal link pointing to a Loki data source in Grafana.
# datasourceUid value must match the `datasourceUid` value of the Loki data source.
- datasourceUid: loki
- tags:
- - cluster
- - hostname
- - namespace
- - pod
+ datasourceUid: 'loki'
+ tags: ['job', 'instance', 'pod', 'namespace']
+ mappedTags: [{ key: 'service.name', value: 'service' }]
+ mapTagNamesEnabled: false
+ spanStartTimeShift: '1h'
+ spanEndTimeShift: '1h'
+ filterByTraceID: false
+ filterBySpanID: false
+ lokiSearch: true
secureJsonData:
basicAuthPassword: my_password
```
diff --git a/docs/sources/datasources/tempo.md b/docs/sources/datasources/tempo.md
index eeb5ad5d77e..0a688d7f2d5 100644
--- a/docs/sources/datasources/tempo.md
+++ b/docs/sources/datasources/tempo.md
@@ -31,6 +31,7 @@ This is a configuration for the [trace to logs feature]({{< relref "../explore/t
- **Data source -** Target data source.
- **Tags -** The tags that will be used in the Loki query. Default is `'cluster', 'hostname', 'namespace', 'pod'`.
+- **Map tag names -** When enabled, allows configuring how Tempo tag names map to Loki label names. For example, map `service.name` to `service`.
- **Span start time shift -** A shift in the start time for the Loki query based on the start time for the span. To extend the time to the past, use a negative value. You can use time units, for example, 5s, 1m, 3h. The default is 0.
- **Span end time shift -** Shift in the end time for the Loki query based on the span end time. Time units can be used here, for example, 5s, 1m, 3h. The default is 0.
- **Filter by Trace ID -** Toggle to append the trace ID to the Loki query.
@@ -167,6 +168,8 @@ datasources:
tracesToLogs:
datasourceUid: 'loki'
tags: ['job', 'instance', 'pod', 'namespace']
+ mappedTags: [{ key: 'service.name', value: 'service' }]
+ mapTagNamesEnabled: false
spanStartTimeShift: '1h'
spanEndTimeShift: '1h'
filterByTraceID: false
diff --git a/docs/sources/datasources/zipkin.md b/docs/sources/datasources/zipkin.md
index 1b1f4b6df86..ed530afa4ec 100644
--- a/docs/sources/datasources/zipkin.md
+++ b/docs/sources/datasources/zipkin.md
@@ -32,6 +32,7 @@ This is a configuration for the [trace to logs feature]({{< relref "../explore/t
- **Data source -** Target data source.
- **Tags -** The tags that will be used in the Loki query. Default is `'cluster', 'hostname', 'namespace', 'pod'`.
+- **Map tag names -** When enabled, allows configuring how Zipkin tag names map to Loki label names. For example, map `service.name` to `service`.
- **Span start time shift -** Shift in the start time for the Loki query based on the span start time. In order to extend to the past, you need to use a negative value. Use time interval units like 5s, 1m, 3h. The default is 0.
- **Span end time shift -** Shift in the end time for the Loki query based on the span end time. Time units can be used here, for example, 5s, 1m, 3h. The default is 0.
- **Filter by Trace ID -** Toggle to append the trace ID to the Loki query.
diff --git a/docs/sources/developers/_index.md b/docs/sources/developers/_index.md
index 2d27bc4e9fb..bd4e72187a8 100644
--- a/docs/sources/developers/_index.md
+++ b/docs/sources/developers/_index.md
@@ -6,4 +6,10 @@ weight = 190
# Developers
-This section of the documentation contains pages with resources for Grafana developers.
+This section of the documentation contains pages with resources for Grafana developers:
+
+- [Grafana Contribution Guide - learn how you can contribute your skills to make Grafana even better.]({{< relref "contribute.md" >}})
+- [How to build a plugin]({{< relref "plugins" >}})
+- [Grafana Tutorials - step-by-step guides that help you make the most of Grafana](https://grafana.com/tutorials/)
+- [Grafana Community Forums - get technical support for open source Grafana, Loki, and Tempo.](https://community.grafana.com)
+- [Grafana design system - library of reusable Grafana components and guidelines that help you with contribution and plugin development](https://developers.grafana.com)
diff --git a/docs/sources/enterprise/enterprise-encryption/_index.md b/docs/sources/enterprise/enterprise-encryption/_index.md
index ca4a52640a3..3110e1dea52 100644
--- a/docs/sources/enterprise/enterprise-encryption/_index.md
+++ b/docs/sources/enterprise/enterprise-encryption/_index.md
@@ -16,10 +16,10 @@ You can choose to encrypt secrets stored in the Grafana database using a key fro
Grafana integrates with the following key management systems:
-- [AWS KMS]({{< relref "/using-aws-kms-to-encrypt-database-secrets.md" >}})
-- [Azure Key Vault]({{< relref "/using-azure-key-vault-to-encrypt-database-secrets.md" >}})
-- [Google Cloud KMS]({{< relref "/using-google-cloud-kms-to-encrypt-database-secrets.md" >}})
-- [Hashicorp Key Vault]({{< relref "/using-hashicorp-key-vault-to-encrypt-database-secrets.md" >}})
+- [AWS KMS]({{< relref "using-aws-kms-to-encrypt-database-secrets.md" >}})
+- [Azure Key Vault]({{< relref "using-azure-key-vault-to-encrypt-database-secrets.md" >}})
+- [Google Cloud KMS]({{< relref "using-google-cloud-kms-to-encrypt-database-secrets.md" >}})
+- [Hashicorp Key Vault]({{< relref "using-hashicorp-key-vault-to-encrypt-database-secrets.md" >}})
Refer to [Database encryption]({{< relref "../../administration/database-encryption.md" >}}) to learn more about how Grafana encrypts secrets in the database.
diff --git a/docs/sources/enterprise/enterprise-encryption/using-hashicorp-key-vault-to-encrypt-database-secrets.md b/docs/sources/enterprise/enterprise-encryption/using-hashicorp-key-vault-to-encrypt-database-secrets.md
index 3005656c87c..b09bd2d582b 100644
--- a/docs/sources/enterprise/enterprise-encryption/using-hashicorp-key-vault-to-encrypt-database-secrets.md
+++ b/docs/sources/enterprise/enterprise-encryption/using-hashicorp-key-vault-to-encrypt-database-secrets.md
@@ -5,9 +5,9 @@ keywords = ["grafana", "Hashicorp Vault integration"]
weight = 3
+++
-# Using Google Cloud KMS to encrypt database secrets
+# Using Hashicorp Vault to encrypt database secrets
-You can use an encryption key from Google Cloud Key Management Service to encrypt secrets in the Grafana database.
+You can use an encryption key from Hashicorp Vault to encrypt secrets in the Grafana database.
**Prerequisites:**
diff --git a/docs/sources/enterprise/query-caching.md b/docs/sources/enterprise/query-caching.md
index 8014e173e6a..3b27d9b754b 100644
--- a/docs/sources/enterprise/query-caching.md
+++ b/docs/sources/enterprise/query-caching.md
@@ -71,6 +71,19 @@ To disable query caching for a single data source:
To disable query caching for an entire Grafana instance, set the `enabled` flag to `false` in the [Query caching section of Enterprise Configuration]({{< relref "./enterprise-configuration.md#caching" >}}). You will no longer see the Cache tab on any data sources, and no data source queries will be cached.
+## Clear cache
+
+If you experience performance issues or repeated queries become slower to execute, consider clearing your cache.
+
+> **Note:** This action impacts all cache-enabled data sources. If you are using Memcached, the system clears all data from the Memcached instance.
+
+**To clear the cache**:
+
+1. Sign in to Grafana and click **Settings > Data Sources**.
+1. Select a data source.
+1. Click the **Cache** tab.
+1. Click **Clear cache**.
+
## Sending a request without cache
If a data source query request contains an `X-Cache-Skip` header, then Grafana skips the caching middleware, and does not search the cache for a response. This can be particularly useful when debugging data source queries using cURL.
diff --git a/docs/sources/http_api/folder_dashboard_search.md b/docs/sources/http_api/folder_dashboard_search.md
index 987665b9545..93bd9132d86 100644
--- a/docs/sources/http_api/folder_dashboard_search.md
+++ b/docs/sources/http_api/folder_dashboard_search.md
@@ -19,7 +19,7 @@ Query parameters:
- **dashboardIds** – List of dashboard id's to search for
- **folderIds** – List of folder id's to search in for dashboards
- **starred** – Flag indicating if only starred Dashboards should be returned
-- **limit** – Limit the number of returned results (max 5000)
+- **limit** – Limit the number of returned results (max is 5000; default is 1000)
- **page** – Use this parameter to access hits beyond limit. Numbering starts at 1. limit param acts as page size. Only available in Grafana v6.2+.
**Example request for retrieving folders and dashboards of the general folder**:
diff --git a/docs/sources/release-notes/_index.md b/docs/sources/release-notes/_index.md
index 18b76d97a44..0cbb62a40e0 100644
--- a/docs/sources/release-notes/_index.md
+++ b/docs/sources/release-notes/_index.md
@@ -8,6 +8,7 @@ weight = 10000
Here you can find detailed release notes that list everything that is included in every release as well as notices
about deprecations, breaking changes as well as changes that relate to plugin development.
+- [Release notes for 8.4.1]({{< relref "release-notes-8-4-1" >}})
- [Release notes for 8.4.0-beta1]({{< relref "release-notes-8-4-0-beta1" >}})
- [Release notes for 8.3.5]({{< relref "release-notes-8-3-5" >}})
- [Release notes for 8.3.4]({{< relref "release-notes-8-3-4" >}})
diff --git a/docs/sources/release-notes/release-notes-8-4-1.md b/docs/sources/release-notes/release-notes-8-4-1.md
new file mode 100644
index 00000000000..6b95dae3adf
--- /dev/null
+++ b/docs/sources/release-notes/release-notes-8-4-1.md
@@ -0,0 +1,18 @@
++++
+title = "Release notes for Grafana 8.4.1"
+hide_menu = true
++++
+
+
+
+# Release notes for Grafana 8.4.1
+
+### Features and enhancements
+
+- **Cloudwatch:** Add support for AWS/PrivateLink\* metrics and dimensions. [#45515](https://github.com/grafana/grafana/pull/45515), [@szymonpk](https://github.com/szymonpk)
+- **Configuration:** Add ability to customize okta login button name and icon. [#44079](https://github.com/grafana/grafana/pull/44079), [@DanCech](https://github.com/DanCech)
+- **Tempo:** Switch out Select with AsyncSelect component to get loading state in Tempo Search. [#45110](https://github.com/grafana/grafana/pull/45110), [@CatPerry](https://github.com/CatPerry)
+
+### Bug fixes
+
+- **Alerting:** Fix migrations by making send_alerts_to field nullable. [#45572](https://github.com/grafana/grafana/pull/45572), [@santihernandezc](https://github.com/santihernandezc)
diff --git a/package.json b/package.json
index c4a21acd45f..6912959e9b3 100644
--- a/package.json
+++ b/package.json
@@ -69,6 +69,7 @@
},
"devDependencies": {
"@babel/core": "7.16.7",
+ "@babel/plugin-proposal-class-properties": "7.16.7",
"@babel/plugin-proposal-nullish-coalescing-operator": "7.16.7",
"@babel/plugin-proposal-object-rest-spread": "7.16.7",
"@babel/plugin-proposal-optional-chaining": "7.16.7",
diff --git a/packages/grafana-ui/src/components/Modal/Modal.test.tsx b/packages/grafana-ui/src/components/Modal/Modal.test.tsx
index 4001fbfeee5..f629c8fb54d 100644
--- a/packages/grafana-ui/src/components/Modal/Modal.test.tsx
+++ b/packages/grafana-ui/src/components/Modal/Modal.test.tsx
@@ -1,27 +1,24 @@
import React from 'react';
-import { mount } from 'enzyme';
import { Modal } from './Modal';
+import { render, screen } from '@testing-library/react';
describe('Modal', () => {
- it('renders without error', () => {
- mount();
- });
-
it('renders nothing by default or when isOpen is false', () => {
- const wrapper = mount();
- expect(wrapper.html()).toBe(null);
+ render();
- wrapper.setProps({ ...wrapper.props(), isOpen: false });
- expect(wrapper.html()).toBe(null);
+ expect(screen.queryByRole('dialog')).not.toBeInTheDocument();
});
it('renders correct contents', () => {
- const wrapper = mount(
-
-
Content
+ render(
+
+
Content
);
- expect(wrapper.find('div#modal-content').length).toBe(1);
- expect(wrapper.contains('Some Title')).toBeTruthy();
+
+ expect(screen.getByRole('dialog')).toBeInTheDocument();
+ expect(screen.getByLabelText('Some Title')).toBeInTheDocument();
+
+ expect(screen.getByTestId('modal-content')).toBeInTheDocument();
});
});
diff --git a/packages/grafana-ui/src/components/Modal/Modal.tsx b/packages/grafana-ui/src/components/Modal/Modal.tsx
index f053d665b59..a159a2825ec 100644
--- a/packages/grafana-ui/src/components/Modal/Modal.tsx
+++ b/packages/grafana-ui/src/components/Modal/Modal.tsx
@@ -1,7 +1,9 @@
import { cx } from '@emotion/css';
import { FocusScope } from '@react-aria/focus';
-import { OverlayContainer } from '@react-aria/overlays';
-import React, { PropsWithChildren, useCallback, useEffect } from 'react';
+import { useDialog } from '@react-aria/dialog';
+
+import { OverlayContainer, useOverlay } from '@react-aria/overlays';
+import React, { PropsWithChildren, useRef } from 'react';
import { useTheme2 } from '../../themes';
import { IconName } from '../../types';
@@ -39,33 +41,24 @@ export function Modal(props: PropsWithChildren) {
closeOnBackdropClick = true,
className,
contentClassName,
- onDismiss: propsOnDismiss,
+ onDismiss,
onClickBackdrop,
trapFocus = true,
} = props;
const theme = useTheme2();
const styles = getModalStyles(theme);
- const onDismiss = useCallback(() => {
- if (propsOnDismiss) {
- propsOnDismiss();
- }
- }, [propsOnDismiss]);
- useEffect(() => {
- const onEscKey = (ev: KeyboardEvent) => {
- if (ev.key === 'Esc' || ev.key === 'Escape') {
- onDismiss();
- }
- };
- if (isOpen && closeOnEscape) {
- document.addEventListener('keydown', onEscKey, false);
- } else {
- document.removeEventListener('keydown', onEscKey, false);
- }
- return () => {
- document.removeEventListener('keydown', onEscKey, false);
- };
- }, [closeOnEscape, isOpen, onDismiss]);
+ const ref = useRef(null);
+
+ // Handle interacting outside the dialog and pressing
+ // the Escape key to close the modal.
+ const { overlayProps, underlayProps } = useOverlay(
+ { isKeyboardDismissDisabled: closeOnEscape, isOpen, onClose: onDismiss },
+ ref
+ );
+
+ // Get props for the dialog and its title
+ const { dialogProps, titleProps } = useDialog({}, ref);
if (!isOpen) {
return null;
@@ -78,16 +71,17 @@ export function Modal(props: PropsWithChildren) {
- {/*
- tabIndex=-1 is needed here to support highlighting text within the modal when using FocusScope
- see https://github.com/adobe/react-spectrum/issues/1604#issuecomment-781574668
- */}
-
+
- {typeof title === 'string' && }
- {typeof title !== 'string' && title}
+ {typeof title === 'string' && }
+ {
+ // FIXME: custom title components won't get an accessible title.
+ // Do we really want to support them or shall we just limit this ModalTabsHeader?
+ typeof title !== 'string' && title
+ }