pipeline { agent any environment { REMOTE_HOST = "43.159.145.241" // 远程服务器 REMOTE_PROJECT_PATH = "/data/webapps/fly_moon_bigdata" VENV_DIR = "/data/webapps/fly_moon_bigdata/venv" CONDA_PATH = "/root/miniconda3/bin/conda" } stages { stage('Checkout 代码') { steps { git branch: "${params.Code_branch}", credentialsId: 'fly_gitlab_auth', url: 'http://172.24.16.20/python/fly_moon_bigdata.git' } } stage('进程下线') { steps { echo("123") sh "ssh ${REMOTE_HOST} 'sh /data/sh/kill_executor.sh'" } } stage('工程同步') { steps { sh """ ssh ${REMOTE_HOST} 'mkdir -p ${REMOTE_PROJECT_PATH}' rsync -avz --exclude 'venv' ${WORKSPACE}/ ${REMOTE_HOST}:${REMOTE_PROJECT_PATH}/ """ } } stage('安装依赖') { steps { sh """ ssh ${REMOTE_HOST} ' cd ${REMOTE_PROJECT_PATH} && source ~/.bashrc && conda activate search && source ${VENV_DIR}/bin/activate && pip install -r src/xxljob_monitor/requirements.txt ' """ } } stage('工程启动') { steps { echo("启动") sh "ssh ${REMOTE_HOST} 'nohup python ${REMOTE_PROJECT_PATH}/src/xxljob_monitor/executor.py > ${REMOTE_PROJECT_PATH}/src/xxljob_monitor/output.log 2>&1 &'" } } } post { success { echo '✅ 部署成功!' } failure { echo '❌ 部署失败,请检查日志!' } } }