问题标签 [concourse]
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.
cloud-foundry - Concourse git资源触发
嗨,我有一个大厅部署过程,每当我用特定关键字标记发布时,它就会部署到 cloudfoundry。
这适用于新版本,因为 git 资源会选择新标记的提交并使用 tag_filter 选项检查标记。
问题是当我想回滚到以前的版本时。如何强制 git 资源接收它已经使用过的特定旧提交?
concourse - 如何参数化大厅任务文件
Concourse 的强大功能和简单性给我留下了深刻的印象。由于我的管道不断增长,我决定将任务移动到单独的文件中。其中一项任务使用我们自己的私有注册表中的自定义 Docker 映像。所以,在那个任务文件中,我有:
当我执行 set-pipeline 时,我通过 --load-from-vars 参数从单独的文件中加载凭据等。
现在这是我的问题:我注意到我的管道文件中的变量被替换为实际正确的值,但是一旦任务运行,前面提到的 {{dckr-user}} 和 {{dckr-pass}} 不会被替换。
我如何实现这一目标?
salt - 如何为 cmd.run 使用 salt 目录中的文件?
我想运行一个命令 ( cmd.run
),它使用 salt 目录中的文件,例如:
这是正确的方法还是我需要先这样做?
concourse - 由于“劫持:后端错误”,管道失败
我正在关注Stark & Wayne教程并遇到了一个问题:
管道失败
我有一项git
资源和一项工作,一项任务:
test.yml 文件:
deploy.sh
是一个简单的虚拟文件,只有一个echo
命令
那会是什么?
docker - 在运行任务之前,大厅等待很长时间
我有一个带有任务的 Concourse 管道,它使用存储在我们本地 Artifactory 服务器中的 Docker 映像。每次我启动管道时,大约需要 5 分钟才能最终运行任务。日志如下所示:
我假设 Concourse 以某种方式检查更新版本的 Docker 映像。不幸的是,我没有机会调试,因为 Concourse worker VM 上的所有日志文件都没有提供可用信息。
我的问题:
当 Concourse 说“正在准备构建”并且状态为“待定”时,我怎么可能调试正在发生的事情。
是否有机会避免 Concourse 检查更新版本的 Docker 映像?我用版本标记了 Docker 映像
latest
——这可能是个问题吗?还有什么想法可以加快速度吗?
这是我的管道和任务的详细配置:
管道.yml:
任务.yml:
java - 大厅 CI + MVN + PCF 问题
我正在尝试使用 Concourse CI 创建一个管道。管道应:
- 从 git 获取代码。
- 使用 Maven 构建和打包所有内容。
- 将生成的工件 (
target/*war
) 推送到 Cloud Foundry。
步骤 1 和 2 已成功执行,但在尝试不同配置数小时后,我无法访问生成的工件并将其推送到 CF。
我在最后一步收到以下错误:error invalid path: found 0 files instead of 1 at path: /tmp/build/put/mvn-package/target/udm-0.1.war
文件 pipeline.yml:
文件清单.yml
文件 package.yml:
我想我错过了一些东西。有人可以看看并指出我正确的方向吗?
.net-core - 构建 .netcore 应用程序所需的 docker 类型
我正在使用 concourse 部署 .netcore 应用程序,我遇到的问题是我需要运行dotnet publish --configuration release
获取生成的发布文件夹并将其发布到 Cloud Foundry。
我可以用什么来代替这个 docker 图像来提供我需要的东西?:
我可以添加什么而不是我当前使用的节点图像来运行它:
-- 文件 pub-dotnet.sh
concourse - 如何在 Concourse CI 中使用 yaml 模板变量作为值的一部分
当我尝试使用模板变量时,例如{{hostname}}
作为值的一部分,它会被双引号括起来。
如何添加不带引号的变量?
例子:
该命令的结果fly -t ci set-pipeline --pipeline test --config test.yml --var="hostname=localhost"
如下(查看"localhost"
):
我包含 3rd-party maven 资源的原因是 git 资源不允许{{}}
在 中uri
,导致错误:
continuous-integration - 大厅 CI 获取用户 ID
我试图获取最后一个在 Concourse CI 中提交并触发构建的用户 ID,以便我可以将其作为松弛通知的一部分发送。有人可以指出我正确的方向吗?
continuous-integration - 大厅标记为重新部署
我想使用大厅自动部署标记的版本。例如,如果我将发布标记为“阶段”,它将部署到登台。concourse git 资源有一个 tag_filter 选项可以执行此操作。
问题是它需要提前知道分支名称,所以如果设置为 master 那么它将正常工作。但是,我们有可能不会合并到 master 的修补程序,因此我们事先不知道分支的名称,例如 hotfix-009。所以这个解决方案只适用于一个分支,但标签适用于任何分支。
我还看到有一个 git multi-branch 资源允许指定要监视的多个分支 (.*) 但这不支持 tag_filter 参数。
有任何想法吗?