zoukankan      html  css  js  c++  java
  • Jenkins自动化CI CD流水线之7--流水线自动化发布PHP项目

    一、前提

    环境为:lnmp

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

    二、配置

    1)创建job

    2)参数化构建

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

    4)最后,保存

    三、编写jenkinsfile

    接下里编写jenkinsfile文件:

    jenkinsfile-PHP:

    源码文件:

    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"
       }
    }

    下面为带解释版,但不可以使用,部分注释会造成问题

    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"
       }
    }

    四、构建

    构建概览:

    控制台输出详情:

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

    此外我们可以查看服务器及网页实际体验效果进行验证。

  • 相关阅读:
    GitHub:如何构建一个股票市场知识图谱?(附代码&链接)
    java运行jar命令提示没有主清单属性
    Modern Qt Development: The Top 10 Tools You Should Be Using
    没本事就不要去追逐梦想了
    ddd
    5分钟快速构建苹果IPA免费发布服务器
    Windows热键注册的底层原理
    云设计模式-Design patterns for microservices
    ubuntu16安装最新版docker
    什么是Docker—无服务器计算服务
  • 原文地址:https://www.cnblogs.com/forever521Lee/p/9593815.html
Copyright © 2011-2022 走看看