最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

Control pipeline execution order in gitlab CI using conan to determine order - Stack Overflow

programmeradmin15浏览0评论

I have a private gitlab instance with a lot of repositories for conan packages (70+). Developers will often change multiple repositories in a single CR. I'm trying to figure out how to control the CI pipelines so we only start a pipeline when all the conan dependencies are available. For example:

  • Repo A depends on nothing
  • Repo B depends on A
  • Repo C depends on nothing
  • Repo D depends on B and C If I change B and D I only want those two CI pipelines to run but B has to complete before starting D. I don't want to run pipelines unnecessarily (i.e. If I make a patch release of A and don't touch the other repositories, I don't want to rebuild anything else except A. If I make a major version change to A, I want all the repositories to rebuild even if they weren't explicitly changed. I'm running semantic-release so it will automatically update the version numbers in the previous cases).

First, it there a native gitlab CI method to manage this? If not, does anyone know of a tool I can use to automate starting the pipelines? If neither, suggestions on how I can write a script to manually start the pipelines?

I believe in the last case, I can use a job in the pipeline for A to start the other pipelines manually and have them update their versions and run although I'd need a master build dependency file (likely a conan lockfile stored on a server somewhere).

发布评论

评论列表(0)

  1. 暂无评论