Skip to content
Snippets Groups Projects
  1. Jan 15, 2021
    • Emanuele Aina's avatar
      gitlab-ci: Ensure that `latest` tag comes from the latest pipeline · aa6fd73d
      Emanuele Aina authored
      
      We want to ensure that the jobs updating the `latest` tags always reflect
      the actual latest pipeline.
      
      When two pipelines are started at the same time on the same branch
      sometimes the earlier one can complete last due to scheduling or any
      other reason, thus breaking the previous assumption.
      
      To avoid that, make the whole pipeline interruptible up to the tagging jobs
      so that earlier pipelines get killed when a new one is started.
      
      Signed-off-by: Emanuele Aina's avatarEmanuele Aina <emanuele.aina@collabora.com>
      aa6fd73d
  2. Jan 12, 2021
  3. Dec 18, 2020
    • Frederic Danis's avatar
      Add FOSSology to ci-license-scan · d47d105a
      Frederic Danis authored
      
      To improve license scan process we add license scan using a `FOSSology`
      server.
      
      The `fossology.py` adds an `ApertisFossolgy` class which is able to:
      - request upload of source code from Git server to FOSSology server,
      - retrieve references of previous scan for this source code,
      - request scan of the source code,
      - download analysis report.
      - remove FOSSology header, project's name in file path and sort files
      
      This class is used in `ci-licence-scan` to generate the
      `debian/apertis/copyright.fossology` file.
      
      Signed-off-by: default avatarFrédéric Danis <frederic.danis@collabora.com>
      d47d105a
  4. Dec 14, 2020
  5. Dec 10, 2020
  6. Dec 04, 2020
  7. Dec 02, 2020
  8. Nov 13, 2020
  9. Nov 10, 2020
    • Emanuele Aina's avatar
      gitlab-ci: Fix job dependencies · eb5e9b8a
      Emanuele Aina authored
      
      The `.build-docker-image` template had an explicit `needs:` pointing to
      `build-base-rootfs` which was only correct for `build-base-docker-image`
      as other build jobs actually depend on `build-base-docker-image`.
      
      Most of the build jobs did indeed overrid `needs:` except
      `build-image-builder-docker-image` and
      `build-flatdeb-builder-docker-image` which ended up having a race
      condition which caused them to fail if they got executed after
      `build-base-rootfs` was done but before `build-base-docker-image` pushed
      the base image.
      
      Fix that by getting rid of the `needs:` and simply relying on stages
      for sequencing the build jobs.
      
      Signed-off-by: Emanuele Aina's avatarEmanuele Aina <emanuele.aina@collabora.com>
      eb5e9b8a
    • Emanuele Aina's avatar
      gitlab-ci: Accept $BUILD_ID CI var to create additional tags · 882bbd76
      Emanuele Aina authored and Martyn Welch's avatar Martyn Welch committed
      
      When triggering a pipeline, by setting the `BUILD_ID` CI variable it is
      now possible to tell the pipeline to create `$IMAGE:$BUILD_ID` tags
      like `v2022dev0-image-builder:20201225.000`.
      
      With this it is possible to have an external orchestrator trigger all
      the nightly pipelines with a shared build id, rather than have each
      pipeline compute one at different times.
      
      Signed-off-by: Emanuele Aina's avatarEmanuele Aina <emanuele.aina@collabora.com>
      882bbd76
  10. Nov 07, 2020
  11. Oct 20, 2020
  12. Oct 02, 2020
  13. Oct 01, 2020
    • Emanuele Aina's avatar
      gitlab-ci: Preserve images built from the same commit · 99c9126c
      Emanuele Aina authored
      
      Untagged images are cleaned immediately from the GitLab container
      registry, so to preserve them for reproducibility purposes we tag every
      build with an unique name and have set a cleanup policy to drop these
      tags (currently once a week).
      
      Unfortunately the unique ID I choose is not much unique: I reused code
      from another project that only builds images when new commits are
      pushed, so I used the `$CI_COMMIT_SHA` value which is far from unique
      when multiple images are built for the same commit due to the regularly
      scheduled daily builds.
      
      Using the `$CI_PIPELINE_ID` should provide an actual unique ID and let
      people retrieve the originating pipeline more easily.
      
      Signed-off-by: Emanuele Aina's avatarEmanuele Aina <emanuele.aina@collabora.com>
      99c9126c
  14. Sep 22, 2020
  15. Sep 17, 2020
  16. Sep 16, 2020
  17. Sep 10, 2020
  18. Sep 09, 2020
  19. Sep 08, 2020
  20. Sep 07, 2020
  21. Aug 19, 2020
  22. Jul 29, 2020
    • Emanuele Aina's avatar
      ci-license-scan: A control char is gibberish enough · 0c2ab442
      Emanuele Aina authored
      
      Assume that any string containing a control character is gibberish.
      
      Rely on the `unicodedata` module to know which character is a control
      character and what is not.
      
      This addresses some bad interactions with control characters ending up
      in the diff output, like u+0098 aka Start-Of-String (SOS) preventing the
      output to be displayed on terminal emulators like xterm.
      
      Signed-off-by: Emanuele Aina's avatarEmanuele Aina <emanuele.aina@collabora.com>
      0c2ab442
  23. Jul 28, 2020
Loading