Permalink
Cannot retrieve contributors at this time
544 lines (486 sloc)
14.1 KB
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
grafana/.drone.yml
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| kind: pipeline | |
| type: docker | |
| name: test-pr | |
| platform: | |
| os: linux | |
| arch: amd64 | |
| steps: | |
| - name: identify-runner | |
| image: alpine:3.12 | |
| commands: | |
| - echo $DRONE_RUNNER_NAME | |
| - name: initialize | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - curl -fLO https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v$${GRABPL_VERSION}/grabpl | |
| - chmod +x grabpl | |
| - mkdir -p bin | |
| - mv grabpl bin | |
| - curl -fLO https://github.com/jwilder/dockerize/releases/download/v$${DOCKERIZE_VERSION}/dockerize-linux-amd64-v$${DOCKERIZE_VERSION}.tar.gz | |
| - tar -C bin -xzvf dockerize-linux-amd64-v$${DOCKERIZE_VERSION}.tar.gz | |
| - rm dockerize-linux-amd64-v$${DOCKERIZE_VERSION}.tar.gz | |
| - yarn install --frozen-lockfile --no-progress | |
| environment: | |
| DOCKERIZE_VERSION: 0.6.1 | |
| GRABPL_VERSION: 0.5.1 | |
| - name: lint-backend | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - golangci-lint run --config scripts/go/configs/.golangci.toml ./pkg/... | |
| - revive -formatter stylish -config scripts/go/configs/revive.toml ./pkg/... | |
| - ./scripts/revive-strict | |
| environment: | |
| CGO_ENABLED: 1 | |
| depends_on: | |
| - initialize | |
| - name: codespell | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - "echo -e \"unknwon\nreferer\nerrorstring\neror\niam\" > words_to_ignore.txt" | |
| - codespell -I words_to_ignore.txt docs/ | |
| depends_on: | |
| - initialize | |
| - name: shellcheck | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - curl -fLO http://storage.googleapis.com/grafana-downloads/ci-dependencies/shellcheck-v$${VERSION}.linux.x86_64.tar.xz | |
| - echo $$CHKSUM shellcheck-v$${VERSION}.linux.x86_64.tar.xz | sha512sum --check --strict --status | |
| - tar xf shellcheck-v$${VERSION}.linux.x86_64.tar.xz | |
| - mv shellcheck-v$${VERSION}/shellcheck /usr/local/bin/ | |
| - rm -rf shellcheck-v$${VERSION}* | |
| - ./bin/grabpl shellcheck | |
| environment: | |
| CHKSUM: beca3d7819a6bdcfbd044576df4fc284053b48f468b2f03428fe66f4ceb2c05d9b5411357fa15003cb0311406c255084cf7283a3b8fce644c340c2f6aa910b9f | |
| VERSION: 0.7.1 | |
| depends_on: | |
| - initialize | |
| - name: build-backend | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - ./bin/grabpl build-backend --jobs 8 --edition oss --build-id $DRONE_BUILD_NUMBER --variants linux-x64,linux-x64-musl,osx64,win64 --no-pull-enterprise | |
| depends_on: | |
| - initialize | |
| - lint-backend | |
| - test-backend | |
| - name: build-frontend | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - ./bin/grabpl build-frontend --jobs 8 --no-install-deps --edition oss --build-id $DRONE_BUILD_NUMBER --no-pull-enterprise | |
| depends_on: | |
| - initialize | |
| - test-frontend | |
| - name: test-backend | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - ./bin/grabpl test-backend | |
| - ./bin/grabpl integration-tests | |
| depends_on: | |
| - initialize | |
| - lint-backend | |
| - name: test-frontend | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - yarn run prettier:check | |
| - yarn run packages:typecheck | |
| - yarn run typecheck | |
| - yarn run test | |
| environment: | |
| TEST_MAX_WORKERS: 50% | |
| depends_on: | |
| - initialize | |
| - name: build-plugins | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - ./bin/grabpl build-plugins --jobs 8 --edition oss --no-install-deps | |
| depends_on: | |
| - initialize | |
| - lint-backend | |
| - name: package | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - . scripts/build/gpg-test-vars.sh && ./bin/grabpl package --jobs 8 --edition oss --build-id $DRONE_BUILD_NUMBER --no-pull-enterprise --variants linux-x64,linux-x64-musl,osx64,win64 | |
| depends_on: | |
| - build-backend | |
| - build-frontend | |
| - build-plugins | |
| - test-backend | |
| - test-frontend | |
| - codespell | |
| - shellcheck | |
| - name: end-to-end-tests-server | |
| image: grafana/build-container:1.2.24 | |
| detach: true | |
| commands: | |
| - ./e2e/start-server | |
| depends_on: | |
| - package | |
| - name: end-to-end-tests | |
| image: grafana/ci-e2e:12.18-1 | |
| commands: | |
| - ./node_modules/.bin/cypress install | |
| - ./e2e/wait-for-grafana | |
| - ./e2e/run-suite | |
| environment: | |
| HOST: end-to-end-tests-server | |
| depends_on: | |
| - end-to-end-tests-server | |
| - name: build-storybook | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - yarn storybook:build | |
| depends_on: | |
| - package | |
| - name: build-docs-website | |
| image: grafana/docs-base:latest | |
| commands: | |
| - mkdir -p /hugo/content/docs/grafana | |
| - cp -r docs/sources /hugo/content/docs/grafana/latest | |
| - cd /hugo && make prod | |
| depends_on: | |
| - initialize | |
| - name: copy-packages-for-docker | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - cp dist/*.tar.gz packaging/docker/ | |
| depends_on: | |
| - package | |
| - name: build-docker-images | |
| image: grafana/drone-grafana-docker:0.2.0 | |
| settings: | |
| archs: amd64 | |
| dry_run: true | |
| edition: oss | |
| depends_on: | |
| - copy-packages-for-docker | |
| - name: postgres-integration-tests | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - apt-get update | |
| - apt-get install -yq postgresql-client | |
| - ./bin/dockerize -wait tcp://postgres:5432 -timeout 120s | |
| - psql -p 5432 -h postgres -U grafanatest -d grafanatest -f devenv/docker/blocks/postgres_tests/setup.sql | |
| - go clean -testcache | |
| - ./bin/grabpl integration-tests --database postgres | |
| environment: | |
| GRAFANA_TEST_DB: postgres | |
| PGPASSWORD: grafanatest | |
| POSTGRES_HOST: postgres | |
| depends_on: | |
| - test-backend | |
| - test-frontend | |
| - name: mysql-integration-tests | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - apt-get update | |
| - apt-get install -yq default-mysql-client | |
| - ./bin/dockerize -wait tcp://mysql:3306 -timeout 120s | |
| - cat devenv/docker/blocks/mysql_tests/setup.sql | mysql -h mysql -P 3306 -u root -prootpass | |
| - go clean -testcache | |
| - ./bin/grabpl integration-tests --database mysql | |
| environment: | |
| GRAFANA_TEST_DB: mysql | |
| MYSQL_HOST: mysql | |
| depends_on: | |
| - test-backend | |
| - test-frontend | |
| services: | |
| - name: postgres | |
| image: postgres:12.3-alpine | |
| environment: | |
| POSTGRES_DB: grafanatest | |
| POSTGRES_PASSWORD: grafanatest | |
| POSTGRES_USER: grafanatest | |
| - name: mysql | |
| image: mysql:5.6.48 | |
| environment: | |
| MYSQL_DATABASE: grafana_tests | |
| MYSQL_PASSWORD: password | |
| MYSQL_ROOT_PASSWORD: rootpass | |
| MYSQL_USER: grafana | |
| trigger: | |
| event: | |
| - pull_request | |
| --- | |
| kind: pipeline | |
| type: docker | |
| name: test-master | |
| platform: | |
| os: linux | |
| arch: amd64 | |
| steps: | |
| - name: identify-runner | |
| image: alpine:3.12 | |
| commands: | |
| - echo $DRONE_RUNNER_NAME | |
| - name: initialize | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - curl -fLO https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v$${GRABPL_VERSION}/grabpl | |
| - chmod +x grabpl | |
| - mkdir -p bin | |
| - mv grabpl bin | |
| - curl -fLO https://github.com/jwilder/dockerize/releases/download/v$${DOCKERIZE_VERSION}/dockerize-linux-amd64-v$${DOCKERIZE_VERSION}.tar.gz | |
| - tar -C bin -xzvf dockerize-linux-amd64-v$${DOCKERIZE_VERSION}.tar.gz | |
| - rm dockerize-linux-amd64-v$${DOCKERIZE_VERSION}.tar.gz | |
| - yarn install --frozen-lockfile --no-progress | |
| environment: | |
| DOCKERIZE_VERSION: 0.6.1 | |
| GRABPL_VERSION: 0.5.1 | |
| - name: lint-backend | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - golangci-lint run --config scripts/go/configs/.golangci.toml ./pkg/... | |
| - revive -formatter stylish -config scripts/go/configs/revive.toml ./pkg/... | |
| - ./scripts/revive-strict | |
| environment: | |
| CGO_ENABLED: 1 | |
| depends_on: | |
| - initialize | |
| - name: codespell | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - "echo -e \"unknwon\nreferer\nerrorstring\neror\niam\" > words_to_ignore.txt" | |
| - codespell -I words_to_ignore.txt docs/ | |
| depends_on: | |
| - initialize | |
| - name: shellcheck | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - curl -fLO http://storage.googleapis.com/grafana-downloads/ci-dependencies/shellcheck-v$${VERSION}.linux.x86_64.tar.xz | |
| - echo $$CHKSUM shellcheck-v$${VERSION}.linux.x86_64.tar.xz | sha512sum --check --strict --status | |
| - tar xf shellcheck-v$${VERSION}.linux.x86_64.tar.xz | |
| - mv shellcheck-v$${VERSION}/shellcheck /usr/local/bin/ | |
| - rm -rf shellcheck-v$${VERSION}* | |
| - ./bin/grabpl shellcheck | |
| environment: | |
| CHKSUM: beca3d7819a6bdcfbd044576df4fc284053b48f468b2f03428fe66f4ceb2c05d9b5411357fa15003cb0311406c255084cf7283a3b8fce644c340c2f6aa910b9f | |
| VERSION: 0.7.1 | |
| depends_on: | |
| - initialize | |
| - name: build-backend | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - ./bin/grabpl build-backend --jobs 8 --edition oss --build-id $DRONE_BUILD_NUMBER | |
| depends_on: | |
| - initialize | |
| - lint-backend | |
| - test-backend | |
| - name: build-frontend | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - ./bin/grabpl build-frontend --jobs 8 --no-install-deps --edition oss --build-id $DRONE_BUILD_NUMBER --no-pull-enterprise | |
| depends_on: | |
| - initialize | |
| - test-frontend | |
| - name: test-backend | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - ./bin/grabpl test-backend | |
| - ./bin/grabpl integration-tests | |
| depends_on: | |
| - initialize | |
| - lint-backend | |
| - name: test-frontend | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - yarn run prettier:check | |
| - yarn run packages:typecheck | |
| - yarn run typecheck | |
| - yarn run test | |
| environment: | |
| TEST_MAX_WORKERS: 50% | |
| depends_on: | |
| - initialize | |
| - name: build-plugins | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - ./bin/grabpl build-plugins --jobs 8 --edition oss --no-install-deps | |
| depends_on: | |
| - initialize | |
| - lint-backend | |
| - name: package | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - . scripts/build/gpg-test-vars.sh && ./bin/grabpl package --jobs 8 --edition oss --build-id $DRONE_BUILD_NUMBER --no-pull-enterprise | |
| depends_on: | |
| - build-backend | |
| - build-frontend | |
| - build-plugins | |
| - test-backend | |
| - test-frontend | |
| - codespell | |
| - shellcheck | |
| - name: end-to-end-tests-server | |
| image: grafana/build-container:1.2.24 | |
| detach: true | |
| commands: | |
| - ./e2e/start-server | |
| depends_on: | |
| - package | |
| - name: end-to-end-tests | |
| image: grafana/ci-e2e:12.18-1 | |
| commands: | |
| - ./node_modules/.bin/cypress install | |
| - ./e2e/wait-for-grafana | |
| - ./e2e/run-suite | |
| environment: | |
| HOST: end-to-end-tests-server | |
| depends_on: | |
| - end-to-end-tests-server | |
| - name: build-storybook | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - yarn storybook:build | |
| depends_on: | |
| - package | |
| - name: publish-storybook | |
| image: grafana/grafana-ci-deploy:1.2.5 | |
| commands: | |
| - printenv GCP_KEY | base64 -d > /tmp/gcpkey.json | |
| - gcloud auth activate-service-account --key-file=/tmp/gcpkey.json | |
| - echo gsutil -m rsync -d -r ./packages/grafana-ui/dist/storybook gs://grafana-storybook/canary | |
| environment: | |
| GCP_KEY: | |
| from_secret: gcp_key | |
| depends_on: | |
| - build-storybook | |
| - name: build-docs-website | |
| image: grafana/docs-base:latest | |
| commands: | |
| - mkdir -p /hugo/content/docs/grafana | |
| - cp -r docs/sources /hugo/content/docs/grafana/latest | |
| - cd /hugo && make prod | |
| depends_on: | |
| - initialize | |
| - name: copy-packages-for-docker | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - cp dist/*.tar.gz packaging/docker/ | |
| depends_on: | |
| - package | |
| - name: build-docker-images | |
| image: grafana/drone-grafana-docker:0.2.0 | |
| settings: | |
| dry_run: true | |
| edition: oss | |
| depends_on: | |
| - copy-packages-for-docker | |
| - name: build-docker-images-ubuntu | |
| image: grafana/drone-grafana-docker:0.2.0 | |
| settings: | |
| dry_run: true | |
| edition: oss | |
| ubuntu: true | |
| depends_on: | |
| - copy-packages-for-docker | |
| - name: postgres-integration-tests | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - apt-get update | |
| - apt-get install -yq postgresql-client | |
| - ./bin/dockerize -wait tcp://postgres:5432 -timeout 120s | |
| - psql -p 5432 -h postgres -U grafanatest -d grafanatest -f devenv/docker/blocks/postgres_tests/setup.sql | |
| - go clean -testcache | |
| - ./bin/grabpl integration-tests --database postgres | |
| environment: | |
| GRAFANA_TEST_DB: postgres | |
| PGPASSWORD: grafanatest | |
| POSTGRES_HOST: postgres | |
| depends_on: | |
| - test-backend | |
| - test-frontend | |
| - name: mysql-integration-tests | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - apt-get update | |
| - apt-get install -yq default-mysql-client | |
| - ./bin/dockerize -wait tcp://mysql:3306 -timeout 120s | |
| - cat devenv/docker/blocks/mysql_tests/setup.sql | mysql -h mysql -P 3306 -u root -prootpass | |
| - go clean -testcache | |
| - ./bin/grabpl integration-tests --database mysql | |
| environment: | |
| GRAFANA_TEST_DB: mysql | |
| MYSQL_HOST: mysql | |
| depends_on: | |
| - test-backend | |
| - test-frontend | |
| - name: release-next-npm-packages | |
| image: grafana/build-container:1.2.24 | |
| commands: | |
| - npx lerna bootstrap | |
| - echo "//registry.npmjs.org/:_authToken=$${NPM_TOKEN}" >> ~/.npmrc | |
| - echo ./scripts/circle-release-next-packages.sh | |
| environment: | |
| NPM_TOKEN: | |
| from_secret: npm_token | |
| depends_on: | |
| - end-to-end-tests | |
| - name: publish-packages | |
| image: grafana/grafana-ci-deploy:1.2.5 | |
| commands: | |
| - echo ./bin/grabpl publish-packages --edition oss | |
| depends_on: | |
| - package | |
| - end-to-end-tests | |
| - mysql-integration-tests | |
| - postgres-integration-tests | |
| services: | |
| - name: postgres | |
| image: postgres:12.3-alpine | |
| environment: | |
| POSTGRES_DB: grafanatest | |
| POSTGRES_PASSWORD: grafanatest | |
| POSTGRES_USER: grafanatest | |
| - name: mysql | |
| image: mysql:5.6.48 | |
| environment: | |
| MYSQL_DATABASE: grafana_tests | |
| MYSQL_PASSWORD: password | |
| MYSQL_ROOT_PASSWORD: rootpass | |
| MYSQL_USER: grafana | |
| trigger: | |
| branch: | |
| - master | |
| event: | |
| - push | |
| --- | |
| kind: pipeline | |
| type: docker | |
| name: windows-installer-master | |
| platform: | |
| os: windows | |
| arch: amd64 | |
| version: 1809 | |
| steps: | |
| - name: identify-runner | |
| image: mcr.microsoft.com/windows:1809 | |
| commands: | |
| - echo $Env:DRONE_RUNNER_NAME | |
| - name: build-windows-installer | |
| image: grafana/ci-wix:0.1.1 | |
| commands: | |
| - $$gcpKey = $$env:GCP_KEY | |
| - "[System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String($$gcpKey)) > gcpkey.json" | |
| - dos2unix gcpkey.json | |
| - gcloud auth activate-service-account --key-file=gcpkey.json | |
| - rm gcpkey.json | |
| - $$ProgressPreference = "SilentlyContinue" | |
| - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/grafana-build-pipeline/v0.5.1/windows/grabpl.exe -OutFile grabpl.exe | |
| - Invoke-WebRequest https://grafana-downloads.storage.googleapis.com/oss/master/grafana-7.2.0-9fffe273pre.windows-amd64.zip -OutFile grafana.zip | |
| - cp C:\App\nssm-2.24.zip . | |
| - ./grabpl.exe windows-installer --edition oss grafana.zip | |
| - $$fname = ((Get-Childitem grafana*.msi -name) -split "`n")[0] | |
| - echo "gsutil cp $$fname gs://grafana-downloads/oss/master/" | |
| - echo "gsutil cp $$fname.sha256 gs://grafana-downloads/oss/master/" | |
| environment: | |
| GCP_KEY: | |
| from_secret: gcp_key | |
| trigger: | |
| branch: | |
| - master | |
| event: | |
| - push | |
| depends_on: | |
| - test-master | |
| ... |