powershell - Jenkins Pipeline 最佳实践:全部在 groovy 或调用 powershell 脚本中
问题描述
我们有一个詹金斯构建工作。它有多个步骤,包括 powershell、bat、plungins ... 调用。该程序是一个 Windows 应用程序。我想将作业更改为 scm 中的管道文件。
我问我什么是最佳实践:将所有构建步骤转换为 groovy 管道脚本或为每个步骤调用一个 powershell 脚本(也在 scm 中)。我还想用 groovy 或 powershell 替换 bat 脚本。
解决方案
我的观点是,只要你工作的语言为你提供相同的功能,你就应该尽量减少对外部资源的使用。
所以:对于 Jenkins 管道 groovy 应该是选择。我会在那里进行构建“编排”、沙盒准备、测试机器和容器启动、为 SONAR、Nexus、TFS、Octopus、Artifactory 等外部工具调用 API。
如果您的构建需要额外的构建步骤,例如在 Windows 机器上安装东西、注册 DLL、IIS 操作,那么我会选择 powershell。
推荐阅读
- google-cast - 如何在 QueueBase#initialize 中显示错误?
- mysql - 将分区添加到mysql中的现有表会产生错误的结果
- python - QGraphicsView 抗锯齿算法不适用于非常小的细节
- azure - Terraform 删除应用服务计划时出错 StatusCode=409 服务器场 [asp] 无法删除,因为它已分配了 Web 应用程序 [azure-function]
- php - 如何在 laravel 中更新 image_path
- sql - 考虑重叠活动计算用户的“忙碌时长”
- android - 当 Beta 版可用时,Android 封闭的 Alpha 版轨道不会向受邀用户显示。显示的是 Beta 版?
- python - 在 Python 中将两个列表合并为一个
- c# - 如何在 serilog 的输出 .net 核心中添加“请求正文”?
- php - PHP isset 在非空变量上返回 false