Added steps to build, test and push docker image
This commit is contained in:
parent
1254b036f5
commit
82d5962020
@ -3,7 +3,7 @@ when:
|
|||||||
branch: woodpecker
|
branch: woodpecker
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: build
|
- name: code-tests
|
||||||
image: python:3.11.7-alpine
|
image: python:3.11.7-alpine
|
||||||
commands:
|
commands:
|
||||||
- cd api
|
- cd api
|
||||||
@ -11,3 +11,29 @@ steps:
|
|||||||
- source env/bin/activate
|
- source env/bin/activate
|
||||||
- pip install -r requirements.txt pytest
|
- pip install -r requirements.txt pytest
|
||||||
- python3 -m pytest --junit-xml=pytest_junit.xml
|
- python3 -m pytest --junit-xml=pytest_junit.xml
|
||||||
|
|
||||||
|
- name: build-test-and-push-image
|
||||||
|
image: docker:dind
|
||||||
|
privileged: true
|
||||||
|
environment:
|
||||||
|
DOCKER_HOST: unix:///var/run/docker.sock
|
||||||
|
ACR_USERNAME: marcin00
|
||||||
|
ACR_PASSWORD:
|
||||||
|
from_secret: acr_password
|
||||||
|
commands:
|
||||||
|
- dockerd-entrypoint.sh &
|
||||||
|
- sleep 3
|
||||||
|
- DOCKER_IMAGE=user-microservice:CI_COMMIT_SHA
|
||||||
|
- docker build -t $DOCKER_IMAGE .
|
||||||
|
- apk add --no-cache bash
|
||||||
|
- wget https://github.com/aelsabbahy/goss/releases/latest/download/goss-linux-amd64 -O goss
|
||||||
|
- wget https://github.com/aelsabbahy/goss/releases/latest/download/dgoss -O dgoss
|
||||||
|
- chmod +rx *goss
|
||||||
|
- export GOSS_OPTS="-f junit"
|
||||||
|
- export GOSS_PATH=./goss
|
||||||
|
- export GOSS_SLEEP=3
|
||||||
|
- ./dgoss run -e SQLALCHEMY_DATABASE_URI=sqlite:///:memory: $DOCKER_IMAGE > /workspace/goss_junit.xml
|
||||||
|
- echo "===> Logging into ACR"
|
||||||
|
- echo "$ACR_PASSWORD" | docker login marcin00.azurecr.io -u $ACR_USERNAME --password-stdin
|
||||||
|
- echo "===> Pushing image to ACR"
|
||||||
|
- docker push $DOCKER_IMAGE
|
||||||
|
Loading…
x
Reference in New Issue
Block a user