image: python:3.9 stages: - deploy - deploy-latest deploy: stage: deploy script: - pip install -U setuptools wheel twine - python setup.py sdist bdist_wheel # test package - python3 -m venv test - . test/bin/activate - pip install -U dist/python_gitlab*.whl - gitlab -h - deactivate - twine upload --skip-existing -u $TWINE_USERNAME -p $TWINE_PASSWORD dist/* only: - tags deploy_image: stage: deploy image: name: gcr.io/kaniko-project/executor:debug entrypoint: [""] script: - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG only: - tags deploy-latest: stage: deploy-latest image: name: gcr.io/go-containerregistry/crane:debug entrypoint: [""] script: - mkdir /root/.docker && echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /root/.docker/config.json - /ko-app/crane cp $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG $CI_REGISTRY_IMAGE:latest only: - tags