38 lines
790 B
YAML
Executable File
38 lines
790 B
YAML
Executable File
stages:
|
|
- test
|
|
- build
|
|
- deploy
|
|
|
|
variables:
|
|
DOCKER_REGISTRY: "registry.beaconborn.ru"
|
|
DOCKER_IMAGE: "$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME"
|
|
DOCKER_TAG: "latest"
|
|
DOCKER_HOST: "tcp://docker:2375"
|
|
DOCKER_TLS_CERTDIR: ""
|
|
|
|
test:
|
|
stage: test
|
|
image: python:3.11-alpine
|
|
script:
|
|
- pip install -r requirements.txt
|
|
- python -m unittest discover tests
|
|
only:
|
|
- main
|
|
|
|
|
|
image: docker:latest
|
|
|
|
services:
|
|
- docker:dind
|
|
|
|
before_script:
|
|
- apk add --no-cache docker-cli
|
|
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $DOCKER_REGISTRY
|
|
|
|
build:
|
|
stage: build
|
|
script:
|
|
- docker build -t $DOCKER_REGISTRY/$DOCKER_IMAGE:$DOCKER_TAG .
|
|
- docker push $DOCKER_REGISTRY/$DOCKER_IMAGE:$DOCKER_TAG
|
|
only:
|
|
- main |