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

I have a private gitlab instance with a lot of repositories for conan packages (70+). Developers will o

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).

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1744342193a4569467.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信