代码上线

例84

需求:一个业务,有3台服务器(A,B,C)做负载均衡,由于规模太小目前并未使用专业的自动化运维工具。有新的需求时,开发同事改完代码会把变更上传到其中一台服务器A上。但是其他2台服务器也需要做相同变更。
写一个shell脚本,把A服务器上的变更代码同步到B和C上。
其中,你需要考虑到不需要同步的目录(假如有tmp、upload、logs、caches)

#!/bin/bash
#这个脚本用来代码上线
#作者:猿课-阿铭 www.apelearn.com
#日期:2018-12-12
dir=/data/wwwroot/www.aaa.com
B_IP=1.1.1.1
C_IP=2.2.2.2
rs()
{
    rsync -azP --exclude="logs" \
    --exclude="tmp" --exclude="upload" \
    --exclude="caches" $dir/ $1:$dir/
}
read -p "该脚本将会把本机的$dir下的文件同步到$B_IP$C_IP上,是否要继续?y|n" c
case $c in 
    y|Y)
	rs B_IP
	rs C_IP
	;;
    n|N)
	exit
 	;;
    *)
	echo "你只能输入y或者n."
        ;;
esac
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在GitLab上线申请是一个流程化和规范化的过程,主要涉及以下几个步骤: 1. 创建Merge Request:在进行代码线前,首先需要创建Merge Request(MR),将开发完成的代码提交到相应的分支中。在MR中,需要详细描述所要上线的功能或修复的问题,并指定合适的Reviewers(一般是有相关经验的团队成员)进行代码审核。 2. 代码审核和修改:Reviewers根据MR中的描述和代码变更,对提交的代码进行仔细审核。他们会检查代码的逻辑、可读性、一致性,并给出必要的修改建议或指导。开发人员可以根据Reviewers的反馈进行相应的修改,并在MR中进行讨论沟通,直到代码审核通过。 3. 自动化测试和持续集成:在代码审核通过后,系统会触发自动化测试和持续集成流程,以验证新代码的稳定性、性能和兼容性。测试用例覆盖率高及测试结果无误,才能继续下一步。 4. 预上线环境部署和测试:通过自动化流程后,代码将被部署到预上线环境中,开发人员和测试人员会对新功能或修复的问题进行全面测试,确保没有新的问题产生。 5. 上线申请和发布:一切准备就绪后,开发人员需要填写上线申请表,包括上线的页面、功能、预计上线时间等信息。然后,提交上线申请,并等待线上发布团队的批准。 6. 线上发布:发布团队在审核上线申请后,会进行实际的线上发布操作,将代码正式部署到生产环境中。 7. 上线验证和回滚:在上线完成后,需要进行相应的上线验证工作,确保上线功能可用,没有引入新的问题。如果发现严重问题或紧急bug,可以选择回滚上线,将代码还原至上一版本。 总结来说,GitLab上线申请是基于代码审核、自动化测试和多环境验证的一套流程,目的是确保代码质量、稳定性和可靠性,从而提高项目的可维护性和上线效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值