Jenkins自动备份Job配置、主目录的方案

笔者计划采用以下方案备份 Jenkins 的数据:

  • 安装“Job Configuration History”插件,用于记录各个 Job 以及系统配置的变更历史,可以随时回滚配置。(使用效果类似 Git 的版本管理,好评)
  • 另外,定期对 Jenkins 的主目录做一次备份。

关于备份主目录,虽然 Jenkins 有两个用于备份的插件,但笔者试用之后还是放弃了:

  • Backup :必须手动操作。
  • ThinBackup :可以只备份配置文件,比较轻量级,但是不能备份整个 Jenkins 主目录。

因此,笔者决定自己创建一个定期备份的 Job :

pipeline {
    agent {
        label 'master'
    }
    options {
        timestamps()
        timeout(time: 60, unit: 'MINUTES')
        disableConcurrentBuilds()
    }
    triggers {
        cron('H 22 * * 7')          // 每周日执行一次
    }
    stages {
        stage("备份 Jenkins 主目录") {
            steps {
                sh """
                    cd ${env.JENKINS_HOME}/../
                    zip -rq jenkins_home_backup_`date +%Y%m%d`.zip ${env.JENKINS_HOME}/
                    find `ls jenkins_home_backup_*.zip` ! -mtime -30 | xargs -n 1 rm -f     // 删掉 30 天以前的备份
                """
            }
        }
    }
}

进一步地,为了避免单点故障,应该将备份的包保存到其它主机上。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值