由于上一篇是通过触发git操作来实现自动化构建和发布,回滚和发布不太可控,可以采用动态参数获取发布分支的方式方便发布和回滚
目标: 选择合适版本发布到合适的服务器环境(目前分支策略是,提测时创建发布分支release- date +%Y%m%d-%H%M%S
)
1.安装插件 Dynamic Parameter Plug-in
2.设置 参数化构建过程
3.使用groovy脚本动态获取发布分支
PHP
def ver_keys = [ 'bash', '-c', 'cd /gitrepos/project1; git pull>/dev/null; git branch -a|grep remotes|grep release|cut -d "/" -f3|sort -r |head -10 ' ] ver_keys.execute().text.tokenize('\n')
4.构建脚本
PHP
echo $release_version echo $deploy_server case $deploy_server in test) echo "This server is $deploy_server -----test enviroment" cd /gitrepos/project1/ git checkout $release_version git pull origin $release_version rsync -avH --delete --progress --exclude=robots.txt --exclude=.gitignore --exclude=.git --exclude=.DS_Store --exclude="*.tar" /gitrepos/project1/ /gitrepos/project1/ ;; prod) echo "This server is $deploy_server ------production enviroment" cd /gitrepos/project1/ git checkout $release_version git pull origin $release_version rsync -avH --delete --progress --exclude=robots.txt --exclude=.gitignore --exclude=.git --exclude=.DS_Store --exclude="*.tar" '-e ssh -p 22000' /gitrepos/project1/ www@node1.simlinux.com:/gitrepos/project1/ ;; *) exit ;; esac
5.测试
相关推荐
### Jenkins参数化构建指导教程 #### 一、引言 在持续集成(CI)与持续部署(CD)的实践中,Jenkins作为一款流行的自动化工具,提供了丰富的插件支持,其中参数化构建是其核心功能之一。通过参数化构建,我们可以灵活...
本篇文章将深入探讨如何在Jenkins Pipeline中管理多个参数化变量,从而提高自动化构建的灵活性和可维护性。 1. **参数化构建** Jenkins的参数化构建功能允许用户在执行构建之前输入特定的值。这些参数可以是文本、...
在这里,我们将利用Gradle的参数化构建功能,这意味着我们可以传递参数到构建过程中,比如环境变量,然后根据这些参数动态调整构建配置。 1. **配置Jenkins作业**: - 创建新的Jenkins作业,选择“自由风格项目”...
在 "General" 部分,勾选 "参数化构建过程"。这样,我们可以定义构建过程中的输入参数,这些参数可以影响构建步骤的执行。例如,我们可以添加一个布尔类型的参数 "IS_PACKAGE",用于决定是否执行特定的构建步骤。 ...
在配置页面的“General”模块,勾选“参数化构建”,这使得我们可以为Job提供动态输入参数,从而控制构建过程。接下来,来到“源码管理”模块。在这里,我们设置Git作为源码管理工具,并在“Branches to build”字段...
本压缩包文件包含的“Jenkins dynamic parameter插件”是 Jenkins 社区开发的一款增强型插件,它的主要作用是在构建参数化过程中提供动态参数化的选项。安装此插件后,Jenkins 用户可以在构建配置页面添加新的动态...
在本教程中,我们将深入探讨如何使用Jenkins和Gradle在Android项目中实现参数化构建,以便根据不同的环境(如开发、测试和生产)生成不同的安装包。这将帮助我们有效地管理和部署应用的不同版本,确保每个环境都有...
- **Build with Parameters**: 必须,支持参数化构建。 - **Git Plugin**: 必须,支持从Git仓库拉取代码。 - **JDK Parameter Plugin**: 可选,根据实际需求选择是否安装。 - **Mask Passwords Plugin**: 可选,...
这个插件扩展了 Jenkins 的参数化构建功能,允许创建更复杂的参数类型,如复选框、下拉列表和文本框等。这些参数可以在构建触发时让用户选择,从而实现动态构建逻辑,比如基于用户选择的不同值执行不同的构建步骤。...
2. **参数化构建**:允许在构建过程中动态传递参数,提高构建的灵活性。文档列举了几种常用的参数类型,如`Choice`参数、`Dynamic Parameter`参数等。 3. **分布式构建**:为了提高构建效率,文档建议采用Master-...
参数化构建是Jenkins中的一个重要特性,允许用户在触发构建时输入特定的值。这些参数可以是文本、选择列表、密码等,使得构建可以根据不同的输入进行定制。 三、条件语句 在Pipeline中,我们可以通过条件语句来决定...
参数化构建允许你在运行构建时传入动态参数,如环境变量或选择特定分支,以实现更灵活的构建策略。 3. **邮件服务整合**:34. 整合邮件服务-01-Jenkins配置邮箱服务.mp4 和 35. 整合邮件服务-02-项目构建结果发送...
- 使用参数化构建,根据需要动态配置构建参数。 - 配置Jenkins slaves(节点),在多台机器上并行执行构建,提高效率。 - 使用Jenkins的蓝绿部署或滚动更新策略,降低服务中断风险。 通过Jenkins和Maven的集成,...
在实际应用中,基于Python的Jenkins二次开发可以实现自动化部署、监控、报告生成等多种功能。例如,你可以编写一个Python脚本来自动拉取代码、构建项目、部署服务,并在出现问题时发送通知。通过结合其他Python库,...
3. **自动化脚本**:构建名称也可以用作自动化脚本中的参数,实现更灵活的构建策略。 4. **集成测试**:构建名称可用于标识特定构建对应的集成测试结果,帮助开发团队及时发现并修复问题。 #### 二、Jenkins构建...
书中会讲解各种作业类型,如自由风格项目、Maven项目和多配置项目,以及如何通过参数化构建来实现动态的构建触发。 在持续集成的实践中,自动化的构建和测试是关键环节。《Mastering Jenkins》会深入讨论如何集成...
6. **集成其他Jenkins插件**:publish-over-SSH可以与其他Jenkins插件无缝集成,如使用Jenkins的参数化构建来动态指定传输的文件或执行的命令。 在实际使用中,为了确保安全,通常会使用SSH密钥对进行身份验证,而...
Jenkins集成Jmeter进行Web自动化性能测试的核心知识点涵盖了Jmeter和Jenkins的安装、配置,以及如何结合badboy工具进行脚本录制,并最终实现自动化性能测试的流程。 一、Jmeter的安装与配置 首先,Jmeter是一种开源...
Jenkins 是一款开源的持续集成(Continuous Integration, CI)服务器,用于自动化各种软件开发过程,如构建、测试和部署。它具有丰富的插件生态系统,能够扩展其功能以满足不同项目需求。在您提供的标题和描述中,...