CI: Remove grafana/drone-grafana-docker image (#44983) (#45011)

* Remove grafana/drone-grafana-docker image

* Rename step

* Remove manual gcloud authentication

(cherry picked from commit 329b1a1ef3903c7e2c3ec1f286f9b0f00fcd023e)

* Add publish command for main

* Fix TAG variable parsing

* Remove shouldSave from main builds

* Reorder dependencies

* Update grabpl version

(cherry picked from commit 5543ad883d)

Co-authored-by: Dimitris Sotirakis <sotirakis.dim@gmail.com>
This commit is contained in:
Grot (@grafanabot)
2022-02-07 19:19:27 +01:00
committed by GitHub
co-authored by Dimitris Sotirakis
parent d9eb80f7f5
commit c4da73ce4d
4 changed files with 164 additions and 150 deletions
+5 -2
View File
@@ -21,6 +21,7 @@ load(
'build_frontend_docs_step',
'copy_packages_for_docker_step',
'build_docker_images_step',
'publish_images_step',
'postgres_integration_tests_step',
'mysql_integration_tests_step',
'redis_integration_tests_step',
@@ -111,8 +112,10 @@ def get_steps(edition, is_downstream=False):
frontend_metrics_step(edition=edition),
build_frontend_docs_step(edition=edition),
copy_packages_for_docker_step(),
build_docker_images_step(edition=edition, ver_mode=ver_mode, publish=publish),
build_docker_images_step(edition=edition, ver_mode=ver_mode, ubuntu=True, publish=publish),
build_docker_images_step(edition=edition, ver_mode=ver_mode, publish=False),
build_docker_images_step(edition=edition, ver_mode=ver_mode, ubuntu=True, publish=False),
publish_images_step(edition=edition, ver_mode=ver_mode, mode='', docker_repo='grafana', ubuntu=False),
publish_images_step(edition=edition, ver_mode=ver_mode, mode='', docker_repo='grafana-oss', ubuntu=True)
])
if include_enterprise2:
+7 -27
View File
@@ -23,7 +23,7 @@ load(
'e2e_tests_artifacts',
'build_storybook_step',
'copy_packages_for_docker_step',
'package_docker_images_step',
'build_docker_images_step',
'postgres_integration_tests_step',
'mysql_integration_tests_step',
'redis_integration_tests_step',
@@ -36,7 +36,8 @@ load(
'store_packages_step',
'upload_cdn_step',
'validate_scuemata_step',
'ensure_cuetsified_step'
'ensure_cuetsified_step',
'publish_images_step'
)
load(
@@ -117,27 +118,6 @@ def release_npm_packages_step():
],
}
def publish_images_step(edition, mode, docker_repo):
if mode == 'security':
mode = '--{} '.format(mode)
else:
mode = ''
return {
'name': 'publish-images-{}'.format(docker_repo),
'image': 'google/cloud-sdk',
'environment': {
'GCP_KEY': from_secret('gcp_key'),
'DOCKER_USER': from_secret('docker_username'),
'DOCKER_PASSWORD': from_secret('docker_password'),
},
'commands': ['./bin/grabpl artifacts docker publish {}--version-tag ${{TAG}} --dockerhub-repo {} --base alpine --base ubuntu --arch amd64 --arch arm64 --arch armv7'.format(mode, docker_repo)],
'depends_on': ['fetch-images-{}'.format(edition)],
'volumes': [{
'name': 'docker',
'path': '/var/run/docker.sock'
}],
}
def fetch_images_step(edition):
return {
'name': 'fetch-images-{}'.format(edition),
@@ -159,10 +139,10 @@ def publish_image_steps(version, mode, docker_repo, additional_docker_repo=""):
steps = [
download_grabpl_step(),
fetch_images_step(version),
publish_images_step(version, mode, docker_repo),
publish_images_step(version, 'release', mode, docker_repo),
]
if additional_docker_repo != "":
steps.extend([publish_images_step(version, mode, additional_docker_repo)])
steps.extend([publish_images_step(version, 'release', mode, additional_docker_repo)])
return steps
@@ -224,8 +204,8 @@ def get_steps(edition, ver_mode):
build_steps.extend([
package_step(edition=edition, ver_mode=ver_mode, include_enterprise2=include_enterprise2),
copy_packages_for_docker_step(),
package_docker_images_step(edition=edition, ver_mode=ver_mode, publish=should_publish),
package_docker_images_step(edition=edition, ver_mode=ver_mode, ubuntu=True, publish=should_publish),
build_docker_images_step(edition=edition, ver_mode=ver_mode, publish=True),
build_docker_images_step(edition=edition, ver_mode=ver_mode, ubuntu=True, publish=True),
grafana_server_step(edition=edition),
])
+32 -25
View File
@@ -1,9 +1,8 @@
load('scripts/drone/vault.star', 'from_secret', 'github_token', 'pull_secret', 'drone_token', 'prerelease_bucket')
grabpl_version = 'v2.8.8'
grabpl_version = 'v2.8.9'
build_image = 'grafana/build-container:1.4.9'
publish_image = 'grafana/grafana-ci-deploy:1.3.1'
grafana_docker_image = 'grafana/drone-grafana-docker:0.3.2'
deploy_docker_image = 'us.gcr.io/kubernetes-dev/drone/plugins/deploy-image'
alpine_image = 'alpine:3.15'
curl_image = 'byrnedo/alpine-curl:0.1.8'
@@ -731,8 +730,11 @@ def copy_packages_for_docker_step():
}
def package_docker_images_step(edition, ver_mode, archs=None, ubuntu=False, publish=False):
cmd = './bin/grabpl build-docker --edition {} --shouldSave'.format(edition)
def build_docker_images_step(edition, ver_mode, archs=None, ubuntu=False, publish=False):
cmd = './bin/grabpl build-docker --edition {}'.format(edition)
if publish:
cmd += ' --shouldSave'
ubuntu_sfx = ''
if ubuntu:
ubuntu_sfx = '-ubuntu'
@@ -742,12 +744,10 @@ def package_docker_images_step(edition, ver_mode, archs=None, ubuntu=False, publ
cmd += ' -archs {}'.format(','.join(archs))
return {
'name': 'package-docker-images' + ubuntu_sfx,
'name': 'build-docker-images' + ubuntu_sfx,
'image': 'google/cloud-sdk',
'depends_on': ['copy-packages-for-docker'],
'commands': [
'printenv GCP_KEY | base64 -d > /tmp/gcpkey.json',
'gcloud auth activate-service-account --key-file=/tmp/gcpkey.json',
cmd
],
'volumes': [{
@@ -759,27 +759,34 @@ def package_docker_images_step(edition, ver_mode, archs=None, ubuntu=False, publ
},
}
def build_docker_images_step(edition, ver_mode, archs=None, ubuntu=False, publish=False):
ubuntu_sfx = ''
if ubuntu:
ubuntu_sfx = '-ubuntu'
def publish_images_step(edition, ver_mode, mode, docker_repo, ubuntu=False):
if mode == 'security':
mode = '--{} '.format(mode)
else:
mode = ''
settings = {
'dry_run': not publish,
'edition': edition,
'ubuntu': ubuntu,
}
cmd = './bin/grabpl artifacts docker publish {}--dockerhub-repo {} --base alpine --base ubuntu --arch amd64 --arch arm64 --arch armv7'.format(mode, docker_repo)
if ver_mode == 'release':
deps = ['fetch-images-{}'.format(edition)]
cmd += ' --version-tag ${TAG}'
else:
deps = ['build-docker-images', 'build-docker-images-ubuntu']
if publish:
settings['username'] = from_secret('docker_user')
settings['password'] = from_secret('docker_password')
if archs:
settings['archs'] = ','.join(archs)
return {
'name': 'build-docker-images' + ubuntu_sfx,
'image': grafana_docker_image,
'depends_on': ['copy-packages-for-docker'],
'settings': settings,
'name': 'publish-images-{}'.format(docker_repo),
'image': 'google/cloud-sdk',
'environment': {
'GCP_KEY': from_secret('gcp_key'),
'DOCKER_USER': from_secret('docker_username'),
'DOCKER_PASSWORD': from_secret('docker_password'),
},
'commands': [cmd],
'depends_on': deps,
'volumes': [{
'name': 'docker',
'path': '/var/run/docker.sock'
}],
}