Modified building step
This commit is contained in:
parent
bf60011948
commit
c996be5953
@ -12,28 +12,43 @@ steps:
|
||||
- pip install -r requirements.txt pytest
|
||||
- python3 -m pytest --junit-xml=pytest_junit.xml
|
||||
|
||||
- name: build-test-and-push-image
|
||||
image: docker:dind
|
||||
privileged: true
|
||||
- name: build
|
||||
image: docker
|
||||
environment:
|
||||
DOCKER_HOST: unix:///var/run/docker.sock
|
||||
ACR_USERNAME: marcin00
|
||||
ACR_PASSWORD:
|
||||
from_secret: acr_password
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
commands:
|
||||
- dockerd-entrypoint.sh &
|
||||
- sleep 3
|
||||
- DOCKER_IMAGE=user-microservice:CI_COMMIT_SHA
|
||||
- export DOCKER_IMAGE=marcin00.azurecr.io/user-microservice:$CI_COMMIT_SHA
|
||||
|
||||
- echo "===> Building Docker image"
|
||||
- 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 "===> Installing bash"
|
||||
- apk add --no-cache curl bash
|
||||
|
||||
- echo "===> Installing goss"
|
||||
- curl -L https://github.com/aelsabbahy/goss/releases/latest/download/goss-linux-amd64 -o goss
|
||||
- chmod +x goss
|
||||
|
||||
- echo "===> Starting container for test"
|
||||
- "CONTAINER_ID=$(docker run -d -e SQLALCHEMY_DATABASE_URI=sqlite:///:memory: $DOCKER_IMAGE)"
|
||||
- sleep 3 # czas na uruchomienie
|
||||
|
||||
- echo "===> Copying goss.yaml to container"
|
||||
- docker cp goss.yaml $CONTAINER_ID:/goss.yaml
|
||||
|
||||
- echo "===> Running goss tests"
|
||||
- docker exec $CONTAINER_ID ./goss -g /goss.yaml validate --format junit > ../goss_junit.xml
|
||||
|
||||
- echo "===> Cleaning up test container"
|
||||
- docker stop $CONTAINER_ID
|
||||
- docker rm $CONTAINER_ID
|
||||
|
||||
- echo "===> Logging in to 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