Jenkins自动化CI CD流水线之7--流水线自动化发布PHP项目

1、前提

环境为:lnmphtml

PHP项目:wordpress(此处咱们下载一个wordpress的源码。将其模拟为咱们的代码上传到咱们的git仓库)node

2、配置

1)建立jobnginx

2)参数化构建git

3)配置pipeline脚本(此处采用git仓库获取脚本)服务器

4)最后,保存curl

3、编写jenkinsfile

接下里编写jenkinsfile文件:wordpress

jenkinsfile-PHP:测试

源码文件:url

node ("slave01-172.16.1.2") {
   stage('git checkout') {
       checkout([$class: 'GitSCM', branches: [[name: '${branch}']], doGenerateSubmoduleConfigurations: false, extensions: [], subm
oduleCfg: [], userRemoteConfigs: [[url: 'git@172.16.1.3:/home/git/repos/wordpress']]])
   }
   stage('code copy') {
        sh '''rm -rf ${WORKSPACE}/.git
        mv /usr/share/nginx/html/wp.com /data/backup/wp.com-$(date +"%F_%T")
        cp -rf ${WORKSPACE} /usr/share/nginx/html/wp.com'''
   }
   stage('test') {
       sh "curl http://wp.test.com/status.html"
   }
}

下面为带解释版,但不能够使用,部分注释会形成问题spa

node ("slave01-172.16.1.2") {   //绑定到该节点去执行
   stage('git checkout') {     //拉代码
       checkout([$class: 'GitSCM', branches: [[name: '${branch}']], doGenerateSubmoduleConfigurations: false, extensions: [], su
bmoduleCfg: [], userRemoteConfigs: [[url: 'git@172.16.1.3:/home/git/repos/wordpress']]])
   }
   stage('code copy') {    //复制代码
        sh '''rm -rf ${WORKSPACE}/.git   //删除拉下来的项目的.git敏感文件
        mv /usr/share/nginx/html/wp.com /data/backup/wp.com-$(date +"%F_%T")  //备份旧文件
        cp -rf ${WORKSPACE} /usr/share/nginx/html/wp.com'''  //新文件复制到站点目录
   }
   stage('test') {  #测试
       sh "curl http://wp.test.com/status.html"
   }
}

4、构建

构建概览:

控制台输出详情:

能够看到每一步的执行详情,最后也是成功的!!!!!!

此外咱们能够查看服务器及网页实际体验效果进行验证。

相关文章
相关标签/搜索