jenkins配置以pipeline项目构建项目初体验

官方参考:https://jenkins.io/doc/book/pipeline/
官方语法参考:https://jenkins.io/doc/book/pipeline/syntax/
脚本:
pipeline {
    agent any
    environment { 
    def ITEMNAME = "erp"
    def DESTPATH = "/home/ops/testpipe"
def codePATH="/var/lib/jenkins/workspace/test_pipeline"
    }
    stages {    
        stage('代码拉取'){
            steps {
            echo "checkout from ${ITEMNAME}"
            git url: ' [email protected]***.cn:fangxin-tech/erp.git', branch: 'master'
            
                    }
                    }
        stage('目录检查') {
            steps {
                echo "检查${DESTPATH}目录是否存在"
                script{
                    def resultUpdateshell = sh script: 'ls ${DESTPATH}'
                    if (resultUpdateshell == 0) {
                        skip = '0'
                        return
                    }   
                    }
                    }
                    }       
        stage('服务检查') {
            steps {
                echo "检查nginx进程是否存在"
                script{
                    def resultUpdateshell = sh script: 'ps aux|grep nginx|grep -v grep'
                    if (resultUpdateshell == 0) {
                        skip = '0'
                        return
                    }   
                    }
                    }
                    }
stage('supserver检查') {
     steps {
      echo "检查supserver是否存活"
  script{ 
 def resultUpdateshell = sh script: 'ps -ef |grep supervisor|grep -v grep' 
 if (resultUpdateshell == 0) {
    skip = '0'
return
}
}
}
}

stage('发布确认') {
            steps {
                input "检查完成,是否发布?"
            }
        }                   
        stage('代码推送') {
            steps {
            echo "code sync"
            sh "cp ${codePATH}/*  ${DESTPATH}/ -fr"
        }
        }
stage('gulp检查') {
     steps {
      echo "编译css和js文件"
  script{ 
    // def resultUpdateshell1 = sh script: 'cp -fr /home/ops/erp/node_modules ${DESTPATH}/'
// def resultUpdateshell2 = sh script: 'cp -fr /home/ops/erp/.env ${DESTPATH}/'
     def resultUpdateshell3 = sh script: 'cd  ${DESTPATH} &&  composer install'
 def resultUpdateshell4 = sh script: 'cd  ${DESTPATH} && /home/ops/testpipe/node_modules/.bin/gulp'
 def resultUpdateshell5 = sh script: 'cd  ${DESTPATH} &&  php artisan migrate'
 def resultUpdateshell6 = sh script: 'cd  ${DESTPATH} &&  php artisan queue:restart'

}
}
}
}

原文地址:http://blog.51cto.com/9025736/2061668

时间: 2024-10-10 22:24:49

jenkins配置以pipeline项目构建项目初体验的相关文章

jenkins实现手动选择分支构建项目

需求: 由于我们的程序会有很多分支,测试或者发版会根据不同的分支来构建项目实践: 实现在构建项目的时候弹出弹窗提醒我们来构建那个分支的项目,来构建不同环境的相同目录的程序例如:我们选择构建2.2.5分支,jenkins就会自动构建2.2.5分支          我们选择构建2.2.6分支,jenkins就会自动构建2.2.6分支配置如下:先创建一个自由模式的项目上图的Name:记录一下,等下需要放到git写程序存放位置需要构建项目的分支:点击保存在构建,即可 原文地址:http://blog.

Jenkins中maven的作用--构建项目(三)

本文主要根据Jenkins上的日志来继续说明构建项目的过程,上文我们已经讲到构建一个测试环境或单独终端的过程,详情可以了解上篇文章 一.背景介绍 首先看下SVN代码的仓库的结构: 代码仓库里有一个文件夹,可以随便取名,文件夹中可以放置很多单独的项目,每个项目下有branch,trunk,demand三个文件.在branch下面可以有pc端,微信端, APP端,后台等终端,从下面的结构中,可以看出每个终端的代码中有资源文件夹src(类的定义,配置文件,说明文档,jar包等)和pom文件. 二.构建

Jenkins搭建一个简单的构建项目

0.准备 需要先安装好Jenkins,见文章链接 在浏览器输入localhost:8080/jenkins,打开Jenkins控制台 注意,第一次进入需要输入初始管理密码,保存在一个initAdminPassword文件中,Jenkins会提示该文件路径在何处 由于权限问题,需要在文件管理器中一层一层的点击找到文件 用记事本打开该文件即可,复制密码到框中即可进入安装界面. 这里选择左边的Install suggested plugins安装建议的控件 配置好后就会出现这样界面. 1.新建任务 点

Jenkis pipeline构建项目实践

在完成前文的jenkins server 在k8s环境部署之后,本文我们来测试在k8s集群环境中的jenkins pipeline构建项目和更新,具体环境要求如下:1.jenkins pipeline插件安装成功2.要更新的应用已提前部署3.Jenkins slave中需要有kubectl.svn.mvn客户端且环境变量设置准确4.Jenkis slave需要能和master的api-server进行正常通信(这里为了简便,前文构建jenkins server的时候直接对defalut这个ser

SpringBoot系列——快速构建项目

前言 springboot官方参考指南:https://docs.spring.io/spring-boot/docs/2.1.0.RELEASE/reference/htmlsingle/ Spring Boot是由spring家族提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用“约定大于配置”思想进行了许多默认配置,从而使开发人员简化配置.快速构建项目.愉快开发. 特性 1.创建独立的Spring应用程序     2.直接嵌入Tomcat.Jetty或

Jenkins配置多个项目按照顺序构建

一.安装Jenkins多项目构建插件:Multijob 二.新建Multijob Project任务 三.配置 然后启动就可以了.按照从上到下的顺序执行 yexiangyang [email protected] Jenkins配置多个项目按照顺序构建 原文地址:https://www.cnblogs.com/moy25/p/9706200.html

linux+jenkins+svn环境搭建以及自动部署django项目构建配置

注意点: 系统环境:centos7,python,django,svn,jenkins首先安装好svn版本控制服务,svn安装和配置,也可以通过yum进行安装,安装方式如下yum -y install subversionjenkins安装:jenkins安装参考链接 开发ide:pycharm创建项目:django-admin startproject cmdb jenkins配置 源码管理配置:构建脚本注:如果不指定BUILD_ID则jenkins会自动将运行的相关服务进程kill掉 原文地

gitlab+jenkins+maven+docker持续集成(五)——Maven 项目构建配置

首先,安装插件Maven Integration plugin 接下来我们配置Global Tool Configuration 前提先在系统里安装好jdk, maven, 创建maven项目 其它配置大同小异,主要说明下这步 pom.xml 我这里的是在项目中,如果是其它路径这里直接配置好路径就可以 pom.xml配置这里略过 配置后,我们构建

试用Jenkins 2 的 Pipeline 项目

目前Jenkins最新的版本是2.7,现在试用一下pipeline类型的项目,本来想构建一个1.651版本的Jenkins为例,无奈大陆的网络 访问github不稳定,只好改为简单的工程. 目前有一个代码仓库地址: https://github.com/wangzy23/jenkins-pipeline.git 里面有一个代码文件 jenkins.c , 编译命令是:“gcc jenkins.c -o jenkins” , 运行编译的可执行文件./jenkins ,输出为:“Hello Jenk