有Java / Maven的package.jsons“ bin”吗?

时间:2019-01-17 09:56:50

标签: java bash shell continuous-integration devops

我在Java团队中,需要多个存储库来访问与CI / CD相关的bash脚本文件的共享集。在Node团队中,我将发布一个私有NPM软件包,该软件包通过package.json的{​​{3}}条目公开这些脚本,其他项目在完成npm install之后可以使用。

我不确定是否有将NPM引入该项目的好主意,因此我需要帮助以了解在面向Java的上下文中最佳方法是什么。

1 个答案:

答案 0 :(得分:1)

如果仅CI / CD需要脚本,则应在此处进行管理,尤其是在构建之间共享它们时。通过使用带有package.json脚本的JAR并将其解压缩作为构建的一部分,您可以复制bin的功能,但这是一个脆弱的解决方案。

现代CI / CD解决方案使用Docker容器提升构建环境(例如CircleCI,CloudBees)。您可以将bin脚本添加到用于启动构建环境节点的Docker映像中。

如果这不可能,您仍然应该能够定义构建步骤或管道。定义一个通用的构建步骤来安装这些脚本。