Skip to content
Snippets Groups Projects
Commit 5762a54c authored by Tim Jaacks's avatar Tim Jaacks
Browse files

Yocto build: unify image and SDK package jobs

Image and SDK package jobs call the same package script just with
different arguments. Instead of having two job classes `package_release`
and `package_sdk` for these two tasks, merge them into the base class
`package` and make the differences configurable via a variable
`PACKAGE_TYPE`.
parent 8e72eac2
No related branches found
No related tags found
1 merge request!278Yocto build: unify image and SDK package jobs
Pipeline #71368 passed with warnings with stage
in 2 minutes and 24 seconds
......@@ -179,6 +179,9 @@ workflow:
# Using misc runner because it runs on the same machine as the build runner. This
# is the only way of being able to use the cache between build and package jobs.
- misc
rules:
- if: $PACKAGE_TYPE == "image"
- if: $PACKAGE_TYPE == "sdk"
artifacts:
paths:
- release/**/**/*
......@@ -188,47 +191,30 @@ workflow:
before_script:
# We do this manually since we do not use GitLab's default artifact downloader
- source build.env
.pull_build_cache: &pull_build_cache
key: ${CI_PIPELINE_ID}-${ASSOCIATED_BUILD_JOB}
policy: pull
.push_package_cache: &push_package_cache
key: ${CI_PIPELINE_ID}-${CI_JOB_NAME}
policy: push
paths:
- release
- package.env
.package_release:
extends:
- .package
script:
# BUILD_PATH_* variables are available via build.env from build job
- if [[ "${PACKAGE_TYPE}" == "image" ]]; then
- .gitlab-ci/scripts/package_release.py
--images-dir="${BUILD_PATH_IMAGE}"
--licenses-dir="${BUILD_PATH_LICENSE}"
--doc-dir=.
--output-dir=release
--release-suffix="${RELEASE_SUFFIX}"
cache:
- <<: *pull_build_cache
paths: *artifacts_paths
- *push_package_cache
.package_sdk:
extends:
- .package
script:
# BUILD_PATH_* variables are available via build.env from build job
- elif [[ "${PACKAGE_TYPE}" == "sdk" ]]; then
- .gitlab-ci/scripts/package_release.py
--sdk-dir="${BUILD_PATH_SDK}"
--output-dir=release
--release-suffix="${RELEASE_SUFFIX}"
- fi
cache:
- <<: *pull_build_cache
- key: ${CI_PIPELINE_ID}-${ASSOCIATED_BUILD_JOB}
policy: pull
paths: *artifacts_paths
- *push_package_cache
- key: ${CI_PIPELINE_ID}-${CI_JOB_NAME}
policy: push
paths:
- release
- package.env
# --------------------------------------------------------------------------------------
# Stage: deploy
......
......@@ -185,16 +185,18 @@ smoketest:seco-mx6:
# Stage: Package
# --------------------------------------------------------------------------------------
package-seco-mx6:
extends: .package_release
extends: .package
variables:
PACKAGE_TYPE: image
ASSOCIATED_BUILD_JOB: simulate-build-seco-mx6
needs:
- job: simulate-build-seco-mx6
artifacts: false
package-sdk-seco-mx6:
extends: .package_sdk
extends: .package
variables:
PACKAGE_TYPE: sdk
ASSOCIATED_BUILD_JOB: simulate-buildsdk-seco-mx6
needs:
- job: simulate-buildsdk-seco-mx6
......
......@@ -143,8 +143,9 @@ platformtest:{{ machine }}:
# --------------------------------------------------------------------------------------
{% if CI_PARAM_IMAGE %}
package-{{ machine }}:
extends: .package_release
extends: .package
variables:
PACKAGE_TYPE: image
ASSOCIATED_BUILD_JOB: build-{{ machine }}
needs:
- job: build-{{ machine }}
......@@ -152,8 +153,9 @@ package-{{ machine }}:
- job: changelog
packagesdk-{{ machine }}:
extends: .package_sdk
extends: .package
variables:
PACKAGE_TYPE: sdk
ASSOCIATED_BUILD_JOB: buildsdk-{{ machine }}
needs:
- job: buildsdk-{{ machine }}
......@@ -162,8 +164,9 @@ packagesdk-{{ machine }}:
{% if CI_PARAM_IMAGE_FNG %}
package-{{ machine }}-fngsystem:
extends: .package_release
extends: .package
variables:
PACKAGE_TYPE: image
ASSOCIATED_BUILD_JOB: build-{{ machine }}-fngsystem
needs:
- job: build-{{ machine }}-fngsystem
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment