jenkins前端实现自动化部署(vue项目)

1.jenkins创建任务

jenkins前端实现自动化部署(vue项目)_第1张图片

2.创建任务跳转页面

jenkins前端实现自动化部署(vue项目)_第2张图片

3.保存后配置页面git添加用户进入Jenkins 凭据提供者数据用户名密码

	Repository URL:支持https和ssh
	Credentials:Jenkins 凭据提供者数据用户名密码
	Branch Specifier (blank for 'any'):写git分支默认msater

jenkins前端实现自动化部署(vue项目)_第3张图片

3.buid-选择执行shell

3.1参数化构建过程

jenkins前端实现自动化部署(vue项目)_第4张图片
3.2build 执行shell

jenkins前端实现自动化部署(vue项目)_第5张图片

date_time=`date +%Y-%m-%d-%H-%M`   #执行当前的时间
case $deploy_env in 
	deploy)
    	echo "-------该时间用于回滚:$date_time--------------"
    	#cd 进入 /home/jenkins/workspace/loan_exceeds_web/build   并且  将当前目录下的文件打包放到 /home/backup/下面     备份上一次代码为了更好的回滚
        cd /home/jenkins/workspace/loan_exceeds_web/build && tar zcf /home/backup/app_"$date_time".tar.gz ./*  
        
        # 在当前下面这里指的是 /home/jenkins/workspace/loan_exceeds_web   执行build  (执行前必须安装依赖文件 cnpm i)
        npm run build
        
        # 删除/data/www/dc/public/app/所有文件  (因为我们会将build好的文件拷贝到这个目录下)
        rm -rf /data/www/dc/public/app/*
        
       # 将/home/jenkins/workspace/loan_exceeds_web/build下面文件拷贝到data/www/dc/public/app/ 这个目录下
        cp -r /home/jenkins/workspace/loan_exceeds_web/build/* /data/www/dc/public/app/ 
        
        #默认情况下面读写权限  不加改权限访问会包403
        chmod -R 777 /data/www/dc/public/app
    	;;
    rollback)
    	echo "-------回滚名称:$rollback_name--------------"
    	echo "deploy:$deploy_env"
    	 # 删除/data/www/dc/public/app/
        rm -rf /data/www/dc/public/app/*
        
        # 将$rollback_name传入参数的tar.gz  解压到 /data/www/dc/public/app/
        tar zxvf /home/backup/app_"$rollback_name".tar.gz -C /data/www/dc/public/app/
        
		#默认情况下面读写权限  不加改权限访问会包403
        chmod -R 777 /data/www/dc/public/app
    	;;
   	*)
    exit
    	;;
esac

4.构建你的项目(Build with Parameters)

1.项目发布
jenkins前端实现自动化部署(vue项目)_第6张图片
点击build直接发布 左边的Build History可以查看你编译输出信息如果看到 Finished: SUCCESS已经编译发布

2.编译出错回滚
jenkins前端实现自动化部署(vue项目)_第7张图片
jenkins前端实现自动化部署(vue项目)_第8张图片

deploy_env选择rollback
rollback_name 选择编译日志回滚时间

5.我很牛的 因为执行成功了

jenkins前端实现自动化部署(vue项目)_第9张图片

你可能感兴趣的:(运维)