CI: Split release test pipelines (#56655)
* Split test release pipelines * Add missing dependencies * Add release branch case when naming pipeline
This commit is contained in:
@@ -61,6 +61,16 @@ load(
|
||||
'drone_change_template',
|
||||
)
|
||||
|
||||
load(
|
||||
'scripts/drone/pipelines/test_frontend.star',
|
||||
'test_frontend',
|
||||
)
|
||||
|
||||
load(
|
||||
'scripts/drone/pipelines/test_backend.star',
|
||||
'test_backend',
|
||||
)
|
||||
|
||||
load('scripts/drone/vault.star', 'from_secret', 'github_token', 'pull_secret', 'drone_token', 'prerelease_bucket')
|
||||
|
||||
def store_npm_packages_step():
|
||||
@@ -113,7 +123,7 @@ def release_npm_packages_step():
|
||||
}
|
||||
|
||||
def get_oss_pipelines(trigger, ver_mode):
|
||||
environment = {'EDITION': 'OSS'}
|
||||
environment = {'EDITION': 'oss'}
|
||||
edition = 'oss'
|
||||
services = integration_test_services(edition=edition)
|
||||
volumes = integration_test_services_volumes()
|
||||
@@ -130,16 +140,6 @@ def get_oss_pipelines(trigger, ver_mode):
|
||||
compile_build_cmd(),
|
||||
]
|
||||
|
||||
test_steps = []
|
||||
|
||||
test_steps.extend([
|
||||
lint_backend_step(edition=edition),
|
||||
lint_frontend_step(),
|
||||
test_backend_step(edition=edition),
|
||||
test_backend_integration_step(edition=edition),
|
||||
test_frontend_step(),
|
||||
])
|
||||
|
||||
build_steps = [
|
||||
build_backend_step(edition=edition, ver_mode=ver_mode),
|
||||
build_frontend_step(edition=edition, ver_mode=ver_mode),
|
||||
@@ -202,11 +202,8 @@ def get_oss_pipelines(trigger, ver_mode):
|
||||
]
|
||||
if not disable_tests:
|
||||
pipelines.extend([
|
||||
pipeline(
|
||||
name='{}-oss-test'.format(ver_mode), edition=edition, trigger=trigger, services=[],
|
||||
steps=init_steps + test_steps,
|
||||
environment=environment, volumes=[],
|
||||
),
|
||||
test_frontend(trigger, ver_mode),
|
||||
test_backend(trigger, ver_mode),
|
||||
pipeline(
|
||||
name='{}-oss-integration-tests'.format(ver_mode), edition=edition, trigger=trigger, services=services,
|
||||
steps=[download_grabpl_step(), identify_runner_step(), verify_gen_cue_step(edition), wire_install_step(), ] + integration_test_steps,
|
||||
@@ -216,7 +213,8 @@ def get_oss_pipelines(trigger, ver_mode):
|
||||
deps = {
|
||||
'depends_on': [
|
||||
'{}-oss-build{}-publish'.format(ver_mode, get_e2e_suffix()),
|
||||
'{}-oss-test'.format(ver_mode),
|
||||
'{}-oss-test-frontend'.format(ver_mode),
|
||||
'{}-oss-test-backend'.format(ver_mode),
|
||||
'{}-oss-integration-tests'.format(ver_mode)
|
||||
]
|
||||
}
|
||||
@@ -226,7 +224,7 @@ def get_oss_pipelines(trigger, ver_mode):
|
||||
return pipelines
|
||||
|
||||
def get_enterprise_pipelines(trigger, ver_mode):
|
||||
environment = {'EDITION': 'ENTERPRISE'}
|
||||
environment = {'EDITION': 'enterprise'}
|
||||
edition = 'enterprise'
|
||||
services = integration_test_services(edition=edition)
|
||||
volumes = integration_test_services_volumes()
|
||||
@@ -244,16 +242,6 @@ def get_enterprise_pipelines(trigger, ver_mode):
|
||||
compile_build_cmd(edition),
|
||||
]
|
||||
|
||||
test_steps = []
|
||||
|
||||
test_steps.extend([
|
||||
lint_backend_step(edition=edition),
|
||||
lint_frontend_step(),
|
||||
test_backend_step(edition=edition),
|
||||
test_backend_integration_step(edition=edition),
|
||||
test_frontend_step(),
|
||||
])
|
||||
|
||||
build_steps = [
|
||||
build_backend_step(edition=edition, ver_mode=ver_mode),
|
||||
build_frontend_step(edition=edition, ver_mode=ver_mode),
|
||||
@@ -267,10 +255,6 @@ def get_enterprise_pipelines(trigger, ver_mode):
|
||||
]
|
||||
|
||||
if include_enterprise:
|
||||
test_steps.extend([
|
||||
lint_backend_step(edition=edition2),
|
||||
test_backend_step(edition=edition2),
|
||||
])
|
||||
build_steps.extend([
|
||||
build_backend_step(edition=edition2, ver_mode=ver_mode, variants=['linux-amd64']),
|
||||
])
|
||||
@@ -344,11 +328,9 @@ def get_enterprise_pipelines(trigger, ver_mode):
|
||||
]
|
||||
if not disable_tests:
|
||||
pipelines.extend([
|
||||
pipeline(
|
||||
name='{}-enterprise-test'.format(ver_mode), edition=edition, trigger=trigger, services=[],
|
||||
steps=init_steps + test_steps, environment=environment,
|
||||
volumes=[],
|
||||
),
|
||||
test_frontend(trigger, ver_mode, edition),
|
||||
test_backend(trigger, ver_mode, edition),
|
||||
test_backend(trigger, ver_mode, edition2),
|
||||
pipeline(
|
||||
name='{}-enterprise-integration-tests'.format(ver_mode), edition=edition, trigger=trigger, services=services,
|
||||
steps=[download_grabpl_step(), identify_runner_step(), clone_enterprise_step(ver_mode), init_enterprise_step(ver_mode), verify_gen_cue_step(edition), wire_install_step()] + integration_test_steps + [redis_integration_tests_step(), memcached_integration_tests_step()],
|
||||
@@ -358,7 +340,8 @@ def get_enterprise_pipelines(trigger, ver_mode):
|
||||
deps = {
|
||||
'depends_on': [
|
||||
'{}-enterprise-build{}-publish'.format(ver_mode, get_e2e_suffix()),
|
||||
'{}-enterprise-test'.format(ver_mode),
|
||||
'{}-enterprise-test-frontend'.format(ver_mode),
|
||||
'{}-enterprise-test-backend'.format(ver_mode),
|
||||
'{}-enterprise-integration-tests'.format(ver_mode)
|
||||
]
|
||||
}
|
||||
|
||||
@@ -13,7 +13,8 @@ load(
|
||||
'pipeline',
|
||||
)
|
||||
|
||||
def test_backend(trigger, ver_mode):
|
||||
def test_backend(trigger, ver_mode, edition="oss"):
|
||||
environment = {'EDITION': edition}
|
||||
init_steps = [
|
||||
identify_runner_step(),
|
||||
compile_build_cmd(),
|
||||
@@ -21,10 +22,13 @@ def test_backend(trigger, ver_mode):
|
||||
wire_install_step(),
|
||||
]
|
||||
test_steps = [
|
||||
test_backend_step(edition="oss"),
|
||||
test_backend_integration_step(edition="oss"),
|
||||
test_backend_step(edition),
|
||||
test_backend_integration_step(edition),
|
||||
]
|
||||
|
||||
pipeline_name = '{}-test-backend'.format(ver_mode)
|
||||
if ver_mode in ("release-branch", "release"):
|
||||
pipeline_name = '{}-{}-test-backend'.format(ver_mode, edition)
|
||||
return pipeline(
|
||||
name='{}-test-backend'.format(ver_mode), edition="oss", trigger=trigger, services=[], steps=init_steps + test_steps,
|
||||
name=pipeline_name, edition=edition, trigger=trigger, services=[], steps=init_steps + test_steps, environment=environment
|
||||
)
|
||||
|
||||
@@ -13,7 +13,8 @@ load(
|
||||
'pipeline',
|
||||
)
|
||||
|
||||
def test_frontend(trigger, ver_mode):
|
||||
def test_frontend(trigger, ver_mode, edition="oss"):
|
||||
environment = {'EDITION': edition}
|
||||
init_steps = [
|
||||
identify_runner_step(),
|
||||
download_grabpl_step(),
|
||||
@@ -24,6 +25,9 @@ def test_frontend(trigger, ver_mode):
|
||||
betterer_frontend_step(),
|
||||
test_frontend_step(),
|
||||
]
|
||||
pipeline_name = '{}-test-frontend'.format(ver_mode)
|
||||
if ver_mode in ("release-branch", "release"):
|
||||
pipeline_name = '{}-{}-test-frontend'.format(ver_mode, edition)
|
||||
return pipeline(
|
||||
name='{}-test-frontend'.format(ver_mode), edition="oss", trigger=trigger, services=[], steps=init_steps + test_steps,
|
||||
name=pipeline_name, edition=edition, trigger=trigger, services=[], steps=init_steps + test_steps,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user