Skip to content
Snippets Groups Projects
  1. Sep 06, 2022
  2. Sep 01, 2022
  3. Aug 31, 2022
  4. Aug 30, 2022
  5. Aug 29, 2022
    • Zygmunt Krynicki's avatar
      ci: simplify special logic for CI_ONIRO_GIT_REPO_PATH · c00629fa
      Zygmunt Krynicki authored
      
      The Oniro pipeline is a bit special, because it has to cope with several layers
      of git repositories. On one hand side oniro.git uses git-repo manifests, this
      presents the first complexity of a branch trying to change the manifest that
      needs special care to test correctly (so that the test correctly verifies the
      change, rather than previous, known-good commit). On the other hand side it can
      be used as a reusable pipeline in other repositories that are described by the
      manifest naturally have distinct projects with their own pipelines.
      
      As a sort-of special case, oniro.git fits both of those conditions. Changes to
      oniro.git need to both replace the manifest checkout stage (repo init && repo
      sync) _and_ replace what the manifest would have checked out to instead use
      what GitLab wants to check out inside $CI_PROJECT_DIR.
      
      This presents us with a puzzle, what _did_ GitLab runner do? What exactly is
      checked out in $CI_PROJECT_DIR? This depends on project settings, pipeline type
      and perhaps other things we have yet to encounter.
      
      Instead of trying to correctly model all the variants, let's do something
      stupid and brutal, but correct. When the pipeline indicates that manifest
      element needs to be replaced by setting $CI_ONIRO_GIT_REPO_PATH to a non-empty
      value then remove the git checkout prepared by git-repo and replace it with a
      symbolic link to $CI_PROJECT_DIR.
      
      This allows us to work with merge trains, pipelines for branches and pipelines
      for merge requests all at the same time.
      
      Signed-off-by: default avatarZygmunt Krynicki <zygmunt.krynicki@huawei.com>
      c00629fa
  6. Aug 26, 2022
  7. Aug 24, 2022
  8. Aug 23, 2022
  9. Aug 16, 2022
  10. Aug 15, 2022
  11. Aug 12, 2022
  12. Aug 11, 2022
  13. Aug 09, 2022
  14. Jul 29, 2022
  15. Jul 28, 2022
  16. Jul 27, 2022
  17. Jul 25, 2022
  18. Jul 22, 2022
  19. Jul 21, 2022
  20. Jul 20, 2022
  21. Jul 13, 2022
  22. Jul 12, 2022
  23. Jul 06, 2022
Loading