* CI: Remove `grafana/drone-grafana-docker` image (#44983)
* 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)
* Sign drone
This commit is contained in:
@@ -20,6 +20,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',
|
||||
@@ -107,8 +108,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:
|
||||
|
||||
@@ -21,7 +21,7 @@ load(
|
||||
'e2e_tests_step',
|
||||
'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',
|
||||
@@ -34,7 +34,8 @@ load(
|
||||
'store_packages_step',
|
||||
'upload_cdn_step',
|
||||
'validate_scuemata_step',
|
||||
'ensure_cuetsified_step'
|
||||
'ensure_cuetsified_step',
|
||||
'publish_images_step'
|
||||
)
|
||||
|
||||
load(
|
||||
@@ -113,27 +114,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),
|
||||
@@ -155,10 +135,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
|
||||
|
||||
@@ -220,8 +200,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),
|
||||
])
|
||||
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
load('scripts/drone/vault.star', 'from_secret', 'github_token', 'pull_secret', 'drone_token', 'prerelease_bucket')
|
||||
|
||||
grabpl_version = 'v2.8.7'
|
||||
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'
|
||||
@@ -284,8 +283,10 @@ def store_storybook_step(edition, ver_mode):
|
||||
|
||||
|
||||
def upload_cdn_step(edition, ver_mode):
|
||||
src_dir = ''
|
||||
if ver_mode == "release":
|
||||
bucket = "$${PRERELEASE_BUCKET}/artifacts/static-assets"
|
||||
bucket = "$${PRERELEASE_BUCKET}"
|
||||
src_dir = " --src-dir artifacts/static-assets"
|
||||
else:
|
||||
bucket = "grafana-static-assets"
|
||||
|
||||
@@ -694,8 +695,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'
|
||||
@@ -705,12 +709,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': [{
|
||||
@@ -722,27 +724,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'
|
||||
}],
|
||||
}
|
||||
|
||||
|
||||
@@ -867,8 +876,6 @@ def upload_packages_step(edition, ver_mode, is_downstream=False):
|
||||
if ver_mode == 'main' and edition in ('enterprise', 'enterprise2') and not is_downstream:
|
||||
return None
|
||||
|
||||
packages_bucket = ' --packages-bucket $${PRERELEASE_BUCKET}/artifacts/downloads' + enterprise2_suffix(edition)
|
||||
|
||||
if ver_mode == 'release':
|
||||
packages_bucket = '$${{PRERELEASE_BUCKET}}/artifacts/downloads{}'.format(enterprise2_suffix(edition))
|
||||
cmd = './bin/grabpl upload-packages --edition {} --packages-bucket {}'.format(edition, packages_bucket)
|
||||
@@ -966,6 +973,8 @@ def get_windows_steps(edition, ver_mode, is_downstream=False):
|
||||
dir = 'release'
|
||||
else:
|
||||
dir = 'main'
|
||||
bucket = 'grafana-downloads'
|
||||
bucket_part = ' --packages-bucket {}'.format(bucket)
|
||||
if not is_downstream:
|
||||
build_no = 'DRONE_BUILD_NUMBER'
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user