GitLab Runner语言 - .yml 格式的动态数据



我可以设法在 .yml 文件中硬编码 shell 脚本,以便 GitLab 运行器可以在有人对 Git 存储库执行推送时执行 .yml 内容。

我想探索一下,如果 .yml 文件可以从外部源(例如 mysql 数据库(获取数据,并使用循环生成 shell 脚本。

像这样的东西:-

// this is a .yml file
get some data
foreach($data as $datum)
    deploy_dev:
      stage: deploy
      script:
        - echo "Deploy to server"
        - eval $(ssh-agent)
        - ssh-add ~/.ssh/key.pem
        - ssh -p22 root@xxxx "do something"
      environment:
        name: dev
        url: http://xxxx 
      only:
        - dev 
}

如果可能的话,我可以更新 CI/CD 的数据库数据 -> .yml ->动态阶段。

谢谢。

你为什么不编写一个脚本(用任何语言(来做你想要的,并在你的CI中运行这个脚本?如果需要从管道获取数据,可以将 ENV vars 传递给它。

最新更新