user-microservice/Jenkinsfile
2025-06-10 19:32:40 +00:00

51 lines
1.4 KiB
Groovy

pipeline {
agent {
kubernetes {
label 'kubernetes-agent'
yamlFile 'podTemplate.yaml'
}
}
environment {
ACR_USERNAME = 'marcin00'
CLIENT_ID = 'c302726f-fafb-4143-94c1-67a70975574a'
DOCKER_REGISTRY_URL = 'marcin00.azurecr.io'
DOCKER_IMAGE = "${DOCKER_REGISTRY_URL}/user-microservice:${GIT_COMMIT}"
}
stages {
stage('Code Tests') {
steps {
container('python') {
dir('api') {
sh '''
python3 -m venv env
source env/bin/activate
pip install -r requirements.txt pytest
python3 -m pytest --junit-xml=pytest_junit.xml
'''
}
}
}
post {
always {
junit testResults: '**/*pytest_junit.xml'
}
}
}
stage('Build & Push Docker') {
steps {
container('docker') {
sh '''
docker build -t ${DOCKER_IMAGE} .
az login --identity --client-id ${CLIENT_ID}
az acr login --name marcin00
docker push ${DOCKER_IMAGE}
'''
}
}
}
}
}