2025-10-06 11:40:37 -03:00
|
|
|
pipeline {
|
2025-10-21 17:30:23 +00:00
|
|
|
agent {
|
|
|
|
|
docker {
|
|
|
|
|
image 'docker:27-cli'
|
|
|
|
|
args '-v /var/run/docker.sock:/var/run/docker.sock'
|
|
|
|
|
}
|
|
|
|
|
}
|
2025-10-06 11:40:37 -03:00
|
|
|
|
2025-10-14 15:37:30 -03:00
|
|
|
environment {
|
2025-10-21 17:30:23 +00:00
|
|
|
IMAGE_NAME = 'core-pim-test'
|
|
|
|
|
IMAGE_TAG = 'latest'
|
|
|
|
|
CONTAINER_NAME = "${IMAGE_NAME}-container"
|
2025-10-14 15:37:30 -03:00
|
|
|
|
2025-10-21 17:30:23 +00:00
|
|
|
DOCKERHUB_USER = 'ramonvasquezliesa'
|
|
|
|
|
DOCKERHUB_REPO = "${DOCKERHUB_USER}/${IMAGE_NAME}"
|
|
|
|
|
DOCKERHUB_IMAGE = "${DOCKERHUB_REPO}:${IMAGE_TAG}"
|
2025-10-14 15:37:30 -03:00
|
|
|
|
2025-10-21 17:30:23 +00:00
|
|
|
FORGEJO_URL = 'https://forgejo.test.dev.it.liesa.com.ar'
|
|
|
|
|
FORGEJO_OWNER = 'it.dev'
|
|
|
|
|
FORGEJO_REPO = 'integrations.core.pim.git'
|
2025-10-14 15:37:30 -03:00
|
|
|
|
2025-10-21 17:30:23 +00:00
|
|
|
REQUIRE_VERSION_TAG = 'true'
|
|
|
|
|
REMOVE_DANGLING_IMAGES = 'true'
|
|
|
|
|
|
|
|
|
|
PORTS = '8081:80'
|
|
|
|
|
ENV_FILE = ''
|
|
|
|
|
VOLUMES = ''
|
2025-10-14 15:37:30 -03:00
|
|
|
}
|
|
|
|
|
|
2025-10-06 11:40:37 -03:00
|
|
|
stages {
|
2025-10-14 15:37:30 -03:00
|
|
|
stage('Checkout (with submodules)') {
|
|
|
|
|
steps {
|
|
|
|
|
checkout(scmGit(
|
2025-10-21 17:30:23 +00:00
|
|
|
// branches: [[name: '*/dev']],
|
2025-10-14 15:37:30 -03:00
|
|
|
userRemoteConfigs: [[
|
2025-10-21 17:30:23 +00:00
|
|
|
url: "${FORGEJO_URL}/${FORGEJO_OWNER}/${FORGEJO_REPO}",
|
|
|
|
|
credentialsId: 'forgejo-token-hermes'
|
2025-10-14 15:37:30 -03:00
|
|
|
]],
|
2025-10-21 17:30:23 +00:00
|
|
|
extensions: [
|
|
|
|
|
[$class: 'SubmoduleOption',
|
|
|
|
|
disableSubmodules: false,
|
|
|
|
|
recursiveSubmodules: true,
|
|
|
|
|
parentCredentials: true,
|
|
|
|
|
trackingSubmodules: true
|
|
|
|
|
]
|
|
|
|
|
]
|
2025-10-14 15:37:30 -03:00
|
|
|
))
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-10-21 17:30:23 +00:00
|
|
|
stage('Login Docker') {
|
|
|
|
|
steps {
|
|
|
|
|
sh '''
|
|
|
|
|
docker --version
|
|
|
|
|
echo "$DOCKERHUB_TOKEN" | docker login -u "$DOCKERHUB_USER" --password-stdin
|
|
|
|
|
'''
|
|
|
|
|
}
|
2025-10-14 15:37:30 -03:00
|
|
|
}
|
2025-10-21 17:30:23 +00:00
|
|
|
|
|
|
|
|
stage('Docker Login') {
|
2025-10-14 15:37:30 -03:00
|
|
|
steps {
|
|
|
|
|
withCredentials([
|
|
|
|
|
usernamePassword(
|
2025-10-21 17:30:23 +00:00
|
|
|
credentialsId: 'dockerhub-credentials-hermes',
|
2025-10-14 15:37:30 -03:00
|
|
|
usernameVariable: 'DOCKERHUB_USER',
|
|
|
|
|
passwordVariable: 'DOCKERHUB_PASS'
|
|
|
|
|
)
|
|
|
|
|
]) {
|
|
|
|
|
sh '''
|
|
|
|
|
set -eu pipefail
|
|
|
|
|
echo "$DOCKERHUB_PASS" | docker login -u "$DOCKERHUB_USER" --password-stdin
|
|
|
|
|
'''
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-10-21 17:30:23 +00:00
|
|
|
stage('Build Image') {
|
2025-10-14 15:37:30 -03:00
|
|
|
steps {
|
|
|
|
|
script {
|
2025-10-21 17:30:23 +00:00
|
|
|
docker.build("${DOCKERHUB_REPO}:${TAG}", '-f src/Service/Infrastructure/App/Dockerfile .')
|
2025-10-14 15:37:30 -03:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2025-10-21 17:30:23 +00:00
|
|
|
stage('Push Image') {
|
2025-10-14 15:37:30 -03:00
|
|
|
steps {
|
2025-10-21 17:30:23 +00:00
|
|
|
script {
|
|
|
|
|
docker.withRegistry('https://index.docker.io/v1/', 'dockerhub-credentials-hermes') {
|
|
|
|
|
docker.image("${DOCKERHUB_REPO}:${TAG}").push()
|
|
|
|
|
}
|
2025-10-14 15:37:30 -03:00
|
|
|
}
|
2025-10-06 11:40:37 -03:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|