真的很烦流水线 什么都要写 自由风格或者其它用插件多爽,代码写的少
流水线
def code_url="git@192.168.1.1:server/123.git"
def cweb_url="git@192.168.1.1:456/web-admin.git"
def cehua_url="git@192.168.1.1:789/csv.git"
def gitee_auth_id="53987"
def aliyun_registry_auth_id="d4"
pipeline {
agent any
environment {
GO114MODULE = 'on'
CGO_ENABLED = 0
GOPROXY = "https://goproxy.cn,direct"
GOBIN = "/var/lib/jenkins/workspace/test-web1"
VER = "`TZ=Asia/Shanghai date +%Y-%m-s%d.%H.%M`"
}
stages {
stage('删除老的代码') {
steps {
sh "rm -rf *"
sh "rm -rf /var/lib/jenkins/workspace/webbuild/csv"
sh "rm -rf /var/lib/jenkins/workspace/webbuild/backstage"
sh "rm -rf /var/lib/jenkins/workspace/webbuild/operateweb"
}
}
stage('拉取代码CSV') {
steps {
sh "git clone -b master ${cweb_url} "
sh "git clone -b ${branch} ${code_url} "
sh "git clone -b ${cehuabranch} ${cehua_url} "
sh "mv -f csv /var/lib/jenkins/workspace/webbuild"
}
}
stage('编译operateweb') {
steps {
sh '''
cd 123/src
/usr/local/go/bin/go build -o webswr ./operateweb/*.go
mv -f webswr /var/lib/jenkins/workspace/webbuild/operateweb
'''
}
}
stage('编译web') {
steps {
nodejs('nodejs14') {
sh '''
#!/bin/bash
cd /var/lib/jenkins/workspace/test-web1/web-admin
echo $PATH
node -v
npm -v
npm install core-js@3 -save-dev
yarn install
# npm run build:prod
npm run build:jenkins'''
}
}
}
stage('构建镜像') {
steps {
sh '''
mv -f /root/web-jenkins-admin /var/lib/jenkins/workspace/webbuild/backstage
cd /var/lib/jenkins/workspace/webbuild/
docker build -t ${dockerregister}:5000/bin_websrv:latest -f DockerfileWeb .
'''
}
}
stage('推送境像') {
steps {
sh "docker push ${dockerregister}:5000/bin_websrv:latest"
}
}
}
}
这里先说这段段代码缺点,老是删除git 下载慢 然后是自己乱建立的目录 看的眼花缭乱
主要看格式,和node,下面这个nodejs14是全局配置工具的别名
此图是全局配置工具的
nodejs('nodejs14') {
sh '''
#!/bin/bash
cd /var/lib/jenkins/workspace/test-web1/web-admin
echo $PATH
node -v
npm -v
npm install core-js@3 -save-dev
yarn install
# npm run build:prod
npm run build:jenkins'''
}



