问题标签 [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.
docker - Concourse CI 和自定义 docker-compose
我尝试使用自定义 docker-compose 启动 Concourse CI
并且工作人员无法连接到 Web 部件。你能帮我解决这个问题吗?
PS 数据库 postgtresql 在主机上的 5432 端口上启动,并且连接正常。
工人错误:
npm - 在大厅管道中运行 npm
我如何将它添加为我的管道的一部分,它需要获取 git 存储库、运行 npm install 和 npm build,然后推送到 Cloud Foundry?
到目前为止,我能够做到这一点,以便它抓取存储库并推送到云代工厂。但不完全确定如何制作它以构建 npm 任务。我正在使用 BOSH 导演来处理所有大厅的事情。
任何方向或想法将不胜感激。我在这里关注本教程并以此为基础:(我将在哪里以及如何添加构建 npm 任务?)
https://github.com/starkandwayne/concourse-tutorial/tree/master/15_deploy_cloudfoundry_app
kubernetes - 在 Kubernetes 上运行 Concourse CI
有什么方法可以通过 Kubernetes 部署 Concourse(包括工作程序和 Web 部件)?我遇到了 docker push 的问题:
所以我想知道它是错误还是限制?
相关 Github 问题:
continuous-integration - 使用 Dockerfile 构建自定义镜像以在 Concourse CI 上进行测试
由于需要在某些特定的测试环境中运行测试,我们想要构建一个自定义容器来在 Concourse CI 上运行测试。
我们知道一个工作流程是
但是我们不需要将图像推送到 Hub,而是更喜欢这样的工作流程
我查看了Pivotal 的博客问题,但它解释了第一个工作流程。
我们可以实现第二个工作流程吗?
python - Python Luigi 中的事件处理
我一直在尝试将 Luigi 集成为我们的工作流处理程序。目前我们正在使用 concourse,但是我们尝试做的许多事情在 concourse 中很麻烦,所以我们切换到 Luigi 作为我们的依赖管理器。到目前为止没有问题,工作流触发并正确执行。
当任务由于某种原因失败时,问题就会出现。这种情况特别是任务的需要块,但是需要注意所有情况。到目前为止,Luigi 优雅地处理了错误并将其写入 STDOUT。但是它仍然发出并退出代码 0,这意味着工作通过了。误报。
我一直试图让事件处理来解决这个问题,但我无法让它触发,即使是一个非常简单的工作:
然后在 python shell 中运行命令
luigi.run(main_task_cls=Test, local_scheduler=True)
引发异常,但偶数不会触发或其他什么。该文件没有被写入,退出代码仍然是 0。
另外,如果有什么不同,我在 /etc/luigi/client.cfg 有我的 luigi 配置,其中包含
我不知道为什么事件处理程序不会触发,但不知何故我需要该过程因错误而失败。
virtualbox - 在 Concourse 任务中运行 VirtualBox
我正在尝试建造带有大厅的流浪者盒子。我正在使用concourse/buildbox-ci
大厅自己的构建管道中使用的图像来构建 concourse-lite vagrant box。
在运行 packer 之前,我正在创建 virtualbox 设备,以便它们与主机设备匹配。然而,打包程序构建失败:
- 有人有这个工作吗?
- 大厅
hetzner
工作人员配置是否可以在任何地方访问?
附加配置信息:
在大厅作业容器中:
在工作主机上:
大厅工作:
流浪者/ci/scripts/build.sh:
流浪者/ci/tasks/build.yml:
git - 如何在 Concourse 构建中提交对 git 的更改?
在 Java 应用程序的 Concourse 构建期间,我想:
- 结帐 git
master
分支 - 跑
mvn package
- 如果成功:
- 增加
SNAPSHOT
Maven 的版本pom.xml
- 使用提交消息前缀将其提交回
master
分支[skip ci]
- 将本地分支推送到上游
- 增加
除了git-resource之外,我还没有找到推荐的处理 git的方法,它只能get
或put
资源,但不能产生新的提交。
concourse - 大厅:如何将作业的输出传递给不同的作业
从文档中我不清楚是否甚至可以将一个工作的输出传递给另一个工作(不是从一个任务到另一个任务,而是从一个工作到另一个工作)。
我不知道在概念上我是否在做正确的事情,也许它应该在 Concourse 中以不同的方式建模,但我想要实现的是将 Java 项目的管道拆分为几个细粒度的作业,这些作业可以并行执行, 如果我需要重新运行某些工作,则独立触发。
我如何看待管道:
- 第一份工作:
- 从 github repo 中提取代码
- 使用 maven 构建项目
- 将工件部署到 Maven 存储库 (
mvn deploy
) - 更新
SNAPSHOT
Maven 项目子模块的版本 - 将工件(jar 文件)复制到输出目录(
output
的task
)
- 第二份工作:
- 从
jar
_output
- 为所有容器构建 docker 容器(并行)
- 从
- 管道继续
我无法将output
工作 1 传递到工作 2。此外,我很好奇我对原始 git repo 资源引入的任何更改是否会出现在下一个工作中(从工作 1 到工作 2)。
所以问题是:
- 将构建状态从作业传递到作业的正确方法是什么(我知道,作业可能会安排在不同的节点上,并且肯定是在不同的容器中)?
- 是否有必要将状态存储在资源中(例如 S3/git)?
- Concourse 在设计上是无状态的吗(在这种情况下)?
- 获取更多信息的最佳地点在哪里?手册我试过了,不是很详细。
到目前为止我发现了什么:
output
s 不会在工作之间传递- 对资源的任何更改(
put
对 github 存储库)都会在下一个作业中获取,但工作副本中的更改不会
最小的示例(如果注释行未注释错误,则会失败:)missing inputs: gist-upd, gist-out
:
concourse - 日志被淹没 tsa.connection.tcpip-forward.forward-conn.io-complete
我们在 ATC 日志中被淹没在每秒超过 2000 条消息中。
我们正在运行 8 个工人和大厅 2.7.0,我们有超过 9000 个 TIME_WAIT 连接。
任何想法是什么以及为什么会发生这种情况?
nginx - nginx代理后面的concourse ci
nginx代理infront配置为:
这是通过使用
细节和评论取自http://engineering.pivotal.io/post/concourse-no-elb/
在lonelyisland
docker created 网络中访问它可以正常工作:
从公众那里,当我运行时,curl -vvI ci.ratpoison.io
我得到的是:
任何想法?