问题标签 [concourse-git-resource]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
concourse - 如何有条件地运行 Concourse 任务?
我正在修改我继承的大厅脚本。
我们有一个如下所示的管道:
[1]build - [2]test A - [3]test B - [4]publish - [5]deploy
我们的团队以前只使用主分支,但现在我们使用功能分支。
我对每个分支都进行了修改build step
——不仅是主分支。但我只想为 master 分支构建publish step
运行。
我怎样才能让它step 5
只在为 master 分支step 1
运行时运行?有没有办法在 Concourse 上做到这一点?
concourse - 如何测试大厅自定义资源类型?
所以我建立了自己的自定义资源类型。正如此链接中所建议的那样。
我想知道如何测试这个 docker 镜像?我将如何让 docker 运行?
命令会是什么?我是否必须传递其他构建参数?
是否有测试自定义资源类型的特定方式?
请向我提供所有信息。
(提前致谢)
concourse - 有没有办法锁定 Concourse git-resource?
我在 Concourse 中设置了管道,其中包含一些构建 Docker 映像的作业。构建后,我将图像标签推送到 git 存储库。问题是当构建同时结束时,一个作业推送到 git,而另一个只是拉动,当第二个作业尝试推送到 git 时,它会出错。
那么有什么办法可以防止并发推送呢?
到目前为止,我已经尝试过申请serial
和serial_groups
工作。它有帮助,但是所有的工作都排队了,因为我们有很多构建。
如果其他作业锁定了它,我希望作业在对 git 执行操作之前同时运行并暂停。
因此,如果作业同时完成映像构建并并行执行 git commit,则一个推送比第二个更快,第二个会中断。
有人可以帮忙吗?
concourse - 如何在 Concourse 管道中组合触发器:git 和时间资源?
我正在尝试设置将触发新部署的 Concourse 管道。目标是仅在将新值推送到 git 存储库并且时间在定义的时间窗口内时才让管道运行。
目前,触发器似乎以 OR 方式工作。推送新版本时,管道将运行。当时间在窗口内时,管道将运行。
似乎唯一的例外是两个触发器都没有成功至少一次,例如在时间还没有过去的第一天。这导致管道在运行之前等待时间窗口触发器的第一次成功。然而,在此之后,每次更新 git 存储库时运行的不良行为仍在继续。
下面是我的管道的最小版本。目标是仅在晚上 9:00 到 9:10 之间运行管道,并且最好仅在 git 存储库已更新时运行。
任何关于如何结合时间窗口和 cicd-helm-values_my-service 的想法将不胜感激。提前致谢!
concourse - Concourse:“资源类型”和“资源”有什么区别?
当我开发管道时,我无法理解“资源类型”和“资源”之间的区别。根据文档,资源类型仅用于提供资源的类型并检查标签。就像下面的例子:
为什么我们两个都需要?仅仅使用资源还不够吗?
pipeline - 如何将本地目录挂载到大厅管道作业?
我正在尝试将本地 git 存储库连接到大厅,以便即使在将代码提交到 GitRepo 之前,我也可以在本地环境上执行自动化测试。换句话说,我想在 git commit 之前使用 concourse 管道执行一些任务,我想将我的本地工作目录挂载到 concourse 管道作业。
yaml - 如何在大厅中为多个工作提供相同的“获取”
如果以任何方式允许的话,有什么方法可以通过提供通用的“-get”来优化我的代码,而不是给多个工作提供相同的“-get”。
目前,我为不同的工作提供了相同的代码(-get)
我没有收到任何错误,但想优化代码
docker - 如何从 Concourse CI 中的 git 资源构建 docker-compose 容器?
我目前正在尝试构建和部署一个 dockerized Go 项目,该项目是从使用 Concourse 的 Git 存储库中提取的。
给你一些关于我当前设置的背景:
- 我设置了两个 AWS Lightsail 实例,它们都使用 Docker 容器为 Concourse 提供服务。
- 其中一个实例为 Web 节点提供服务,另一个用作连接到 Web 节点的工作节点。
我当前的管道如下所示:
问题是 docker-compose 没有安装。
我觉得我在做一些根本错误的事情。谁能给我一个提示?
最好的,
伦纳特
jgit - JGitflow 无限触发大厅作业
我正在将 JGitFlow 与 Concourse 一起使用。
我有两个分支 - 掌握和开发。当有变化要发展时,我的工作就会被触发。
当作业运行时,它执行mvn -X --batch-mode jgitflow:release-start jgitflow:release-finish
问题是当 jgitflow 运行时,它会增加版本号、更新快照、标记并与 master 合并。最后,它将更改推回开发和掌握。
由于 jgitflow 对开发进行了更改(更新了快照版本),因此会再次触发 Concourse 作业。
有没有办法避免这种情况。
docker - Concourse 从 git repo 构建 docker-image 复制
我正在尝试使用 Concourse 管道来提取 git repo,然后从 git repo 中的 dockerfile 构建/推送 Docker 映像。dockerfile 中有一个 COPY 命令,用于将文件从 repo 复制到映像中。通常我会安装一个卷以便能够在构建时复制这些文件,但在 Concourse 中找不到这样做的方法。这是我正在尝试的:
如何在构建时将文件 git-repo/scripts/run-script.sh 复制到我的映像中?谢谢你。