pipeline { agent { kubernetes { label 'kubernetes-agent' yamlFile 'podTemplate.yaml' } } environment { ACR_NAME = '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 ${ACR_NAME} docker push ${DOCKER_IMAGE} ''' } } } } }