Files
codiki-hexagonal/Jenkinsfile
Florian THIERRY 955dc48f51 test ci
2024-09-20 16:46:11 +02:00

84 lines
4.1 KiB
Groovy

pipeline {
agent any
stages {
stage('Configuration') {
steps {
dir('codiki-properties') {
git url:'https://gitea.takiguchi.ovh/Codiki/codiki-properties.git', branch: 'hexagonal-reforged', credentialsId: 'Jenkins-gitea'
}
script {
sh 'sed -i "s/<POSTGRES_PASSWORD>/$(cat ./codiki-properties/passwords/postgres)/g" ./codiki-properties/application-prod.yml'
sh 'cp ./codiki-properties/application-prod.yml ./backend/codiki-launcher/src/main/resources/application-prod.yml'
sh 'sed -i "s/<POSTGRES_PASSWORD>/$(cat ./codiki-properties/passwords/postgres)/g" ./docker-compose.yml'
}
}
}
stage('Build') {
steps {
script {
sh """
sudo /usr/bin/docker build -t codiki-backend -f ./Dockerfile-backend . --no-cache
sudo /usr/bin/docker build -t codiki-frontend -f ./Dockerfile-frontend . --no-cache
sudo /usr/bin/docker save codiki-backend:latest -o ./codiki-backend.tar
sudo /usr/bin/docker save codiki-frontend:latest -o ./codiki-frontend.tar
sudo chown jenkins:jenkins ./codiki-backend.tar
sudo chown jenkins:jenkins ./codiki-frontend.tar
chmod 644 ./codiki-backend.tar
chmod 644 ./codiki-frontend.tar
"""
}
}
}
// stage('Deploy') {
// steps {
// sshPublisher(
// publishers: [
// sshPublisherDesc(
// configName: 'DebianServer [codiki]',
// transfers: [
// sshTransfer(
// cleanRemote: false,
// excludes: '',
// execCommand: '',
// execTimeout: 120000,
// flatten: false,
// makeEmptyDirs: false,
// noDefaultExcludes: false,
// patternSeparator: '[, ]+',
// remoteDirectory: '',
// remoteDirectorySDF: false,
// removePrefix: '',
// sourceFiles: 'codiki-backend.tar,codiki-frontend.tar,docker-compose.yml'
// ),
// sshTransfer(
// cleanRemote: false,
// excludes: '',
// execCommand: """
// cd /opt/nginx
// sudo /usr/bin/docker load < /opt/nginx/takiguchi-nginx.tar
// sudo /usr/bin/docker compose down
// sudo /usr/bin/docker compose up --detach
// """,
// execTimeout: 120000,
// flatten: false,
// makeEmptyDirs: false,
// noDefaultExcludes: false,
// patternSeparator: '[, ]+',
// remoteDirectory: '/opt/nginx',
// remoteDirectorySDF: false,
// removePrefix: '',
// sourceFiles: ''
// )
// ],
// usePromotionTimestamp: false,
// useWorkspaceInPromotion: false,
// verbose: true
// )
// ]
// )
// }
// }
}
}