file-system/Jenkinsfile
向宁 df8f1e4cb7 refactor: rewrite file-system from Go to .NET 10 / ABP modular
- Replace Go (Kratos/Wire/Watermill) implementation with .NET 10 solution
- Add FileSystem.slnx, Directory.Build.props and ABP module structure
- Keep Docker/Jenkins/docker-compose deployment artifacts
- This drops all Go sources (cmd/, internal/, api/proto) in favor of src/
2026-06-14 15:02:59 +08:00

91 lines
2.7 KiB
Groovy

pipeline {
agent any
environment {
CI_REGISTRY = '192.168.1.154:31010'
DOCKER_IMAGE = 'docker/file-system-server'
DOCKER_TAG = "${BUILD_NUMBER}"
DEPLOY_DIR = '/home/xiangning/deploy/file-system-server'
}
stages {
stage('Checkout') {
steps {
echo '=== Checkout ==='
checkout scm
sh 'git log --oneline -5'
}
}
stage('Build') {
steps {
echo '=== Build Docker Image ==='
sh """
echo "Registry: ${CI_REGISTRY}"
echo "Image: ${DOCKER_IMAGE}:${DOCKER_TAG}"
docker build -t ${DOCKER_IMAGE}:${DOCKER_TAG} .
docker tag ${DOCKER_IMAGE}:${DOCKER_TAG} ${DOCKER_IMAGE}:latest
"""
}
}
stage('Push') {
steps {
echo '=== Push to Registry ==='
sh """
echo 'dockerxn001624.' | docker login -u docker --password-stdin ${CI_REGISTRY}
docker tag ${DOCKER_IMAGE}:${DOCKER_TAG} ${CI_REGISTRY}/${DOCKER_IMAGE}:${DOCKER_TAG}
docker tag ${DOCKER_IMAGE}:latest ${CI_REGISTRY}/${DOCKER_IMAGE}:latest
docker push ${CI_REGISTRY}/${DOCKER_IMAGE}:${DOCKER_TAG}
docker push ${CI_REGISTRY}/${DOCKER_IMAGE}:latest
"""
}
}
stage('Deploy') {
steps {
echo '=== Deploy ==='
sh """
mkdir -p ${DEPLOY_DIR}
cd ${DEPLOY_DIR}
cat > docker-compose.yml << 'DCOF'
services:
file-system-server:
image: ${CI_REGISTRY}/${DOCKER_IMAGE}:latest
container_name: file-system-server
network_mode: host
restart: unless-stopped
environment:
- ConnectionStrings__Default=Host=192.168.1.154;Port=5432;Database=file_system;Username=postgres;Password=postgres
- S3__Endpoint=http://192.168.1.154:9000
- S3__AccessKey=minioadmin
- S3__SecretKey=minioadmin
- S3__Region=us-east-1
- Jwt__Authority=http://192.168.1.154:5215
volumes:
- ./logs:/app/logs
DCOF
docker compose pull
docker compose down --remove-orphans || true
docker compose up -d
docker image prune -f
docker compose ps
"""
}
}
}
post {
success {
echo '=== CI/CD SUCCESS ==='
}
failure {
echo '=== CI/CD FAILED ==='
}
always {
deleteDir()
}
}
}