问题标签 [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.

0 投票
1 回答
1246 浏览

continuous-integration - Concourse 中 PUT 和 OUTPUT 步骤的区别

有人能告诉我PUT台阶和OUTPUT大厅台阶之间的区别吗?例如,在以下类型的 YAML 文件中,为什么我们需要在 aput之后添加一个步骤get?我们不能用output代替put吗?如果不是,每两个的目的是什么?

0 投票
0 回答
284 浏览

concourse - 如何在大厅作业中访问多分支资源属性?

我在大厅管道中使用多分支资源,如下所示:

如何在作业运行时访问资源所在的分支?像这样:

我希望通过类似 my-resource.branch 的方式访问它,但还没有找到任何可行的东西

0 投票
1 回答
225 浏览

concourse - 如何在 Concourse 作业中连接命令?

我有一个 Concourse 作业,将 repo 拉入 docker 映像,然后在其上执行命令,现在我需要执行来自 docker 映像的脚本,完成后在 repo 中执行命令,如下所示:

get-git-context.sh是来自我的 docker 映像的脚本,并且.gradlew是我的 repo 中带有参数的标准 gradlew build,我使用这种方法收到以下错误:

意味着在执行第一个命令时将作业 cd'd 到 / 中,只执行一个命令就可以了。我还尝试添加两个运行部分:

但是只执行了第二部分,连接这两个命令的正确方法是什么?

0 投票
1 回答
427 浏览

git - 匹配 Concourse CI 中两个 Git 资源的分支名称

我有一个 Concourse CI 管道设置,它在逻辑上依赖于两个单独的 Git 资源。

对于特定的需求,比如说发布一个版本m.n.o,管道需要同时检查两个项目。重要的是,它需要release/m.n.o在两个分支中引用相同的内容。此外,我希望通过更新项目 A 和 B 来触发我的管道,当然,应该满足匹配的分支名称要求,例如,如果我更新project-a/release/1.2.3,我希望 Concourse CI 结帐project-b/release/1.2.3而不是任何其他。值得一提的是,两个项目中可能有不止一个release/m.n.o分支处于活动状态,即一个可以推送到,project-a/release/1.2.3以便 A & B v.1.2.3 都进入 CI,然后推送到,project-b/release/2.3.4以便 A & B v.2.3.4由 CI 构建。

到目前为止,我发现的唯一稳定的工作解决方案是将分支名称保持为变量,并在每次需要使用fly set-pipeline(或使用 Vault,但这更复杂)处理版本 1.2.3 或 2.3.4 时切换它。

或者,我可以创建两个 (3, 4, N) 管道,一个用于我拥有的每个发布版本。然而,与其他 CI/CD 引擎所能达到的效果相比,我发现这两个选项到目前为止都不能令人满意。

总的来说,感觉就像我错过了 Concourse 的一些基本概念,可以在这里用来实现一个简单的目标,即检查两个具有相同名称分支的 repos,所以我非常感谢任何帮助。

0 投票
1 回答
431 浏览

concourse - Concourse CI 中的资源类型:如果 Check 总是只返回最新版本会怎样?

我正在查看 git 资源,发现 Check 正在做一个克隆而不是更轻量级的ls-remote. 我认为有两个原因:

  1. 可以根据元数据和 repo 中更改的文件过滤提交
  2. 因为文档说它应该返回一系列版本,而不仅仅是最新的

第一个很明显,但我不明白第二个的原因。

它在标准输入上给出了配置的源和当前版本,并且必须按时间顺序将新版本的数组打印到标准输出,包括请求的版本(如果它仍然有效)。

但后来它说:

如果您的资源无法确定哪些版本比给定版本更新(例如,如果它是一个被推送的 git 提交),那么应该返回您的资源的当前版本(即新的 HEAD)。

所以我的问题是,为什么资源不能总是只返回一个版本——最新的。即如果源已经移动,甚至没有请求的版本? 哪些功能会丢失?

请注意,此问题与实施资源类型有关:Concourse 如何使用检查、输入和输出脚本的输出?

0 投票
3 回答
229 浏览

git - Concourse 管道构建失败并出现错误提示:更新被拒绝,因为标签已存在于远程

大厅管道构建失败并出现错误提示:

如何避免此错误消息?

0 投票
1 回答
272 浏览

concourse - 在 Concourse 中,是否可以在 Web UI 中以交互方式选择 git 资源分支或使用 CLI?

Fe 通常你使用“develop”,但今天你想使用“patchXYZ”......在不改变管道的情况下,有没有办法提示用户输入分支名称?如果不是,此流程的 Concourse 最佳实践是什么?

0 投票
1 回答
64 浏览

concourse - 大厅管道 - 子文件夹“不是有效的存储库名称”引发错误

我有一个存储库,它有两个前端应用程序和一个服务器文件夹。我需要为两个前端(角度)和一个服务器(nodejs)文件夹创建管道。如果我为主文件夹(concourse-pipeline)创建一个管道,它工作正常。但是当我尝试为子文件夹(前端)创建管道时,它会抛出“不是有效的存储库名称”的错误。我不确定这里出了什么问题。

任何帮助,将不胜感激

0 投票
1 回答
493 浏览

git - 大厅 git-resource:tag_filter 和 tag_regex 不起作用

我有一个 git 标签列表

从这些标签中,我只想获得以下标签:

我声明我的资源如下:

我已经尝试了所有这些解决方案:

他们似乎都没有按照我的意愿过滤数字(digits.digits.digits)。

我已将此行用作构建过滤器的参考:https ://github.com/concourse/git-resource/blob/master/assets/check#L168 。

任何想法 ?

0 投票
1 回答
58 浏览

continuous-integration - 大厅资源`check_every:从不`时间:无效持续时间“从不”

运行大厅 6.7.4。大厅文档说您可以通过设置check_everynever( https://concourse-ci.org/resources.html#schema.resource ) 将资源设置为从不检查。但是,它会导致以下错误,time: invalid duration "never". 我已经尝试将它设置never为以及'never'在管道 yml 文件中。我错过了什么吗?