mirror of
https://github.com/grafana/grafana.git
synced 2025-08-01 07:11:51 +08:00
Releasing: start splitting out publish phase (#41959)
This commit is contained in:
@ -77,11 +77,15 @@ def release_npm_packages_step(edition, ver_mode):
|
|||||||
}
|
}
|
||||||
|
|
||||||
def get_steps(edition, ver_mode):
|
def get_steps(edition, ver_mode):
|
||||||
|
build_steps = []
|
||||||
|
package_steps = []
|
||||||
|
windows_package_steps = []
|
||||||
|
publish_steps = []
|
||||||
should_publish = ver_mode in ('release', 'test-release',)
|
should_publish = ver_mode in ('release', 'test-release',)
|
||||||
should_upload = should_publish or ver_mode in ('release-branch',)
|
should_upload = should_publish or ver_mode in ('release-branch',)
|
||||||
include_enterprise2 = edition == 'enterprise'
|
include_enterprise2 = edition == 'enterprise'
|
||||||
|
|
||||||
steps = [
|
build_steps = [
|
||||||
codespell_step(),
|
codespell_step(),
|
||||||
shellcheck_step(),
|
shellcheck_step(),
|
||||||
lint_backend_step(edition=edition),
|
lint_backend_step(edition=edition),
|
||||||
@ -100,7 +104,7 @@ def get_steps(edition, ver_mode):
|
|||||||
|
|
||||||
edition2 = 'enterprise2'
|
edition2 = 'enterprise2'
|
||||||
if include_enterprise2:
|
if include_enterprise2:
|
||||||
steps.extend([
|
build_steps.extend([
|
||||||
lint_backend_step(edition=edition2),
|
lint_backend_step(edition=edition2),
|
||||||
test_backend_step(edition=edition2),
|
test_backend_step(edition=edition2),
|
||||||
test_backend_integration_step(edition=edition2),
|
test_backend_integration_step(edition=edition2),
|
||||||
@ -108,7 +112,7 @@ def get_steps(edition, ver_mode):
|
|||||||
])
|
])
|
||||||
|
|
||||||
# Insert remaining steps
|
# Insert remaining steps
|
||||||
steps.extend([
|
build_steps.extend([
|
||||||
package_step(edition=edition, ver_mode=ver_mode, include_enterprise2=include_enterprise2),
|
package_step(edition=edition, ver_mode=ver_mode, include_enterprise2=include_enterprise2),
|
||||||
e2e_tests_server_step(edition=edition),
|
e2e_tests_server_step(edition=edition),
|
||||||
e2e_tests_step(edition=edition, tries=3),
|
e2e_tests_step(edition=edition, tries=3),
|
||||||
@ -119,26 +123,26 @@ def get_steps(edition, ver_mode):
|
|||||||
|
|
||||||
build_storybook = build_storybook_step(edition=edition, ver_mode=ver_mode)
|
build_storybook = build_storybook_step(edition=edition, ver_mode=ver_mode)
|
||||||
if build_storybook:
|
if build_storybook:
|
||||||
steps.append(build_storybook)
|
build_steps.append(build_storybook)
|
||||||
|
|
||||||
if include_enterprise2:
|
if include_enterprise2:
|
||||||
steps.extend([redis_integration_tests_step(edition=edition2), memcached_integration_tests_step(edition=edition2)])
|
build_steps.extend([redis_integration_tests_step(edition=edition2), memcached_integration_tests_step(edition=edition2)])
|
||||||
|
|
||||||
if should_upload:
|
if should_upload:
|
||||||
steps.append(upload_cdn_step(edition=edition))
|
publish_steps.append(upload_cdn_step(edition=edition))
|
||||||
steps.append(upload_packages_step(edition=edition, ver_mode=ver_mode))
|
publish_steps.append(upload_packages_step(edition=edition, ver_mode=ver_mode))
|
||||||
if should_publish:
|
if should_publish:
|
||||||
publish_step = publish_storybook_step(edition=edition, ver_mode=ver_mode)
|
publish_step = publish_storybook_step(edition=edition, ver_mode=ver_mode)
|
||||||
release_npm_step = release_npm_packages_step(edition=edition, ver_mode=ver_mode)
|
release_npm_step = release_npm_packages_step(edition=edition, ver_mode=ver_mode)
|
||||||
if publish_step:
|
if publish_step:
|
||||||
steps.append(publish_step)
|
publish_steps.append(publish_step)
|
||||||
if release_npm_step:
|
if release_npm_step:
|
||||||
steps.append(release_npm_step)
|
publish_steps.append(release_npm_step)
|
||||||
windows_steps = get_windows_steps(edition=edition, ver_mode=ver_mode)
|
windows_package_steps = get_windows_steps(edition=edition, ver_mode=ver_mode)
|
||||||
|
|
||||||
if include_enterprise2:
|
if include_enterprise2:
|
||||||
edition2 = 'enterprise2'
|
edition2 = 'enterprise2'
|
||||||
steps.extend([
|
publish_steps.extend([
|
||||||
package_step(edition=edition2, ver_mode=ver_mode, include_enterprise2=include_enterprise2, variants=['linux-x64']),
|
package_step(edition=edition2, ver_mode=ver_mode, include_enterprise2=include_enterprise2, variants=['linux-x64']),
|
||||||
e2e_tests_server_step(edition=edition2, port=3002),
|
e2e_tests_server_step(edition=edition2, port=3002),
|
||||||
e2e_tests_step(edition=edition2, port=3002, tries=3),
|
e2e_tests_step(edition=edition2, port=3002, tries=3),
|
||||||
@ -147,22 +151,23 @@ def get_steps(edition, ver_mode):
|
|||||||
if should_upload:
|
if should_upload:
|
||||||
step = upload_packages_step(edition=edition2, ver_mode=ver_mode)
|
step = upload_packages_step(edition=edition2, ver_mode=ver_mode)
|
||||||
if step:
|
if step:
|
||||||
steps.append(step)
|
publish_steps.append(step)
|
||||||
|
|
||||||
return steps, windows_steps
|
return build_steps, package_steps, windows_package_steps, publish_steps
|
||||||
|
|
||||||
def get_oss_pipelines(trigger, ver_mode):
|
def get_oss_pipelines(trigger, ver_mode):
|
||||||
edition = 'oss'
|
edition = 'oss'
|
||||||
services = integration_test_services(edition=edition)
|
services = integration_test_services(edition=edition)
|
||||||
steps, windows_steps = get_steps(edition=edition, ver_mode=ver_mode)
|
build_steps, package_steps, windows_package_steps, publish_steps = get_steps(edition=edition, ver_mode=ver_mode)
|
||||||
return [
|
return [
|
||||||
pipeline(
|
pipeline(
|
||||||
name='oss-build-{}'.format(ver_mode), edition=edition, trigger=trigger, services=services,
|
name='oss-build-{}'.format(ver_mode), edition=edition, trigger=trigger, services=services,
|
||||||
steps=[download_grabpl_step()] + initialize_step(edition, platform='linux', ver_mode=ver_mode) + steps,
|
steps=[download_grabpl_step()] + initialize_step(edition, platform='linux', ver_mode=ver_mode) +
|
||||||
|
build_steps + package_steps + publish_steps,
|
||||||
),
|
),
|
||||||
pipeline(
|
pipeline(
|
||||||
name='oss-windows-{}'.format(ver_mode), edition=edition, trigger=trigger,
|
name='oss-windows-{}'.format(ver_mode), edition=edition, trigger=trigger,
|
||||||
steps=[download_grabpl_step()] + initialize_step(edition, platform='windows', ver_mode=ver_mode) + windows_steps,
|
steps=[download_grabpl_step()] + initialize_step(edition, platform='windows', ver_mode=ver_mode) + windows_package_steps,
|
||||||
platform='windows', depends_on=['oss-build-{}'.format(ver_mode)],
|
platform='windows', depends_on=['oss-build-{}'.format(ver_mode)],
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
@ -170,15 +175,16 @@ def get_oss_pipelines(trigger, ver_mode):
|
|||||||
def get_enterprise_pipelines(trigger, ver_mode):
|
def get_enterprise_pipelines(trigger, ver_mode):
|
||||||
edition = 'enterprise'
|
edition = 'enterprise'
|
||||||
services = integration_test_services(edition=edition)
|
services = integration_test_services(edition=edition)
|
||||||
steps, windows_steps = get_steps(edition=edition, ver_mode=ver_mode)
|
build_steps, package_steps, windows_package_steps, publish_steps = get_steps(edition=edition, ver_mode=ver_mode)
|
||||||
return [
|
return [
|
||||||
pipeline(
|
pipeline(
|
||||||
name='enterprise-build-{}'.format(ver_mode), edition=edition, trigger=trigger, services=services,
|
name='enterprise-build-{}'.format(ver_mode), edition=edition, trigger=trigger, services=services,
|
||||||
steps=[download_grabpl_step()] + initialize_step(edition, platform='linux', ver_mode=ver_mode) + steps,
|
steps=[download_grabpl_step()] + initialize_step(edition, platform='linux', ver_mode=ver_mode) +
|
||||||
|
build_steps + package_steps + publish_steps,
|
||||||
),
|
),
|
||||||
pipeline(
|
pipeline(
|
||||||
name='enterprise-windows-{}'.format(ver_mode), edition=edition, trigger=trigger,
|
name='enterprise-windows-{}'.format(ver_mode), edition=edition, trigger=trigger,
|
||||||
steps=[download_grabpl_step()] + initialize_step(edition, platform='windows', ver_mode=ver_mode) + windows_steps,
|
steps=[download_grabpl_step()] + initialize_step(edition, platform='windows', ver_mode=ver_mode) + windows_package_steps,
|
||||||
platform='windows', depends_on=['enterprise-build-{}'.format(ver_mode)],
|
platform='windows', depends_on=['enterprise-build-{}'.format(ver_mode)],
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
|
Reference in New Issue
Block a user