123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- image: docker:20.10.22
- variables:
- DOCKER_DRIVER: overlay2
- DOCKER_TLS_CERTDIR: "/certs"
- DOCKER_HOST: tcp://docker:2376
- # Where to publish this build's tagged working container.
- DOCKER_SHA: $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
- DOCKER_BRANCH: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME
- DOCKER_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG
- DOCKER_LATEST: $CI_REGISTRY_IMAGE:latest
- services:
- - docker:20.10.22-dind
- stages:
- - build
- - test
- - release
- before_script:
- - docker info
- - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
- build-upload:
- image: python:3.11
- stage: build
- before_script:
- - python -V
- - echo "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/pypi"
- script:
- - pip install build twine flit
- - FLIT_INDEX_URL=${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/pypi flit build
- - TWINE_PASSWORD=${CI_JOB_TOKEN} TWINE_USERNAME=gitlab-ci-token python -m twine upload --repository-url ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/pypi dist/*
- only:
- - tags
- .build-upload-pypi:
- image: python:3.11
- stage: build
- before_script:
- - python -V
- - echo "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/pypi"
- script:
- - pip install build twine flit
- - flit build
- - python -m twine upload dist/*
- only:
- - tags
- build_docker:
- stage: build
- script:
- - docker pull $DOCKER_BRANCH || true
- - docker build --cache-from $DOCKER_BRANCH -f ./Dockerfile --tag $DOCKER_BRANCH .
- - docker push $DOCKER_BRANCH
- only:
- refs:
- - master
- - tags
- build_tagged_docker:
- stage: build
- script:
- - docker pull $DOCKER_BRANCH || true
- - docker tag $DOCKER_BRANCH $DOCKER_LATEST
- - docker push $DOCKER_LATEST
- - docker tag $DOCKER_BRANCH $DOCKER_TAG
- - docker push $DOCKER_TAG
- only:
- - tags
|