CircleCI: Enable internal v7.0.0 release (#24733)

* CircleCI: Sync with master branch

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>

* CirclecI: Temporarily modify release pipeline to only publish internally

Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
This commit is contained in:
Arve Knudsen
2020-05-15 16:30:30 +02:00
committed by GitHub
parent 0167f43d74
commit aee1438ff2
+51 -59
View File
@@ -15,7 +15,9 @@ aliases:
tags: tags:
ignore: /^v[0-9]+(\.[0-9]+){2}(-.+|[^-.]*)$/ ignore: /^v[0-9]+(\.[0-9]+){2}(-.+|[^-.]*)$/
branches: branches:
ignore: master ignore:
- master
- chore/test-release-pipeline
- &filter-only-master - &filter-only-master
branches: branches:
only: master only: master
@@ -54,7 +56,7 @@ commands:
- run: - run:
name: "Install Grafana build pipeline tool" name: "Install Grafana build pipeline tool"
command: | command: |
VERSION=0.4.7 VERSION=0.4.8
curl -fLO https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v${VERSION}/grabpl curl -fLO https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v${VERSION}/grabpl
chmod +x grabpl chmod +x grabpl
mv grabpl /tmp mv grabpl /tmp
@@ -91,7 +93,7 @@ jobs:
elif [[ $CIRCLE_BRANCH == "chore/test-release-pipeline" ]]; then elif [[ $CIRCLE_BRANCH == "chore/test-release-pipeline" ]]; then
# We're testing the release pipeline # We're testing the release pipeline
/tmp/grabpl build-backend --edition << parameters.edition >> \ /tmp/grabpl build-backend --edition << parameters.edition >> \
--variants << parameters.variant >> v6.7.0-beta1 --variants << parameters.variant >> v7.0.0-test
else else
# A master or PR build # A master or PR build
/tmp/grabpl build-backend --edition << parameters.edition >> \ /tmp/grabpl build-backend --edition << parameters.edition >> \
@@ -405,7 +407,7 @@ jobs:
/tmp/grabpl package --jobs 2 --edition oss --sign $CIRCLE_TAG /tmp/grabpl package --jobs 2 --edition oss --sign $CIRCLE_TAG
elif [[ $CIRCLE_BRANCH == "chore/test-release-pipeline" ]]; then elif [[ $CIRCLE_BRANCH == "chore/test-release-pipeline" ]]; then
# We're testing the release pipeline # We're testing the release pipeline
/tmp/grabpl package --jobs 2 --edition oss --sign v6.7.0-beta1 /tmp/grabpl package --jobs 2 --edition oss --sign v7.0.0-test
elif [[ $CIRCLE_BRANCH == "master" ]]; then elif [[ $CIRCLE_BRANCH == "master" ]]; then
# A master build # A master build
/tmp/grabpl package --jobs 2 --edition oss --sign --build-id $CIRCLE_WORKFLOW_ID /tmp/grabpl package --jobs 2 --edition oss --sign --build-id $CIRCLE_WORKFLOW_ID
@@ -467,7 +469,7 @@ jobs:
/tmp/grabpl package --jobs 2 --edition enterprise --sign $CIRCLE_TAG /tmp/grabpl package --jobs 2 --edition enterprise --sign $CIRCLE_TAG
elif [[ $CIRCLE_BRANCH == "chore/test-release-pipeline" ]]; then elif [[ $CIRCLE_BRANCH == "chore/test-release-pipeline" ]]; then
# We're testing the release pipeline # We're testing the release pipeline
/tmp/grabpl package --jobs 2 --edition enterprise --sign v6.7.0-beta1 /tmp/grabpl package --jobs 2 --edition enterprise --sign v7.0.0-test
elif [[ $CIRCLE_BRANCH == "master" ]]; then elif [[ $CIRCLE_BRANCH == "master" ]]; then
# A master build # A master build
/tmp/grabpl package --jobs 2 --edition enterprise --sign --build-id $CIRCLE_WORKFLOW_ID /tmp/grabpl package --jobs 2 --edition enterprise --sign --build-id $CIRCLE_WORKFLOW_ID
@@ -529,7 +531,10 @@ jobs:
--deb-db-bucket grafana-testing-aptly-db --deb-repo-bucket grafana-testing-repo --packages-bucket \ --deb-db-bucket grafana-testing-aptly-db --deb-repo-bucket grafana-testing-repo --packages-bucket \
grafana-downloads-test --rpm-repo-bucket grafana-testing-repo --simulate-release grafana-downloads-test --rpm-repo-bucket grafana-testing-repo --simulate-release
else else
/tmp/grabpl publish-packages --edition << parameters.edition >> # TODO: Revert to non-simulation
/tmp/grabpl publish-packages --edition << parameters.edition >> \
--deb-db-bucket grafana-testing-aptly-db --deb-repo-bucket grafana-testing-repo --packages-bucket \
grafana-downloads-test --rpm-repo-bucket grafana-testing-repo --simulate-release
fi fi
- run: - run:
name: CI job failed name: CI job failed
@@ -610,6 +615,14 @@ jobs:
# This version is necessary for building cross-platform images # This version is necessary for building cross-platform images
version: 18.09.3 version: 18.09.3
- install-grabpl - install-grabpl
- run:
name: Install gcloud SDK
command: |
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | \
sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
sudo apt-get update && sudo apt-get install google-cloud-sdk
# XXX: Is this necessary? # XXX: Is this necessary?
- run: docker run --privileged linuxkit/binfmt:v0.6 - run: docker run --privileged linuxkit/binfmt:v0.6
- run: - run:
@@ -643,7 +656,9 @@ jobs:
/tmp/grabpl publish-docker --jobs 4 --edition << parameters.edition >> --ubuntu=<< parameters.ubuntu >> --dry-run /tmp/grabpl publish-docker --jobs 4 --edition << parameters.edition >> --ubuntu=<< parameters.ubuntu >> --dry-run
elif [[ -n $CIRCLE_TAG ]]; then elif [[ -n $CIRCLE_TAG ]]; then
# This is a release # This is a release
/tmp/grabpl publish-docker --jobs 4 --edition << parameters.edition >> --ubuntu=<< parameters.ubuntu >> # TODO: Revert to non-internal
/tmp/grabpl publish-docker --jobs 4 --edition << parameters.edition >> --ubuntu=<< parameters.ubuntu >> \
--internal
else else
# TODO: Don't ignore errors, temporary workaround until we fix #22955 # TODO: Don't ignore errors, temporary workaround until we fix #22955
/tmp/grabpl publish-docker --jobs 4 --edition << parameters.edition >> --ubuntu=<< parameters.ubuntu >> || echo Publishing failed! /tmp/grabpl publish-docker --jobs 4 --edition << parameters.edition >> --ubuntu=<< parameters.ubuntu >> || echo Publishing failed!
@@ -932,6 +947,14 @@ jobs:
- run: - run:
name: npm - Prepare auth token name: npm - Prepare auth token
command: "echo //registry.npmjs.org/:_authToken=$NPM_TOKEN >> ~/.npmrc" command: "echo //registry.npmjs.org/:_authToken=$NPM_TOKEN >> ~/.npmrc"
- run:
name: Exit if release pipeline test
command: |
if [[ $CIRCLE_BRANCH == "chore/test-release-pipeline" ]]; then
# We're testing the release pipeline
echo "We're testing the release pipeline, so stopping before publishing"
circleci step halt
fi
- run: - run:
name: Release packages name: Release packages
command: ./scripts/build/release-packages.sh "${CIRCLE_TAG}" command: ./scripts/build/release-packages.sh "${CIRCLE_TAG}"
@@ -1004,172 +1027,146 @@ workflows:
variant: armv6 variant: armv6
name: build-oss-backend-armv6 name: build-oss-backend-armv6
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-master-or-release filters: *filter-master-or-release
edition: oss edition: oss
variant: armv7 variant: armv7
name: build-oss-backend-armv7 name: build-oss-backend-armv7
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-master-or-release filters: *filter-master-or-release
edition: oss edition: oss
variant: armv7-musl variant: armv7-musl
name: build-oss-backend-armv7-musl name: build-oss-backend-armv7-musl
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-master-or-release filters: *filter-master-or-release
edition: oss edition: oss
variant: arm64 variant: arm64
name: build-oss-backend-arm64 name: build-oss-backend-arm64
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-master-or-release filters: *filter-master-or-release
edition: oss edition: oss
variant: arm64-musl variant: arm64-musl
name: build-oss-backend-arm64-musl name: build-oss-backend-arm64-musl
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-all filters: *filter-all
edition: oss edition: oss
variant: osx64 variant: osx64
name: build-oss-backend-osx64 name: build-oss-backend-osx64
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-all filters: *filter-all
edition: oss edition: oss
variant: win64 variant: win64
name: build-oss-backend-win64 name: build-oss-backend-win64
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-all filters: *filter-all
edition: oss edition: oss
variant: linux-x64 variant: linux-x64
name: build-oss-backend-linux-x64 name: build-oss-backend-linux-x64
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-all filters: *filter-all
edition: oss edition: oss
variant: linux-x64-musl variant: linux-x64-musl
name: build-oss-backend-linux-x64-musl name: build-oss-backend-linux-x64-musl
requires: requires:
- test-backend - lint-go
- test-frontend
- build-frontend: - build-frontend:
filters: *filter-all filters: *filter-all
name: build-oss-frontend name: build-oss-frontend
edition: oss edition: oss
requires:
- test-backend
- test-frontend
- build-plugins: - build-plugins:
filters: *filter-all filters: *filter-all
name: build-oss-plugins name: build-oss-plugins
edition: oss edition: oss
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-master-or-release filters: *filter-master-or-release
name: build-enterprise-backend-armv6 name: build-enterprise-backend-armv6
edition: enterprise edition: enterprise
variant: armv6 variant: armv6
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-master-or-release filters: *filter-master-or-release
name: build-enterprise-backend-armv7 name: build-enterprise-backend-armv7
edition: enterprise edition: enterprise
variant: armv7 variant: armv7
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-master-or-release filters: *filter-master-or-release
name: build-enterprise-backend-armv7-musl name: build-enterprise-backend-armv7-musl
edition: enterprise edition: enterprise
variant: armv7-musl variant: armv7-musl
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-master-or-release filters: *filter-master-or-release
name: build-enterprise-backend-arm64 name: build-enterprise-backend-arm64
edition: enterprise edition: enterprise
variant: arm64 variant: arm64
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-master-or-release filters: *filter-master-or-release
name: build-enterprise-backend-arm64-musl name: build-enterprise-backend-arm64-musl
edition: enterprise edition: enterprise
variant: arm64-musl variant: arm64-musl
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-all filters: *filter-all
name: build-enterprise-backend-osx64 name: build-enterprise-backend-osx64
edition: enterprise edition: enterprise
variant: osx64 variant: osx64
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-all filters: *filter-all
name: build-enterprise-backend-win64 name: build-enterprise-backend-win64
edition: enterprise edition: enterprise
variant: win64 variant: win64
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-all filters: *filter-all
name: build-enterprise-backend-linux-x64 name: build-enterprise-backend-linux-x64
edition: enterprise edition: enterprise
variant: linux-x64 variant: linux-x64
requires: requires:
- test-backend - lint-go
- test-frontend
- build-backend: - build-backend:
filters: *filter-all filters: *filter-all
name: build-enterprise-backend-linux-x64-musl name: build-enterprise-backend-linux-x64-musl
edition: enterprise edition: enterprise
variant: linux-x64-musl variant: linux-x64-musl
requires: requires:
- test-backend - lint-go
- test-frontend
- build-frontend: - build-frontend:
filters: *filter-all filters: *filter-all
name: build-enterprise-frontend name: build-enterprise-frontend
edition: enterprise edition: enterprise
requires:
- test-backend
- test-frontend
- build-plugins: - build-plugins:
filters: *filter-all filters: *filter-all
name: build-enterprise-plugins name: build-enterprise-plugins
edition: enterprise edition: enterprise
requires: requires:
- test-backend - lint-go
- test-frontend
- build-release-publisher: - build-release-publisher:
filters: *filter-master-or-release filters: *filter-master-or-release
- codespell: - codespell:
@@ -1244,12 +1241,6 @@ workflows:
filters: *filter-only-master filters: *filter-only-master
requires: requires:
- end-to-end-tests - end-to-end-tests
- release-packages:
filters: *filter-only-release
requires:
- end-to-end-tests
- mysql-integration-test
- postgres-integration-test
- publish-packages: - publish-packages:
filters: *filter-master-or-release filters: *filter-master-or-release
name: publish-oss-packages name: publish-oss-packages
@@ -1272,6 +1263,7 @@ workflows:
- mysql-integration-test - mysql-integration-test
- postgres-integration-test - postgres-integration-test
- build-release-publisher - build-release-publisher
# Is this OK to run on Friday?
- publish-storybook: - publish-storybook:
filters: *filter-all filters: *filter-all
requires: requires: