- Sep 18, 2023
-
-
GitBot authored
-- Commit: seco-ne/yocto/infrastructure/gitlab-ci@64dc51d3 Use regex operator to check for multiple variables The "&&" operator does not work as expected when checking if multiple variables are set. See for reference: https://gitlab.com/gitlab-org/gitlab/-/issues/321371 -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@89fbce24 Hide Confluence stage if confluence variables not set -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@db50e93b Hide deploy stage if DEPLOY_RELEASE_TARGET not set -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@f4aa0048 Hide FTP stage if DEPLOY_FTP_TARGET not set This makes the variable HIDE_FTP_UPLOAD_STAGE obsolete, because we can hide the FTP stage now by setting DEPLOY_FTP_TARGET to an empty string. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@409c4f27 Do not run CI test sub-pipeline on master
-
- Sep 15, 2023
-
-
GitBot authored
-- Commit: seco-ne/yocto/infrastructure/gitlab-ci@a731b156 Remove DISTRO_IMAGES This variable has been removed in Yocto. Its contents have been merged into DISTRO_RELEASE_ARTEFACTS. See for reference: seco-ne/yocto/layers/meta-seconorth-distro@a316e95e
-
- Sep 14, 2023
-
-
GitBot authored
-- Commit: seco-ne/yocto/infrastructure/gitlab-ci@45f2aca7 Refactoring: remove parsing of testdata.json in package stage Extract and save these variables in the build stage instead and explicitly pass them as arguments to the package script. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@8ca2487d Move .simulate_build below .build_yocto -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@2808f067 Fix build.env contents for simulated build -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@73d00715 Pretty print release metadata JSON file
-
- Sep 08, 2023
-
-
GitBot authored
-- Commit: seco-ne/yocto/infrastructure/gitlab-ci@f2a29f53 Refactoring: remove RELEASE_NAME from deploy targets Append it to the configured target at the deploy class level instead. This removes the need for eval'ing the variables before usage. RELEASE_NAME can be used directly at the class level because it is known from build-version.env. This makes the deploy behavior identical to the Azure stage. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@e136e5e2 Remove top-level "release" folder from package -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@1d5e479f Define MACHINE variable on job level Instead of passing MACHINE from stage to stage or loading it from testdata.json, use the original value from the Jinja2 loop and set it directly for each job where it is used. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@cdd47023 Introduce separate variables to set RELEASE_NAME and RELEASE_VERSION The expressions to calculate RELEASE_NAME and RELEASE_VERSION cannot be stored within these variables themseselves. If set on the trigger level, they would override the calculated values in build-version.env then, as trigger variables always have the highest precedence. Use separate variables RELEASE_VERSION_EXPRESSION and RELEASE_NAME_EXPRESSION to define how RELEASE_VERSION and RELEASE_NAME are calculated instead. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@372d192b Use RELEASE_VERSION and RELEASE_NAME from build-version job Instead of passing these variables from stage to stage or regenerating their values in later stages, use the ones set in the build-version job at all places. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@cad30c20 Remove RELEASE_SUFFIX variable The RELEASE_NAME variable can be set directly now, so there's no need to have a dedicated RELEASE_SUFFIX anymore. A previous configuration like RELEASE_SUFFIX: "-custom" can now be achieved using: RELEASE_NAME: "Yocto-${RELEASE_VERSION}-custom" -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@922f49f8 Add yocto version job This adds a machine-independent job "build-version" which populates the RELEASE_VERSION and RELEASE_NAME variables, so that following jobs can use these without depending on the various build jobs. The variables can be set from the trigger job in a project's `.gitlab-ci.yml` file. They are eval'ed before saving them to version.env, so we can use deferred variable expansion or even command execution to construct their values. This mechanism is already used for the Flash-N-Go System variables. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@073ae81e LAVA: rename MACHINE to LAVA_MACHINE Rename variable in order to avoid confusion with the original MACHINE variable used everywhere else. Also rename the local Jinja2 variable to include an underscore to make naming consistent. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@a91baa55 Clean build.env before writing This had been accidentally removed in 5e36715ef6cf98df4c1b98fedddc0c3c50ed4040. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@1860ca8e Remove LOG_PREFIX variable This was used in times when the same code was executed from different places. We don't do that anymore, so the variable is obsolete. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@3d2dbe4d Documentation: update job generation chapter
-
- Sep 04, 2023
-
-
GitBot authored
-- Commit: seco-ne/yocto/infrastructure/gitlab-ci@17b87f84 Refactoring: remove CI_PARAM_ prefix from variables There is no need to add a prefix to the variables. Basically every variable can be set or overridden at the trigger level, so we just use plain variable names for everything. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@825f3686 Refactoring: do not rename *_PATH variables in build.env We were using different variable names for the same variable in build and package stages. Unify these names in order to reduce potential confusion. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@2346bb98 Refactoring: make build variable naming consistent Use underscore to separate words within variable name. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@581541b9 Refactoring: improve FNG_INSTALL_URL definition FNG_INSTALL_URL was defined in build.env only, and in order to use it during the build we sourced build.env after writing it. Remove this workaround and define the variable cleanly in the first place. This removes the intermediate variable FNG_INSTALL_PATH. Also move the "/artifact" path from JOB_URL to FNG_INSTALL_URL in order to make the JOB_URL variable name match better. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@35784f29 Refactoring: improve IMAGEPATH et al. definition On every usage of IMAGEPATH, SDKPATH and LICENSESPATH we prepended BUILDPATH to it. Prepend it directly on definition to prevent repetition. Also remove redundant variable IMAGEBASEPATH. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@5e36715e Remove needless variables from build.env There were three variables set in build.env of which the values are already known in the environment for all jobs, because they are passed from the parent pipeline. Use the original variables instead of defining new ones. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@84aa6afb Fix LAVA job name -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@8160c7d5 Sourcery: enable "low-code-quality" check globally Disable it locally instead, so that 1. new code additions are always checked, and 2. we can refactor one function at a time to make the check pass. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@ef60c378 Sourcery: keep "for-append-to-extend" check disabled This is another check that suggests changes an average developer without profound Python experience would find hard to understand. Disable it. See for reference: https://docs.sourcery.ai/Reference/Python/Default-Rules/for-append-to-extend/
-
- Aug 28, 2023
-
-
GitBot authored
-- Commit: seco-ne/yocto/infrastructure/gitlab-ci@cf371aca alphaplan_fwr: Remove obsolete pkg.py artifact The pkg.py file is no longer deployed by the build process. See commit seco-ne/yocto/layers/meta-seconorth-distro@e79e8579 -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@b2b43f71 Sourcery: keep "use-named-expression" check disabled This suggestion aims to reduce code size, but IMO for the expense of readability for non-python-experts, so we disable it. See for reference: https://docs.sourcery.ai/Reference/Python/Default-Rules/use-named-expression/ -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@ae8c5423 Sourcery: keep "use-next" check disabled I don't see any benefit in accepting the refactoring suggestions based on this rule. IMO it makes the code harder to read, especially for non- experienced Python developers. See for reference: https://docs.sourcery.ai/Reference/Python/Default-Rules/use-next/ -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@9462f826 Refactoring: raise specific errors See for reference: https://docs.sourcery.ai/Reference/Python/Default-Rules/raise-specific-error/ -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@61eb3e11 Switch all strings to formatted string literals (f-strings) The old printf-style string formatting syntax using '%' is not recommended anymore. See for reference: https://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting https://docs.sourcery.ai/Reference/Python/Default-Rules/replace-interpolation-with-fstring/ Python 3.6 introduced f-strings as a better alternative: https://docs.python.org/3/reference/lexical_analysis.html#f-strings Consequently switch to this new syntax for all strings.
-
GitBot authored
-- Commit: seco-ne/yocto/infrastructure/gitlab-ci@b2fb3e93 Combine build-yocto.yml and and build-common.yml to build-pipeline.yml
-
- Aug 24, 2023
-
-
GitBot authored
-- Commit: seco-ne/yocto/infrastructure/gitlab-ci@e6808701 Add "Deploy Azure" stage This stage contains jobs to deploy packaged artifacts to our Azure blob storage. The required variables `AZURE_STORAGE_ACCOUNT` and `AZURE_STORAGE_SAS_TOKEN` are stored in the GitLab CI/CD variables. The storage container `AZURE_CONTAINER_NAME` and artifact path `AZURE_TARGET_FOLDER` are passed from the parent pipeline.
-
- Aug 22, 2023
-
-
GitBot authored
-- Commit: seco-ne/yocto/infrastructure/gitlab-ci@f8c1d732 Add confluence stage This adds two jobs to the Yocto pipeline: - generate-confluence-page - publish-confluence-page The first one generates a confluence page from a template (`confluence-page.xml.jinja2`) using information downloaded from all successful "Deploy FTP" jobs of the same pipeline. The second one publishes this page in Confluence and displays a link to the new page. If the page already exists it is overwritten. The place in Confluence where the new page is published is configurable via the `CONFLUENCE_SPACE` and `CONFLUENCE_PARENT_ID` variables. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@fee9493b generate-build-pipeline: re-add YAML format parsing This was accidentally forgotten in the previous commit. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@9b777f29 Rename "generate_job_from_template" script to "render_jinja2_template" This makes the script more general and open for other future purposes. The parsing of the YAML content is conditional now, depending on the new "format" argument.
-
- Aug 11, 2023
-
-
GitBot authored
-- Commit: seco-ne/yocto/infrastructure/gitlab-ci@b20f6b95 Use multiple CI test pipelines Instead of mixing dedicated CI test jobs and Yocto build simulation jobs within one pipeline, use the new multi-build-pipelines architecture to split them up into separate child pipelines. This also makes most of the Yocto pipeline code reusable, so that we don't have to declare all the jobs again in ci-test.
-
GitBot authored
-- Commit: seco-ne/yocto/infrastructure/gitlab-ci@f9dc2517 Rename "build jobs" to "build pipeline" -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@633c9fb4 get_pipeline_jobs: remove redundant job ID output -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@347745c5 download_job_artifacts: add error message if artifact not found -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@50f7396d ci-test: re-enable build simulation caching In 438f1e2aae23472d692ce6314e8c683f950657d2 we accidentally disabled caching for the build simulation by moving the cache definition to a job class. The order of inheritance led to the cache configuration being overwritten by the one of the "buildbase" class. Change inheritance order to fix this. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@30f7d966 update_submodule: fix integration branch name in case of multiple MRs When there are multiple open merge requests for a commit, we currently take the newest one to determine the integration branch name. This is not necessarily the correct one, we can have an open merge request with the commit being part of the commit history while the top commit is a different one. Add a check if the commit is the top commit of the merge request in order to get the correct integration branch name in these cases. -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@438f1e2a ci-test: use more recent release for build simulation -- Commit: seco-ne/yocto/infrastructure/gitlab-ci@1c900bf9 Update docs/add-new-project-to-pipeline.md
-
- Aug 04, 2023
-
-
Jonas Höppner authored
BCS 746-001463
-