windows/linux 下Jenkins 配置项目自动构建启动

关于Jenkins 

Jenkins是一个开源的自动化构建和集成工具,可以帮助开发团队自动构建、测试和部署软件代码。Jenkins具有插件化的架构,可以集成多种工具和技术,包括Git、SVN、Maven、Gradle等,并且支持不同的操作系统和编程语言,如Java、Python、Node.js等。

Jenkins可以在每次代码提交后自动构建和测试代码,并通过构建状态反馈实时更新开发团队。Jenkins还支持持续集成和持续交付,可以将代码自动部署到云端、测试环境、生产环境等不同环境。

Jenkins是一个广泛使用的自动化构建和集成工具,可以帮助开发团队提高开发效率、保证代码质量和可靠性。

Jenkins 的主要特点和功能:

Jenkins 是一个开源的持续集成和交付(CI/CD)工具,可用于自动化构建、测试和部署软件项目。它提供了丰富的功能和插件生态系统,可以帮助开发团队加速软件开发和交付过程。

以下是 Jenkins 的一些主要特点和功能:

  1. 自动化构建:Jenkins 可以从版本控制系统(如 Git、Subversion)中获取代码,并自动执行构建任务,例如编译代码、运行测试等。
  2. 持续集成:通过将开发人员的代码更改集成到共享代码库并进行构建,Jenkins 支持团队实现持续集成的最佳实践。
  3. 可扩展性:Jenkins 提供了大量的插件,涵盖了各种不同的用例和集成需求。这些插件可用于扩展 Jenkins 的功能,满足特定项目或组织的需求。
  4. 分布式构建:Jenkins 具备分布式构建功能,可以将构建任务分发到多个代理节点上并行执行,提高构建效率和资源利用率。
  5. 测试和报告:Jenkins 可以与各种测试框架和工具集成,自动运行测试套件并生成详细的测试报告,帮助团队及时发现问题。
  6. 部署和交付:Jenkins 支持自动化部署到各种目标环境,如服务器、云平台等。它可以与配置管理工具(如 Ansible、Chef)和容器化技术(如 Docker、Kubernetes)集成,实现快速且可靠的软件交付流程。
  7. 可视化界面:Jenkins 提供了直观易用的 Web 界面,用于配置构建任务、查看构建记录和报告,以及监控构建状态和健康度。
  8. 安全和权限管理:Jenkins 支持灵活的用户认证和权限管理机制,可以根据团队和角色进行细粒度的访问控制,确保项目和配置的安全性。

总而言之,Jenkins 是一个强大且灵活的持续集成和交付工具,能够帮助开发团队提高软件质量、加速交付速度,并促进协作和自动化。它广泛应用于各种软件开发项目和组织中,并得到了全球开发者社区的积极贡献和支持。

Jenkins 下载

请到Jenkins官网上下载对应操作系统的运行包


直达下载界面 Jenkins download and deployment 

Jenkins 以 WAR 文件、原生软件包、安装程序和 Docker 镜像的形式分发。 请按照以下安装步骤操作:

  1. 在下载之前,请花点时间查看用户手册的 硬件和软件要求 部分。
  2. 选择以下软件包之一,然后按照下载说明进行操作。
  3. 下载 Jenkins 软件包后,请继续阅读用户手册的安装 Jenkins 部分。
  4. 您可能还需要验证您下载的软件包。 了解有关验证 Jenkins 下载的更多信息。

Jenkins 配置

第一步,点击新建item

输入任务名称,选择 Freestyle project,点击确定。

 输入项目描述

 输入项目git地址,添加 用户凭据,(账号密码或者私匙),输入指定分支,悬着源码库浏览器,默认自动即可。

 配置构建触发器,图中的方式是定时任务,轮询,常用例子

# 每1分钟
*/1 * * * *
# 每5分钟
H/5 * * * *
# 每2小时
H */2 * * *
# 每天早上8点
0 8 * * *
# 每天中午11点30
30 11 * * *
# 每天下午16到17点,每5分钟
*/5 16-17 * * *

 

构建环境,选择Delete workspace before build starts (在开始构建之前删除工作区)

 构建配置

点击增加构建步骤,选择调用顶层Maven 目标

 填写maven配置

clean  install  -Dmaven.test.skip=true

 点击增加构建步骤,选择执行命令

windows系统下选择

 配置windows 命令脚本

@echo off
echo 移动覆盖jar
copy unify-main\target\unify-main.jar E:\deploy\toushui\ /y
setlocal EnableDelayedExpansion
for %%a in (20005) do (
    set pid=0
    for /f "tokens=2,5" %%b in ('netstat -ano ^| findstr "0.0.0.0:%%a"') do (
        set temp=%%b
        for /f "usebackq delims=: tokens=1,2" %%i in (`set temp`) do (
            if %%j==%%a (
                taskkill /f /pid %%c
                set pid=%%c
                echo 端口号【%%a】已关闭
            ) 
        )
    )
    if !pid!==0 (
       echo 端口号【%%a】没有占用
    )
)

SCHTASKS /Create /RU SYSTEM /SC ONSTART /TN toushui-java /TR "java -jar -Dfile.encoding=UTF-8 E:\deploy\toushui\unify-main.jar --spring.profiles.active=toushui_dev --oss.http-url=http://172.16.10.201:9000/"
SCHTASKS /run /TN toushui-java
SCHTASKS /Delete  /TN toushui-java /f 

 linux系统下选择

 配置shell命令脚本

#!/bin/bash

Project_name=tarzan-cms

echo $Project_name
pid=$(ps -ef | grep java| grep $Project_name|awk -F '[ ]+' '{print $2}')

kill -9 $pid

BUILD_ID=dontKillMe
nohup java -jar -Dfile.encoding=UTF-8 target/tarzan-cms.jar --spring.profiles.active=dev --server.port=80 -server -Xmx1000m -Xms1000m -Xmn700m -XX:+UseParallelGC &

echo "starting service..."
sleep 20

pid=$(ps -ef | grep java| grep $Project_name|awk -F '[ ]+' '{print $2}')
#echo $pid
if [ -z $pid ];then
  echo "启动失败"
  exit 1
else
  echo $Project_name :  $pid  "SUCCESS"
fi

 构建后操作,根据自己需求选择配置,可以不选

 最后点击保存即可,一个项目的jenkins构建任务就配置好了!

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

泰山AI

原创不易,感谢支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值