Files
Work-configuration-file/jenkins/流水线配置/oversea_influencer_search_agent.conf

71 lines
2.1 KiB
Plaintext
Raw Normal View History

2025-10-07 15:58:15 +08:00
pipeline {
agent any
environment {
REMOTE_HOST = "43.159.145.241" // 远程服务器
REMOTE_PROJECT_PATH = "/data/webapps/influencer_search_agent" // 远程 Python 项目路径
VENV_DIR = "/data/webapps/influencer_search_agent/venv" // 远程虚拟环境目录
}
stages {
stage('Checkout 代码') {
steps {
git branch: 'test', credentialsId: 'fly_gitlab_auth', url: 'http://172.24.16.20/python/influencer-search-demo.git'
}
}
stage('进程下线') {
steps {
sh "ssh ${REMOTE_HOST} 'sh /data/sh/kill_influencer_search_agent.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} &&
if [ ! -d "${VENV_DIR}" ]; then
python3 -m venv ${VENV_DIR}
fi &&
source ${VENV_DIR}/bin/activate &&
pip install --upgrade pip &&
pip install -r requirements.txt
'
"""
}
}
stage('工程启动') {
steps {
sh """
ssh ${REMOTE_HOST} '
source ${VENV_DIR}/bin/activate &&
nohup env PYTHONPATH=/data/webapps/influencer_search_agent python3 -m dialogue.influencer_search > /data/webapps/influencer_search_agent/nohup.out 2>&1 &
'
"""
}
}
}
post {
success {
echo '✅ 部署成功!'
}
failure {
echo '❌ 部署失败,请检查日志!'
}
}
}