gitlab+svn自动增量发包

背景:项目增量发布,使用jenkins+svn自动发布
1.配置jenkins

2.配置代码

node {
    try {
        stage(‘代码拉取‘) {
         input id: ‘ncpprd‘, message: ‘发布生产请找-admin--批准?‘, ok: ‘确认‘, submitter: ‘admin,xiongxinjiang,haojianhui‘
          sh "rm -rf /var/lib/jenkins/jobs/mmt-prd-crm/workspace/*"
          checkout([$class: ‘SubversionSCM‘, additionalCredentials: [], excludedCommitMessages: ‘‘, excludedRegions: ‘‘, excludedRevprop: ‘‘, excludedUsers: ‘‘, filterChangelog: false, ignoreDirPropChanges: false, includedRegions: ‘‘, locations: [[cancelProcessOnExternalsFail: true, credentialsId: ‘xiongxinjiangsvn‘, depthOption: ‘infinity‘, ignoreExternalsOption: true, local: ‘.‘, remote: ‘https://10.10.20.165/svn/OperationSupport/CRM/documents/02系统设计/增量流程/消费金融+买买提系统/未上线/${BranchName}‘]], quietOperation: true, workspaceUpdater: [$class: ‘UpdateUpdater‘]])

               }
        stage(‘重启部署‘){
            if ("${MODULE}".contains(‘crm53‘)){
               sh "rsync -rlgoDuvzP -e ‘ssh -p 10022‘  --exclude ‘.svn‘ $WORKSPACE/platform/*    [email protected]:/home/weblogic/sftp/platform/"
               sh "ssh -p 10022 [email protected] -C ‘sh -x /bq/shell/deploy_crm53.sh‘"
            }
            if ("${MODULE}".contains(‘crm55‘)){
               sh "rsync -rlgoDuvzP -e ‘ssh -p 10022‘  --exclude ‘.svn‘ $WORKSPACE/platform/*  [email protected]:/home/weblogic/sftp/platform/"
               sh "ssh -p 10022 [email protected] -C ‘sh -x /bq/shell/deploy_crm55.sh‘"
            }
       }
    }catch (any) {
        currentBuild.result = ‘FAILURE‘
        throw any}

}

原文地址:https://blog.51cto.com/whitehat/2399386

时间: 2024-10-10 01:13:34

gitlab+svn自动增量发包的相关文章

AUTOINCREMENT 自动增量

MySQL提供功能AUTOINCREMENT,数据库表可以定义为数字自动递增的主键,每次添加一个新行,MySQL的增量值自动.但有时你可能需要重置AUTOINCREMENT列值.比如要删除某些行,并自动增量列复位,可采取如下办法: ALTER TABLE table_name AUTO_INCREMENT = 1; 请注意,你不能重置计数器的值小于或等于任何已使用的AUTO_INCREMENT列的最大值.

apache下 使用svn自动部署代码

碰到一个问题 svn不能ftp ftp又不能svn有没有一个办法把两个联系起来呢? 其实不需要svn自带的hooks(钩子)功能足以满足你得需求 svn配置和设置可以网上直接找到.直接说怎么配置自动同步功能.在svn的目录下 /www/svn/repos/hooks  有的文件 post-commit.tmpl 这个就是需要修改的文件也就是在svn有commit的时候我们需要做的 1.设置需要更新的目录 直接在配置好的首页对应的目录里面checkout一下 2.修改 post-commit.tm

Gitlab CI 自动部署 asp.net core web api 到Docker容器

为什么要写这个? 在一个系统长大的过程中会经历不断重构升级来满足商业的需求,而一个严谨的商业系统需要高效.稳定.可扩展,有时候还不得不考虑成本的问题.我希望能找到比较完整的开源解决方案来解决持续集成.监控报警.以及扩容和高可用性的问题.是学习和探索的过程分享给大家,也欢迎同行的人交流. 先来一个三步曲,我们将完成通过GitLab CI 自动部署 net core web api 到Docker 容器的一个示例.这是第一步,通过此文您将了解如何将net core web api 运行在Docker

如何利用svn自动同步更新到网站服务器

我们最终的目的是:当本地提交后,SVN服务器自动更新服务器端指定WEB目录内的文件 实现方法: 找到服务器端 SVN版本库所在的目录(目录名称是Repositories),这个目录是在安装VisualSVN Server设置的,根据你安装时的设置找到Repositories这个目录,在这个目录下面找到你创建的项目目录,在项目目录下面找到hooks目 录,在此目录中创建一个名为post-commit.bat的批处理文件,内容如下: @echo off "D:\VisualSVN Server\bi

从svn拿增量包

项目更新常常需要打增量包,SVN让增量包更简单. 对svn中的trunk目录下项目点右键-->show logs --->找到要发布的版本-->右键-->compare with previours revision:如图 如上图,比较的两个版本是可以选择的.选择要发布的文件-->右键--->export -->到指定目录就可以了.

svn自动更新服务器最新代码

1.很简单打开dos界面 cd到svn exe目录下,运行 cd C:\Program Files\TortoiseSVN\bin    --svn安装目录(作者使用时TortoiseSVN客户端,其他客户端未测试过)start TortoiseProc.exe /command:update /path:"F:\_xxx_svn\branches\xxxxx" /closeonend:3 update是命令,/path后面是同步路径start TortoiseProc.exe /co

windows下svn自动更新

配置hooks下post-commit.bat文件,文件内容如下 @echo offSET REPOS=%1SET REV=%2SET DIR=%REPOS%/hooksSET PATH=%PATH%;SET WORKING=E:/EnvirOnment/WWW @网站根目录svn update %WORKING% --username eves_china --password test2015 注意: 1.svn服务器的程序bin目录需要加入path路径. 2.进入计算机服务-->>Vis

SVN自动实现全量备份(Windows服务器)

一.SVN全量备份脚本: 1)新建文件backup.bat,打开编辑,输入如下内容: echo off rem Subversion的安装目录 set SVN_HOME="C:\Program Files (x86)\VisualSVN Server" rem 所有版本库的父目录 set SVN_ROOT=D:\Repositories rem 备份的目录 set BACKUP_SVN_ROOT=D:\SvnBak       (备注:红色标识的地方根据实际情况需要修改) rem 创建

GitLab 数据自动备份

gitlab自动备份 周期性计划任务: crontab -e 0 0 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create service crond restart 每天凌晨备份gitlab的数据 删除过期的备份文件: 因为每天都会进行一次备份,而备份的数据比较大,磁盘空间会被大量使用,因此,定期删除过期的文件 vim /var/opt/gitlab/backups/remove.sh !/bin/bash find "/var/opt/