在我当前的项目中,我们使用 Java 和 Coq。我们使用 maven 设置了持续集成。我们想检查 coq 文件作为其中的一部分。即我们需要:
- 如果未安装 coq,请在本地下载并安装它(就像 maven 对 gwt 等框架所做的那样)
- 检查 coq 文件是否正确
有人尝试设置这个吗?如何才能做到这一点?
在我当前的项目中,我们使用 Java 和 Coq。我们使用 maven 设置了持续集成。我们想检查 coq 文件作为其中的一部分。即我们需要:
有人尝试设置这个吗?如何才能做到这一点?
我不建议从您的 CI 构建中自动执行该操作。相反,它看起来更像是机器配置依赖。
在这种情况下,值得依赖 Puppet 和 Vagrant 等工具来确保您的开发环境符合给定的上下文,因此您的代码需要将其作为一个前提来处理,或者——更好的是——确保它是在您的 PATH 中可用。
我知道这是一个非常古老的问题,但我有不同的答案。
我有一个类似的 CI 设置,需要安装构建工具。在某些情况下,例如在 bitbucket 上,我会预先构建一个包含工具的 docker 映像,并在每次更新工具时更新构建配置。在 bitbucket 中,这很有效,因为正在构建的包的源代码指向用于构建它的特定 docker 镜像版本,这确保了旧版本仍然可以构建,假设旧的 docker 镜像被保留。
否则,我只是根据需要使用 wget 或 curl 编写工具安装脚本以下载。