From 69737cba6df1aa366098a82250bdaee1b340f127 Mon Sep 17 00:00:00 2001 From: Kevin Minehart Date: Tue, 12 Sep 2023 16:44:33 -0500 Subject: [PATCH] CI: Fixes for various main steps (#74768) Fixes for various main steps --- .drone.yml | 193 ++++++++++++------------ scripts/ci-frontend-metrics.sh | 2 +- scripts/drone/pipelines/build.star | 2 +- scripts/drone/pipelines/shellcheck.star | 3 +- scripts/drone/steps/lib.star | 4 +- scripts/drone/steps/rgm.star | 10 +- scripts/drone/variables.star | 2 +- 7 files changed, 114 insertions(+), 102 deletions(-) diff --git a/.drone.yml b/.drone.yml index 59d14f14ac0..f4e19d2a54b 100644 --- a/.drone.yml +++ b/.drone.yml @@ -24,7 +24,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - ./bin/build verify-drone @@ -74,14 +74,14 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - go install github.com/bazelbuild/buildtools/buildifier@latest - buildifier --lint=warn -mode=check -r . depends_on: - compile-build-cmd - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: lint-starlark trigger: event: @@ -316,7 +316,7 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-cue depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-cue - commands: - '# It is required that generated jsonnet is committed and in sync with its inputs.' @@ -325,21 +325,21 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-jsonnet depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-jsonnet - commands: - apk add --update make - make gen-go depends_on: - verify-gen-cue - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: wire-install - commands: - apk add --update build-base shared-mime-info shared-mime-info-lang - go test -tags requires_buildifer -short -covermode=atomic -timeout=5m ./pkg/... depends_on: - wire-install - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: test-backend - commands: - apk add --update build-base @@ -348,7 +348,7 @@ steps: | grep -o '\(.*\)/' | sort -u) depends_on: - wire-install - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: test-backend-integration trigger: event: @@ -397,7 +397,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - apk add --update curl jq bash @@ -424,7 +424,7 @@ steps: - apk add --update make - make gen-go depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: wire-install - commands: - apk add --update make build-base @@ -433,11 +433,11 @@ steps: - wire-install environment: CGO_ENABLED: "1" - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: lint-backend - commands: - go run scripts/modowners/modowners.go check go.mod - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: validate-modfile trigger: event: @@ -493,7 +493,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - '# It is required that code generated from Thema/CUE be committed and in sync @@ -503,7 +503,7 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-cue depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-cue - commands: - '# It is required that generated jsonnet is committed and in sync with its inputs.' @@ -512,14 +512,14 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-jsonnet depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-jsonnet - commands: - apk add --update make - make gen-go depends_on: - verify-gen-cue - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: wire-install - commands: - yarn install --immutable @@ -582,8 +582,9 @@ steps: image: node:18.12.0-alpine name: build-frontend-packages - commands: - - /src/grafana-build package --distro=linux/amd64,linux/arm64 --yarn-cache=$$YARN_CACHE_FOLDER - --build-id=$$DRONE_BUILD_NUMBER --grafana-dir=$$PWD > packages.txt + - /src/grafana-build package --distro=linux/amd64,linux/arm64,linux/arm/v7 --go-version=1.20.8 + --yarn-cache=$$YARN_CACHE_FOLDER --build-id=$$DRONE_BUILD_NUMBER --grafana-dir=$$PWD + > packages.txt depends_on: - yarn-install image: grafana/grafana-build:main @@ -860,7 +861,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - echo $DRONE_RUNNER_NAME @@ -874,7 +875,7 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-cue depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-cue - commands: - '# It is required that generated jsonnet is committed and in sync with its inputs.' @@ -883,14 +884,14 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-jsonnet depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-jsonnet - commands: - apk add --update make - make gen-go depends_on: - verify-gen-cue - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: wire-install - commands: - dockerize -wait tcp://postgres:5432 -timeout 120s @@ -911,7 +912,7 @@ steps: GRAFANA_TEST_DB: postgres PGPASSWORD: grafanatest POSTGRES_HOST: postgres - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: postgres-integration-tests - commands: - dockerize -wait tcp://mysql57:3306 -timeout 120s @@ -932,7 +933,7 @@ steps: environment: GRAFANA_TEST_DB: mysql MYSQL_HOST: mysql57 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: mysql-5.7-integration-tests - commands: - dockerize -wait tcp://mysql80:3306 -timeout 120s @@ -953,7 +954,7 @@ steps: environment: GRAFANA_TEST_DB: mysql MYSQL_HOST: mysql80 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: mysql-8.0-integration-tests - commands: - dockerize -wait tcp://redis:6379 -timeout 120s @@ -968,7 +969,7 @@ steps: - wait-for-redis environment: REDIS_URL: redis://redis:6379/0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: redis-integration-tests - commands: - dockerize -wait tcp://memcached:11211 -timeout 120s @@ -983,7 +984,7 @@ steps: - wait-for-memcached environment: MEMCACHED_HOSTS: memcached:11211 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: memcached-integration-tests trigger: event: @@ -1067,7 +1068,7 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-cue depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-cue trigger: event: @@ -1107,11 +1108,12 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: + - apt-get update -yq && apt-get install shellcheck - shellcheck -e SC1071 -e SC2162 scripts/**/*.sh - image: koalaman/shellcheck:stable + image: ubuntu:22.04 name: shellcheck trigger: event: @@ -1208,7 +1210,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - '# It is required that code generated from Thema/CUE be committed and in sync @@ -1219,7 +1221,7 @@ steps: - CODEGEN_VERIFY=1 make gen-cue depends_on: - clone-enterprise - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-cue - commands: - '# It is required that generated jsonnet is committed and in sync with its inputs.' @@ -1229,14 +1231,14 @@ steps: - CODEGEN_VERIFY=1 make gen-jsonnet depends_on: - clone-enterprise - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-jsonnet - commands: - apk add --update make - make gen-go depends_on: - verify-gen-cue - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: wire-install - commands: - apk add --update build-base @@ -1244,7 +1246,7 @@ steps: - go test -v -run=^$ -benchmem -timeout=1h -count=8 -bench=. ${GO_PACKAGES} depends_on: - wire-install - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: sqlite-benchmark-integration-tests - commands: - apk add --update build-base @@ -1256,7 +1258,7 @@ steps: GRAFANA_TEST_DB: postgres PGPASSWORD: grafanatest POSTGRES_HOST: postgres - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: postgres-benchmark-integration-tests - commands: - apk add --update build-base @@ -1267,7 +1269,7 @@ steps: environment: GRAFANA_TEST_DB: mysql MYSQL_HOST: mysql57 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: mysql-5.7-benchmark-integration-tests - commands: - apk add --update build-base @@ -1278,7 +1280,7 @@ steps: environment: GRAFANA_TEST_DB: mysql MYSQL_HOST: mysql80 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: mysql-8.0-benchmark-integration-tests trigger: event: @@ -1352,7 +1354,7 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-cue depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-cue trigger: branch: main @@ -1524,7 +1526,7 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-cue depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-cue - commands: - '# It is required that generated jsonnet is committed and in sync with its inputs.' @@ -1533,21 +1535,21 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-jsonnet depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-jsonnet - commands: - apk add --update make - make gen-go depends_on: - verify-gen-cue - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: wire-install - commands: - apk add --update build-base shared-mime-info shared-mime-info-lang - go test -tags requires_buildifer -short -covermode=atomic -timeout=5m ./pkg/... depends_on: - wire-install - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: test-backend - commands: - apk add --update build-base @@ -1556,7 +1558,7 @@ steps: | grep -o '\(.*\)/' | sort -u) depends_on: - wire-install - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: test-backend-integration trigger: branch: main @@ -1600,13 +1602,13 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - apk add --update make - make gen-go depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: wire-install - commands: - apk add --update make build-base @@ -1615,11 +1617,11 @@ steps: - wire-install environment: CGO_ENABLED: "1" - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: lint-backend - commands: - go run scripts/modowners/modowners.go check go.mod - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: validate-modfile - commands: - ./bin/build verify-drone @@ -1675,7 +1677,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - '# It is required that code generated from Thema/CUE be committed and in sync @@ -1685,7 +1687,7 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-cue depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-cue - commands: - '# It is required that generated jsonnet is committed and in sync with its inputs.' @@ -1694,14 +1696,14 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-jsonnet depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-jsonnet - commands: - apk add --update make - make gen-go depends_on: - verify-gen-cue - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: wire-install - commands: - yarn install --immutable @@ -1720,8 +1722,9 @@ steps: image: node:18.12.0-alpine name: build-frontend-packages - commands: - - /src/grafana-build package --distro=linux/amd64,linux/arm64 --yarn-cache=$$YARN_CACHE_FOLDER - --build-id=$$DRONE_BUILD_NUMBER --grafana-dir=$$PWD > packages.txt + - /src/grafana-build package --distro=linux/amd64,linux/arm64,linux/arm/v7 --go-version=1.20.8 + --yarn-cache=$$YARN_CACHE_FOLDER --build-id=$$DRONE_BUILD_NUMBER --grafana-dir=$$PWD + > packages.txt depends_on: - yarn-install image: grafana/grafana-build:main @@ -1882,8 +1885,8 @@ steps: repo: - grafana/grafana - commands: - - apk add --update bash - - ./scripts/ci-frontend-metrics.sh | ./bin/build publish-metrics $${GRAFANA_MISC_STATS_API_KEY} + - apk add --update bash grep + - ./scripts/ci-frontend-metrics.sh | ./bin/build publish-metrics $$GRAFANA_MISC_STATS_API_KEY depends_on: - test-a11y-frontend environment: @@ -2094,7 +2097,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - echo $DRONE_RUNNER_NAME @@ -2108,7 +2111,7 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-cue depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-cue - commands: - '# It is required that generated jsonnet is committed and in sync with its inputs.' @@ -2117,14 +2120,14 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-jsonnet depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-jsonnet - commands: - apk add --update make - make gen-go depends_on: - verify-gen-cue - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: wire-install - commands: - dockerize -wait tcp://postgres:5432 -timeout 120s @@ -2145,7 +2148,7 @@ steps: GRAFANA_TEST_DB: postgres PGPASSWORD: grafanatest POSTGRES_HOST: postgres - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: postgres-integration-tests - commands: - dockerize -wait tcp://mysql57:3306 -timeout 120s @@ -2166,7 +2169,7 @@ steps: environment: GRAFANA_TEST_DB: mysql MYSQL_HOST: mysql57 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: mysql-5.7-integration-tests - commands: - dockerize -wait tcp://mysql80:3306 -timeout 120s @@ -2187,7 +2190,7 @@ steps: environment: GRAFANA_TEST_DB: mysql MYSQL_HOST: mysql80 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: mysql-8.0-integration-tests - commands: - dockerize -wait tcp://redis:6379 -timeout 120s @@ -2202,7 +2205,7 @@ steps: - wait-for-redis environment: REDIS_URL: redis://redis:6379/0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: redis-integration-tests - commands: - dockerize -wait tcp://memcached:11211 -timeout 120s @@ -2217,7 +2220,7 @@ steps: - wait-for-memcached environment: MEMCACHED_HOSTS: memcached:11211 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: memcached-integration-tests trigger: branch: main @@ -2439,7 +2442,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - ./bin/build artifacts docker fetch --edition oss @@ -2535,7 +2538,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - ./bin/build artifacts packages --tag $${DRONE_TAG} --src-bucket $${PRERELEASE_BUCKET} @@ -2604,7 +2607,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - yarn install --immutable @@ -2633,7 +2636,7 @@ steps: NPM_TOKEN: from_secret: npm_token failure: ignore - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: release-npm-packages trigger: event: @@ -2669,7 +2672,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - depends_on: - compile-build-cmd @@ -2757,13 +2760,13 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - ./bin/build whatsnew-checker depends_on: - compile-build-cmd - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: whats-new-checker trigger: event: @@ -2863,7 +2866,7 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-cue depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-cue - commands: - '# It is required that generated jsonnet is committed and in sync with its inputs.' @@ -2872,21 +2875,21 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-jsonnet depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-jsonnet - commands: - apk add --update make - make gen-go depends_on: - verify-gen-cue - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: wire-install - commands: - apk add --update build-base shared-mime-info shared-mime-info-lang - go test -tags requires_buildifer -short -covermode=atomic -timeout=5m ./pkg/... depends_on: - wire-install - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: test-backend - commands: - apk add --update build-base @@ -2895,7 +2898,7 @@ steps: | grep -o '\(.*\)/' | sort -u) depends_on: - wire-install - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: test-backend-integration trigger: event: @@ -2940,7 +2943,7 @@ steps: from_secret: gcp_key_base64 GITHUB_TOKEN: from_secret: github_token - GO_VERSION: 1.21.1 + GO_VERSION: 1.20.8 GPG_PASSPHRASE: from_secret: packages_gpg_passphrase GPG_PRIVATE_KEY: @@ -3000,7 +3003,7 @@ steps: from_secret: gcp_key_base64 GITHUB_TOKEN: from_secret: github_token - GO_VERSION: 1.21.1 + GO_VERSION: 1.20.8 GPG_PASSPHRASE: from_secret: packages_gpg_passphrase GPG_PRIVATE_KEY: @@ -3122,7 +3125,7 @@ steps: from_secret: gcp_key_base64 GITHUB_TOKEN: from_secret: github_token - GO_VERSION: 1.21.1 + GO_VERSION: 1.20.8 GPG_PASSPHRASE: from_secret: packages_gpg_passphrase GPG_PRIVATE_KEY: @@ -3253,20 +3256,20 @@ steps: - commands: [] depends_on: - clone - image: golang:1.21.1-windowsservercore-1809 + image: golang:1.20.8-windowsservercore-1809 name: windows-init - commands: - go install github.com/google/wire/cmd/wire@v0.5.0 - wire gen -tags oss ./pkg/server depends_on: - windows-init - image: golang:1.21.1-windowsservercore-1809 + image: golang:1.20.8-windowsservercore-1809 name: wire-install - commands: - go test -tags requires_buildifer -short -covermode=atomic -timeout=5m ./pkg/... depends_on: - wire-install - image: golang:1.21.1-windowsservercore-1809 + image: golang:1.20.8-windowsservercore-1809 name: test-backend trigger: event: @@ -3353,7 +3356,7 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-cue depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-cue - commands: - '# It is required that generated jsonnet is committed and in sync with its inputs.' @@ -3362,14 +3365,14 @@ steps: - apk add --update make - CODEGEN_VERIFY=1 make gen-jsonnet depends_on: [] - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: verify-gen-jsonnet - commands: - apk add --update make - make gen-go depends_on: - verify-gen-cue - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: wire-install - commands: - dockerize -wait tcp://postgres:5432 -timeout 120s @@ -3390,7 +3393,7 @@ steps: GRAFANA_TEST_DB: postgres PGPASSWORD: grafanatest POSTGRES_HOST: postgres - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: postgres-integration-tests - commands: - dockerize -wait tcp://mysql57:3306 -timeout 120s @@ -3411,7 +3414,7 @@ steps: environment: GRAFANA_TEST_DB: mysql MYSQL_HOST: mysql57 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: mysql-5.7-integration-tests - commands: - dockerize -wait tcp://mysql80:3306 -timeout 120s @@ -3432,7 +3435,7 @@ steps: environment: GRAFANA_TEST_DB: mysql MYSQL_HOST: mysql80 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: mysql-8.0-integration-tests - commands: - dockerize -wait tcp://redis:6379 -timeout 120s @@ -3447,7 +3450,7 @@ steps: - wait-for-redis environment: REDIS_URL: redis://redis:6379/0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: redis-integration-tests - commands: - dockerize -wait tcp://memcached:11211 -timeout 120s @@ -3462,7 +3465,7 @@ steps: - wait-for-memcached environment: MEMCACHED_HOSTS: memcached:11211 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: memcached-integration-tests trigger: event: @@ -3868,7 +3871,7 @@ steps: path: /root/.docker/ - commands: - trivy --exit-code 0 --severity UNKNOWN,LOW,MEDIUM alpine/git:2.40.1 - - trivy --exit-code 0 --severity UNKNOWN,LOW,MEDIUM golang:1.21.1-alpine + - trivy --exit-code 0 --severity UNKNOWN,LOW,MEDIUM golang:1.20.8-alpine - trivy --exit-code 0 --severity UNKNOWN,LOW,MEDIUM node:18.12.0-alpine - trivy --exit-code 0 --severity UNKNOWN,LOW,MEDIUM google/cloud-sdk:431.0.0 - trivy --exit-code 0 --severity UNKNOWN,LOW,MEDIUM grafana/grafana-ci-deploy:1.3.3 @@ -3901,7 +3904,7 @@ steps: path: /root/.docker/ - commands: - trivy --exit-code 1 --severity HIGH,CRITICAL alpine/git:2.40.1 - - trivy --exit-code 1 --severity HIGH,CRITICAL golang:1.21.1-alpine + - trivy --exit-code 1 --severity HIGH,CRITICAL golang:1.20.8-alpine - trivy --exit-code 1 --severity HIGH,CRITICAL node:18.12.0-alpine - trivy --exit-code 1 --severity HIGH,CRITICAL google/cloud-sdk:431.0.0 - trivy --exit-code 1 --severity HIGH,CRITICAL grafana/grafana-ci-deploy:1.3.3 @@ -3968,7 +3971,7 @@ steps: depends_on: [] environment: CGO_ENABLED: 0 - image: golang:1.21.1-alpine + image: golang:1.20.8-alpine name: compile-build-cmd - commands: - ./bin/build publish grafana-com --edition oss @@ -4173,6 +4176,6 @@ kind: secret name: gcr_credentials --- kind: signature -hmac: 3f0b291de7bb76eea4fe7ca2416f95bf54c18a0e4b87f707b883524f223efa21 +hmac: 2377fe24974b84795a81cb799a5b597c3150ac8a6d1d408f42eb054628a0a9b4 ... diff --git a/scripts/ci-frontend-metrics.sh b/scripts/ci-frontend-metrics.sh index f2f084f0047..a3cd4f60f7e 100755 --- a/scripts/ci-frontend-metrics.sh +++ b/scripts/ci-frontend-metrics.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash set -e ERROR_COUNT="0" diff --git a/scripts/drone/pipelines/build.star b/scripts/drone/pipelines/build.star index 462ab1352a8..b354c4dc5eb 100644 --- a/scripts/drone/pipelines/build.star +++ b/scripts/drone/pipelines/build.star @@ -76,7 +76,7 @@ def build_e2e(trigger, ver_mode): build_steps.extend( [ build_frontend_package_step(), - rgm_package_step(distros = "linux/amd64,linux/arm64", file = "packages.txt"), + rgm_package_step(distros = "linux/amd64,linux/arm64,linux/arm/v7", file = "packages.txt"), grafana_server_step(), e2e_tests_step("dashboards-suite"), e2e_tests_step("smoke-tests-suite"), diff --git a/scripts/drone/pipelines/shellcheck.star b/scripts/drone/pipelines/shellcheck.star index 6b7e2182ad5..7f56c553976 100644 --- a/scripts/drone/pipelines/shellcheck.star +++ b/scripts/drone/pipelines/shellcheck.star @@ -29,8 +29,9 @@ trigger = { def shellcheck_step(): return { "name": "shellcheck", - "image": images["shellcheck"], + "image": images["ubuntu"], "commands": [ + "apt-get update -yq && apt-get install shellcheck", "shellcheck -e SC1071 -e SC2162 scripts/**/*.sh", ], } diff --git a/scripts/drone/steps/lib.star b/scripts/drone/steps/lib.star index c5a29fab80b..ed4dbb20277 100644 --- a/scripts/drone/steps/lib.star +++ b/scripts/drone/steps/lib.star @@ -633,8 +633,8 @@ def frontend_metrics_step(trigger = None): }, "failure": "ignore", "commands": [ - "apk add --update bash", - "./scripts/ci-frontend-metrics.sh | ./bin/build publish-metrics $${GRAFANA_MISC_STATS_API_KEY}", + "apk add --update bash grep", + "./scripts/ci-frontend-metrics.sh | ./bin/build publish-metrics $$GRAFANA_MISC_STATS_API_KEY", ], } if trigger: diff --git a/scripts/drone/steps/rgm.star b/scripts/drone/steps/rgm.star index 2e5d17e19a4..495b443e4a0 100644 --- a/scripts/drone/steps/rgm.star +++ b/scripts/drone/steps/rgm.star @@ -3,6 +3,11 @@ Individual steps that use 'grafana-build' to replace existing individual steps. These aren't used in releases. """ +load( + "scripts/drone/variables.star", + "golang_version", +) + # rgm_package_step will create a tar.gz for use in e2e tests or other PR testing related activities.. def rgm_package_step(distros = "linux/amd64,linux/arm64", file = "packages.txt"): return { @@ -12,6 +17,7 @@ def rgm_package_step(distros = "linux/amd64,linux/arm64", file = "packages.txt") "depends_on": ["yarn-install"], "commands": [ "/src/grafana-build package --distro={} ".format(distros) + + "--go-version={} ".format(golang_version) + "--yarn-cache=$$YARN_CACHE_FOLDER " + "--build-id=$$DRONE_BUILD_NUMBER " + "--grafana-dir=$$PWD > {}".format(file), @@ -28,7 +34,9 @@ def rgm_build_backend_step(distros = "linux/amd64,linux/arm64"): "image": "grafana/grafana-build:main", "pull": "always", "commands": [ - "/src/grafana-build build --distro={} --grafana-dir=$$PWD".format(distros), + "/src/grafana-build build " + + "--go-version={} ".format(golang_version) + + "--distro={} --grafana-dir=$$PWD".format(distros), ], "volumes": [{"name": "docker", "path": "/var/run/docker.sock"}], } diff --git a/scripts/drone/variables.star b/scripts/drone/variables.star index ac3fc09961b..f650e1e6c5a 100644 --- a/scripts/drone/variables.star +++ b/scripts/drone/variables.star @@ -3,7 +3,7 @@ global variables """ grabpl_version = "v3.0.41" -golang_version = "1.21.1" +golang_version = "1.20.8" # nodejs_version should match what's in ".nvmrc", but without the v prefix. nodejs_version = "18.12.0"