使用jenkins搭建以及部署go环境-单机版本

jenkins环境安装

docker-compose如下

version: '3'
######## 项目依赖的环境,启动项目之前要先启动此环境 #######
######## The environment that the project depends on, starting this environment before starting the project #######
services:
  jenkins:
    image: jenkinsci/blueocean
    container_name: jenkins
    user: root
    volumes:
      - ./data/jenkins:/var/jenkins_home
      - ./var/run/docker.sock:/var/run/docker.sock
    environment:
      JENKINS_HOST_HOME: "/data/jenkins"
  ports:
      - "8080:8080"
  - "5000:5000"
  - "50000:50000"
Publish over SSH 配置SSH服务器

使用jenkins搭建以及部署go环境-单机版本

使用jenkins搭建以及部署go环境-单机版本

使用jenkins搭建以及部署go环境-单机版本

sh文件内容

使用jenkins搭建以及部署go环境-单机版本

testjenkins.sh
#!/bin/bash
echo "----------------------开始执行前置环境-----------------------"
echo ""
date_time=`date +%Y%m%d\-%H%M%S`
#Create GOPATH
export GOROOT=/home/fred/soft/go
export GOPATH=/home/fred/workspace
export PATH=$GOPATH:$PATH
export GO111MODULE=on
export GOPROXY=https://goproxy.cn,https://goproxy.io,direct
export ENV=test
#Print Go version
echo "Print Go version"
/home/fred/soft/go/bin/go version
echo "..."
echo "当前GOPATH是:" $GOPATH
echo "当前GOROOT是:" $GOROOT
echo "当前环境是:" $ENV

echo "----------------------结束执行前置环境-----------------------"
echo ""
echo "开始执行sh..."
sh common/script/testrun.sh
testrun.sh
#!/bin/bash
echo "脚本开始执行..."
# 拉代码
echo "----------------------------------start git pull---------------------------------------"
cd /home/fred/workspace/src/fudai-admin
git checkout test
git pull
echo "----------------------------------end git pull-----------------------------------------"
echo ""
echo "------------------------------start build project--------------------------------------"
/home/fred/soft/go/bin/go build -o fudai-admin-test  -ldflags "-X main.ConfigFileAll=./common/etc/config-test.yaml -X main.UpdateModelAll=1.0"
NAME="fudai-admin-test"
PROCESS="./fudai-admin-test"
LOG="./fudai-admin-test-run.log"
echo $NAME
echo "-------------------------------end build project----------------------------------------"
echo ""
ID=`ps -ef | grep "$NAME" | grep -v "grep" | awk '{print $2}'`
if [ -z "$ID" ];then
    echo "process id is empty, process is not existed..."
    echo "process will start..."
#    nohup $PROCESS >$LOG 2>&1 &
#    nohup $PROCESS >$LOG 2>&1 &
    sudo supervisorctl restart fudai-admin
    echo "process has start..."
else
          echo "-------------------------------start killed project-------------------------------------"
    echo $ID
        for id in $ID
        do
        sudo kill -9 $id
        echo "killed $id"
        echo "-------------------------------end killed project---------------------------------------"
        echo ""
    done
#    nohup $PROCESS >$LOG 2>&1 &
#    nohup /home/fred/workspace/src/fudai-admin/fudai-admin-test > /home/fred/workspace/src/fudai-admin/fudai-admin-test.log 2>&1 &
    echo "----------------------start restart supervisor fudai-admin-----------------------------"
    sudo supervisorctl restart fudai-admin
    echo "process has restart..."
    echo "-----------------------end restart supervisor fudai-admin-------------------------------"
    echo ""
fi
本作品采用《CC 协议》,转载必须注明作者和本文链接
good good study day day up
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!