add redis integration test for enterprise (#32617)
This commit is contained in:
+40
-9
@@ -1,4 +1,4 @@
|
||||
grabpl_version = '0.5.43'
|
||||
grabpl_version = '0.5.48'
|
||||
build_image = 'grafana/build-container:1.4.1'
|
||||
publish_image = 'grafana/grafana-ci-deploy:1.3.1'
|
||||
grafana_docker_image = 'grafana/drone-grafana-docker:0.3.2'
|
||||
@@ -799,6 +799,23 @@ def mysql_integration_tests_step():
|
||||
],
|
||||
}
|
||||
|
||||
def redis_integration_tests_step():
|
||||
return {
|
||||
'name': 'redis-integration-tests',
|
||||
'image': build_image,
|
||||
'depends_on': [
|
||||
'test-backend',
|
||||
'test-frontend',
|
||||
],
|
||||
'environment': {
|
||||
'REDIS_URL': 'redis://redis:6379/0',
|
||||
},
|
||||
'commands': [
|
||||
'./bin/dockerize -wait tcp://redis:6379/0 -timeout 120s',
|
||||
'./bin/grabpl integration-tests',
|
||||
],
|
||||
}
|
||||
|
||||
def release_canary_npm_packages_step(edition):
|
||||
if edition in ('enterprise', 'enterprise2'):
|
||||
return None
|
||||
@@ -856,15 +873,20 @@ def upload_packages_step(edition, ver_mode, is_downstream=False):
|
||||
else:
|
||||
cmd = './bin/grabpl upload-packages --edition {}{}'.format(edition, packages_bucket)
|
||||
|
||||
dependencies = [
|
||||
'package' + enterprise2_sfx(edition),
|
||||
'end-to-end-tests' + enterprise2_sfx(edition),
|
||||
'mysql-integration-tests',
|
||||
'postgres-integration-tests',
|
||||
]
|
||||
|
||||
if edition in ('enterprise', 'enterprise2'):
|
||||
dependencies.append('redis-integration-tests')
|
||||
|
||||
return {
|
||||
'name': 'upload-packages' + enterprise2_sfx(edition),
|
||||
'image': publish_image,
|
||||
'depends_on': [
|
||||
'package' + enterprise2_sfx(edition),
|
||||
'end-to-end-tests' + enterprise2_sfx(edition),
|
||||
'mysql-integration-tests',
|
||||
'postgres-integration-tests',
|
||||
],
|
||||
'depends_on': dependencies,
|
||||
'environment': {
|
||||
'GCP_GRAFANA_UPLOAD_KEY': {
|
||||
'from_secret': 'gcp_key',
|
||||
@@ -1047,8 +1069,8 @@ def get_windows_steps(edition, ver_mode, is_downstream=False):
|
||||
|
||||
return steps
|
||||
|
||||
def integration_test_services():
|
||||
return [
|
||||
def integration_test_services(edition):
|
||||
services = [
|
||||
{
|
||||
'name': 'postgres',
|
||||
'image': 'postgres:12.3-alpine',
|
||||
@@ -1069,3 +1091,12 @@ def integration_test_services():
|
||||
},
|
||||
},
|
||||
]
|
||||
|
||||
if edition in ('enterprise', 'enterprise2'):
|
||||
services.append({
|
||||
'name': 'redis',
|
||||
'image': 'redis:6.2.1-alpine',
|
||||
'environment': {},
|
||||
})
|
||||
|
||||
return services
|
||||
|
||||
+8
-1
@@ -20,6 +20,7 @@ load(
|
||||
'build_docker_images_step',
|
||||
'postgres_integration_tests_step',
|
||||
'mysql_integration_tests_step',
|
||||
'redis_integration_tests_step',
|
||||
'get_windows_steps',
|
||||
'benchmark_ldap_step',
|
||||
'ldap_service',
|
||||
@@ -77,6 +78,12 @@ def get_steps(edition, is_downstream=False):
|
||||
build_docker_images_step(edition=edition, ver_mode=ver_mode, ubuntu=True, publish=publish),
|
||||
postgres_integration_tests_step(),
|
||||
mysql_integration_tests_step(),
|
||||
])
|
||||
|
||||
if include_enterprise2:
|
||||
steps.append(redis_integration_tests_step())
|
||||
|
||||
steps.extend([
|
||||
release_canary_npm_packages_step(edition),
|
||||
upload_packages_step(edition=edition, ver_mode=ver_mode, is_downstream=is_downstream),
|
||||
deploy_to_kubernetes_step(edition=edition, is_downstream=is_downstream),
|
||||
@@ -104,7 +111,7 @@ def get_steps(edition, is_downstream=False):
|
||||
return steps, windows_steps, publish_steps
|
||||
|
||||
def master_pipelines(edition):
|
||||
services = integration_test_services()
|
||||
services = integration_test_services(edition)
|
||||
trigger = {
|
||||
'event': ['push',],
|
||||
'branch': 'master',
|
||||
|
||||
+3
-1
@@ -21,6 +21,7 @@ load(
|
||||
'build_docker_images_step',
|
||||
'postgres_integration_tests_step',
|
||||
'mysql_integration_tests_step',
|
||||
'redis_integration_tests_step',
|
||||
'benchmark_ldap_step',
|
||||
'ldap_service',
|
||||
'integration_test_services',
|
||||
@@ -29,7 +30,7 @@ load(
|
||||
ver_mode = 'pr'
|
||||
|
||||
def pr_pipelines(edition):
|
||||
services = integration_test_services()
|
||||
services = integration_test_services(edition)
|
||||
variants = ['linux-x64', 'linux-x64-musl', 'osx64', 'win64',]
|
||||
include_enterprise2 = edition == 'enterprise'
|
||||
steps = [
|
||||
@@ -72,6 +73,7 @@ def pr_pipelines(edition):
|
||||
|
||||
if include_enterprise2:
|
||||
steps.extend([
|
||||
redis_integration_tests_step(),
|
||||
package_step(edition=edition2, ver_mode=ver_mode, variants=['linux-x64']),
|
||||
e2e_tests_server_step(edition=edition2, port=3002),
|
||||
e2e_tests_step(edition=edition2, port=3002),
|
||||
|
||||
@@ -22,6 +22,7 @@ load(
|
||||
'build_docker_images_step',
|
||||
'postgres_integration_tests_step',
|
||||
'mysql_integration_tests_step',
|
||||
'redis_integration_tests_step',
|
||||
'get_windows_steps',
|
||||
'benchmark_ldap_step',
|
||||
'ldap_service',
|
||||
@@ -101,6 +102,9 @@ def get_steps(edition, ver_mode):
|
||||
mysql_integration_tests_step(),
|
||||
])
|
||||
|
||||
if include_enterprise2:
|
||||
steps.append(redis_integration_tests_step())
|
||||
|
||||
if should_upload:
|
||||
steps.append(upload_cdn(edition=edition))
|
||||
steps.append(upload_packages_step(edition=edition, ver_mode=ver_mode))
|
||||
@@ -125,7 +129,7 @@ def get_steps(edition, ver_mode):
|
||||
return steps, windows_steps
|
||||
|
||||
def get_oss_pipelines(trigger, ver_mode):
|
||||
services = integration_test_services()
|
||||
services = integration_test_services(edition='oss')
|
||||
steps, windows_steps = get_steps(edition='oss', ver_mode=ver_mode)
|
||||
return [
|
||||
pipeline(
|
||||
@@ -139,7 +143,7 @@ def get_oss_pipelines(trigger, ver_mode):
|
||||
]
|
||||
|
||||
def get_enterprise_pipelines(trigger, ver_mode):
|
||||
services = integration_test_services()
|
||||
services = integration_test_services(edition='enterprise')
|
||||
steps, windows_steps = get_steps(edition='enterprise', ver_mode=ver_mode)
|
||||
return [
|
||||
pipeline(
|
||||
@@ -153,7 +157,8 @@ def get_enterprise_pipelines(trigger, ver_mode):
|
||||
]
|
||||
|
||||
def release_pipelines(ver_mode='release', trigger=None):
|
||||
services = integration_test_services()
|
||||
# 'enterprise' edition services contain both OSS and enterprise services
|
||||
services = integration_test_services(edition='enterprise')
|
||||
if not trigger:
|
||||
trigger = {
|
||||
'ref': ['refs/tags/v*',],
|
||||
@@ -188,7 +193,7 @@ def release_pipelines(ver_mode='release', trigger=None):
|
||||
def test_release_pipelines():
|
||||
ver_mode = 'test-release'
|
||||
|
||||
services = integration_test_services()
|
||||
services = integration_test_services(edition='enterprise')
|
||||
trigger = {
|
||||
'event': ['custom',],
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user