Skip to content
Snippets Groups Projects
  1. Nov 03, 2023
  2. Oct 23, 2023
    • Tim Jaacks's avatar
      Remove Alphaplan stage · 6f773de5
      Tim Jaacks authored
      We do not use Alphaplan anymore. Remove everything Alphaplan related
      stuff from the pipeline.
      6f773de5
  3. Oct 17, 2023
    • Tim Jaacks's avatar
      Fix ci-test SDK download · d6d4ab61
      Tim Jaacks authored
      Since the implementation of multiple child pipelines we cannot use the
      previous artifacts download links anymore specifying tag and job name,
      because the jobs for image build and SDK build are equal. Use direct
      download links instead via job number.
      d6d4ab61
  4. Oct 13, 2023
  5. Sep 25, 2023
  6. Sep 18, 2023
  7. Sep 15, 2023
  8. Sep 12, 2023
  9. Sep 08, 2023
  10. Sep 07, 2023
    • Tim Jaacks's avatar
      Use RELEASE_VERSION and RELEASE_NAME from build-version job · 372d192b
      Tim Jaacks authored
      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.
      372d192b
    • Tim Jaacks's avatar
      Add yocto version job · 922f49f8
      Tim Jaacks authored
      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.
      922f49f8
    • Tim Jaacks's avatar
      LAVA: rename MACHINE to LAVA_MACHINE · 073ae81e
      Tim Jaacks authored
      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.
      073ae81e
  11. Sep 04, 2023
  12. Aug 25, 2023
  13. Aug 24, 2023
    • Tim Jaacks's avatar
      Add "Deploy Azure" stage · e6808701
      Tim Jaacks authored
      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.
      e6808701
  14. Aug 22, 2023
    • Tim Jaacks's avatar
      Add confluence stage · f8c1d732
      Tim Jaacks authored
      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.
      f8c1d732
  15. Aug 11, 2023
    • Tim Jaacks's avatar
      Use multiple CI test pipelines · b20f6b95
      Tim Jaacks authored
      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.
      b20f6b95
    • Tim Jaacks's avatar
      Rename "build jobs" to "build pipeline" · f9dc2517
      Tim Jaacks authored
      f9dc2517
  16. Jul 27, 2023
    • Tim Jaacks's avatar
      Yocto build: separate images in multiple pipelines · 9406ad75
      Tim Jaacks authored
      Instead of building the Yocto image, the Yocto SDK and the FNGSystem
      image in one single pipeline, separate them into three independent
      pipelines that are triggered in parallel.
      
      This makes the concept more modular: we have a single general pipeline
      now which is configurable from outside via variables. Hence we can have
      a custom number of pipelines along with custom build targets in each
      project without having to make code changes in the gitlab-ci project.
      
      The default Yocto manifest pipeline configures three build pipelines:
      
      - yocto-build-jobs
      - sdk-build-jobs
      - fngsystem-build-jobs
      
      In a project including the Yocto manifest pipeline, we can disable
      certain build pipelines using job rules, e.g. disabling the SDK build:
      
      sdk-build-jobs:
        rules:
          - when: never
      
      Furthermore we can add more pipelines by simply adding jobs extending
      the '.build-jobs' class in the project's .gitlab-ci.yml:
      
      yocto-custom-build-jobs:
        extends:
          - .build-jobs
        variables:
          BITBAKE_TASK: build
          CI_PARAM_IMAGE: custom-image
          CI_PARAM_DISTRO: custom-distro
          PACKAGE_TYPE: image
      9406ad75
  17. Jul 25, 2023
    • Tim Jaacks's avatar
      Yocto build: unify image and SDK package jobs · 5762a54c
      Tim Jaacks authored
      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`.
      5762a54c
    • Tim Jaacks's avatar
      Yocto build: add variable for manual builds · 8e72eac2
      Tim Jaacks authored
      Instead of hard-coding the rules for manual builds in each actual job,
      conditionally add this to the `buildbase` class and add a variable
      `MANUAL_BUILD` to the according jobs.
      8e72eac2
    • Tim Jaacks's avatar
      Yocto build: unify image and SDK build jobs · e6d71996
      Tim Jaacks authored
      Image and SDK builds share a lot of similar code. Instead of having two
      job classes `build_yocto_image` and `build_yocto_sdk` for these two
      tasks, merge them into the base class `build_yocto` and make the
      differences configurable via a variable.
      
      The `dump_install_command` part of the script, which was not executed
      for SDK builds, is always present now, but it's only executed if the
      `INSTALLSCRIPT` variable is set, which is not the case for SDK builds.
      
      The `collect_srcrevs` part of the script is executed in all cases. It
      was not part of the SDK build before, but it's not less relevant there.
      e6d71996
    • Tim Jaacks's avatar
      Yocto build: make main artifacts path configurable · f892500f
      Tim Jaacks authored
      Instead of specifying all possible artifacts paths and abusing the fact
      that GitLab ignores non-existing paths during artifact upload, implement
      a cleaner solution with a configurable path.
      f892500f
  18. Feb 10, 2023
  19. Feb 06, 2023
    • Tim Jaacks's avatar
      Changelog generator: pass projects as arguments · e6ae06dd
      Tim Jaacks authored
      Instead of hard-coding the project list in the changelog generator
      script, make them passable via arguments. This way we can have different
      changelogs in different envrionments. Hence we're adding the changelog
      job in the ci-test environment as well.
      e6ae06dd
  20. Dec 19, 2022
  21. Aug 30, 2022
  22. Aug 29, 2022
  23. Aug 05, 2022
  24. Jul 13, 2022
    • Jonas Höppner's avatar
      CI: Lava Test: Allow to install test image directly from gitlab · ab09db0b
      Jonas Höppner authored
      The images from the build job can be directly installed from gitlab.
      To achive this some changes in the complete pipeline have been needed.
      
      1. The variables used in the build job, like CI_PARAM_IMAGE, ... and
         related variables like BUILDPATH are only valid in the build job now.
      2. The build job writes every variable needed in a follow up job into
         build.env. This also includes the url to the fng-install.sh of the
         final image.
      3. The build.env file is used as dotenv artifact, as well as normal
         file artifact.
         The dotenv make the written variables automatically available in
         follow up jobs, that are using the aritfacts, like the deploy job.
         The normal file artifact is available via artifact download.
         (I did't found a way to download the dotenv file instead)
      4. Some scripts have been added:
         - Find a job inside the pipeline by name, as the id is not known in
           advance.
         - Download all artifacts or one file of the artifacts from a given
           job
         - Download one file of the latest job by name
      5. The scripts are used to download the build.env into the test job
         (where not artifacts are needed anymore)
      6. The script is sourced and all variables are available inside the
         script.
      
      Additionally this adds a fake build job to the ci-test pipeline, that
      copies an image from srv73 and stores it as artifact in a way that a
      test-job can run on it, like in the normal yocto pipeline.
      ab09db0b
  25. Jul 12, 2022
  26. Jul 07, 2022
Loading