@ -8,9 +8,15 @@ alpine_image = 'alpine:3.15'
curl_image = 'byrnedo/alpine-curl:0.1.8'
curl_image = 'byrnedo/alpine-curl:0.1.8'
windows_image = 'mcr.microsoft.com/windows:1809'
windows_image = 'mcr.microsoft.com/windows:1809'
wix_image = 'grafana/ci-wix:0.1.1'
wix_image = 'grafana/ci-wix:0.1.1'
test_release_ver = 'v7.3.0-test'
disable_tests = False
disable_tests = False
trigger_oss = {
'when': {
'repo': [
'grafana/grafana',
]
}
}
def slack_step(channel, template, secret):
def slack_step(channel, template, secret):
return {
return {
@ -253,7 +259,7 @@ def build_storybook_step(edition, ver_mode):
}
}
def store_storybook_step(edition, ver_mode):
def store_storybook_step(edition, ver_mode, trigger=None ):
if edition in ('enterprise', 'enterprise2'):
if edition in ('enterprise', 'enterprise2'):
return None
return None
@ -272,7 +278,7 @@ def store_storybook_step(edition, ver_mode):
for c in channels
for c in channels
])
])
return {
step = {
'name': 'store-storybook',
'name': 'store-storybook',
'image': publish_image,
'image': publish_image,
'depends_on': ['build-storybook',] + end_to_end_tests_deps(edition),
'depends_on': ['build-storybook',] + end_to_end_tests_deps(edition),
@ -282,6 +288,9 @@ def store_storybook_step(edition, ver_mode):
},
},
'commands': commands,
'commands': commands,
}
}
if trigger and ver_mode in ("release-branch", "main"):
step.update(trigger)
return step
def e2e_tests_artifacts(edition):
def e2e_tests_artifacts(edition):
return {
return {
@ -322,7 +331,7 @@ def e2e_tests_artifacts(edition):
}
}
def upload_cdn_step(edition, ver_mode):
def upload_cdn_step(edition, ver_mode, trigger=None ):
src_dir = ''
src_dir = ''
if ver_mode == "release":
if ver_mode == "release":
bucket = "$${PRERELEASE_BUCKET}"
bucket = "$${PRERELEASE_BUCKET}"
@ -340,7 +349,7 @@ def upload_cdn_step(edition, ver_mode):
'grafana-server',
'grafana-server',
])
])
return {
step = {
'name': 'upload-cdn-assets' + enterprise2_suffix(edition),
'name': 'upload-cdn-assets' + enterprise2_suffix(edition),
'image': publish_image,
'image': publish_image,
'depends_on': deps,
'depends_on': deps,
@ -352,6 +361,9 @@ def upload_cdn_step(edition, ver_mode):
'./bin/grabpl upload-cdn --edition {} --src-bucket "{}"{}'.format(edition, bucket, src_dir),
'./bin/grabpl upload-cdn --edition {} --src-bucket "{}"{}'.format(edition, bucket, src_dir),
],
],
}
}
if trigger and ver_mode in ("release-branch", "main"):
step.update(trigger)
return step
def build_backend_step(edition, ver_mode, variants=None, is_downstream=False):
def build_backend_step(edition, ver_mode, variants=None, is_downstream=False):
@ -581,11 +593,11 @@ def test_a11y_frontend_step(ver_mode, edition, port=3001):
}
}
def frontend_metrics_step(edition):
def frontend_metrics_step(edition, trigger=None ):
if edition in ('enterprise', 'enterprise2'):
if edition in ('enterprise', 'enterprise2'):
return None
return None
return {
step = {
'name': 'publish-frontend-metrics',
'name': 'publish-frontend-metrics',
'image': build_image,
'image': build_image,
'depends_on': [
'depends_on': [
@ -599,6 +611,9 @@ def frontend_metrics_step(edition):
'./scripts/ci-frontend-metrics.sh | ./bin/grabpl publish-metrics $${GRAFANA_MISC_STATS_API_KEY}',
'./scripts/ci-frontend-metrics.sh | ./bin/grabpl publish-metrics $${GRAFANA_MISC_STATS_API_KEY}',
],
],
}
}
if trigger:
step.update(trigger)
return step
def codespell_step():
def codespell_step():
@ -798,7 +813,7 @@ def build_docker_images_step(edition, ver_mode, archs=None, ubuntu=False, publis
},
},
}
}
def publish_images_step(edition, ver_mode, mode, docker_repo, ubuntu=Fals e):
def publish_images_step(edition, ver_mode, mode, docker_repo, trigger=Non e):
if mode == 'security':
if mode == 'security':
mode = '--{} '.format(mode)
mode = '--{} '.format(mode)
else:
else:
@ -812,7 +827,7 @@ def publish_images_step(edition, ver_mode, mode, docker_repo, ubuntu=False):
else:
else:
deps = ['build-docker-images', 'build-docker-images-ubuntu']
deps = ['build-docker-images', 'build-docker-images-ubuntu']
return {
step = {
'name': 'publish-images-{}'.format(docker_repo),
'name': 'publish-images-{}'.format(docker_repo),
'image': 'google/cloud-sdk',
'image': 'google/cloud-sdk',
'environment': {
'environment': {
@ -827,6 +842,10 @@ def publish_images_step(edition, ver_mode, mode, docker_repo, ubuntu=False):
'path': '/var/run/docker.sock'
'path': '/var/run/docker.sock'
}],
}],
}
}
if trigger and ver_mode in ("release-branch", "main"):
step.update(trigger)
return step
def postgres_integration_tests_step(edition, ver_mode):
def postgres_integration_tests_step(edition, ver_mode):
@ -923,11 +942,11 @@ def memcached_integration_tests_step(edition, ver_mode):
}
}
def release_canary_npm_packages_step(edition):
def release_canary_npm_packages_step(edition, trigger=None ):
if edition in ('enterprise', 'enterprise2'):
if edition in ('enterprise', 'enterprise2'):
return None
return None
return {
step = {
'name': 'release-canary-npm-packages',
'name': 'release-canary-npm-packages',
'image': build_image,
'image': build_image,
'depends_on': end_to_end_tests_deps(edition),
'depends_on': end_to_end_tests_deps(edition),
@ -938,6 +957,9 @@ def release_canary_npm_packages_step(edition):
'./scripts/circle-release-canary-packages.sh',
'./scripts/circle-release-canary-packages.sh',
],
],
}
}
if trigger:
step.update(trigger)
return step
def enterprise2_suffix(edition):
def enterprise2_suffix(edition):
@ -946,7 +968,7 @@ def enterprise2_suffix(edition):
return ''
return ''
def upload_packages_step(edition, ver_mode, is_downstream=False):
def upload_packages_step(edition, ver_mode, is_downstream=False, trigger=None ):
if ver_mode == 'main' and edition in ('enterprise', 'enterprise2') and not is_downstream:
if ver_mode == 'main' and edition in ('enterprise', 'enterprise2') and not is_downstream:
return None
return None
@ -966,7 +988,7 @@ def upload_packages_step(edition, ver_mode, is_downstream=False):
else:
else:
deps.extend(end_to_end_tests_deps(edition))
deps.extend(end_to_end_tests_deps(edition))
return {
step = {
'name': 'upload-packages' + enterprise2_suffix(edition),
'name': 'upload-packages' + enterprise2_suffix(edition),
'image': publish_image,
'image': publish_image,
'depends_on': deps,
'depends_on': deps,
@ -976,6 +998,9 @@ def upload_packages_step(edition, ver_mode, is_downstream=False):
},
},
'commands': [cmd, ],
'commands': [cmd, ],
}
}
if trigger and ver_mode in ("release-branch", "main"):
step.update(trigger)
return step
def store_packages_step(edition, ver_mode, is_downstream=False):
def store_packages_step(edition, ver_mode, is_downstream=False):