image: python:latest stages: - build - deploy build: # This job runs in the build stage, which runs first. stage: build script: - pip install build twine - mkdir build/src/AirwatchAPI/ - mv AirwatchAPI.py build/src/AirwatchAPI/ - cd build/ - python -m build deploy: stage: deploy variables: TWINE_USERNAME: gitlab-ci-token TWINE_PASSWORD: $CI_JOB_TOKEN script: - python -m twine upload --repository-url ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/pypi dist/* rules: - if: $CI_COMMIT_TAG