linux系统Jenkins工具参数化构建

Jenkins参数化构建

web服务器

复制代码
下载nginx
下载git

cd /usr/share/nginx

rm -rf html

git clone http://root:Qq123456@192.168.188.176/ximu/test-nginx.git

mv test-nginx/ html

jenkins服务器

复制代码
下载ansible
编写主机清单
复制代码
vim /opt/hosts
[nginx]
web服务器ip
编写脚本代码
复制代码
vim ansible.sh

#/bin/bash
SERVICE_NAME=$1
SERVICE_STATUS=$2
GITLAB_CODE=$3
GITLAB_ID=$4

HOSTFILE=/opt/hosts

CMD="ansible -i $HOSTFILE $1"


if [ $SERVICE_NAME = "nginx" ];then
  if [ $GITLAB_CODE = "pull" ];then
     $CMD -m shell -a 'chdir=/usr/share/nginx/html git pull origin main'
  elif [ $GITLAB_CODE = "reset1" ];then
     $CMD -m shell -a 'chdir=/usr/share/nginx/html git reset --hard HEAD^'
  elif [ $GITLAB_CODE = "reset2" ];then
     $CMD -m shell -a 'chdir=/usr/share/nginx/html git reset --hard HEAD^^'
  elif [ $GITLAB_CODE = "reset_id" ];then
     $CMD -m shell -a "chdir=/usr/share/nginx/html git reset --hard $GITLAB_ID"
  fi
  if [ $SERVICE_STATUS != "none" ]  ;then
    systemctl $SERVICE_STATUS nginx
  fi
fi

jenkins服务web页面操作









相关推荐
划水的code搬运工小李3 分钟前
ubuntu下使用opencode
linux·运维·ubuntu
ZPC821010 分钟前
Ubuntu 实时性优化(专属定制版,适配 fast_shm 通信)
linux·数据库·postgresql
郝学胜-神的一滴10 分钟前
epoll 边缘触发 vs 水平触发:从管道到套接字的深度实战
linux·服务器·开发语言·c++·网络协议·unix
韩明君23 分钟前
OpenClaw安全部署实现
linux·人工智能·安全·debian·本地部署·ai agent·openclaw
代码中介商34 分钟前
Linux 文件操作系统调用完全指南:从 open 到 close
linux·运维·服务器
想拿大厂offer41 分钟前
【Linux】权限
linux·服务器
倔强的石头1061 小时前
【Linux指南】基础IO系列(七):“一切皆文件” 底层实现 ——struct file 与统一 IO 接口的魔法
linux·运维·服务器
网络小白不怕黑1 小时前
1.1 VMware部署Rocky Linux 9 (GPT分区表,最小化安装)
linux·服务器·gpt
满天星83035771 小时前
【Linux/多路复用】poll和epoll的使用
linux·服务器·c++·后端
快乐的划水a1 小时前
单片机仿Linux驱动开发(一)
linux·驱动开发·单片机