-
Pierre-Yves David authored
When we run the job multiple time, the upload step fails because the file always exists. So we pass the `--skip-existing` flag that is supposed to help with that… when supported. This might have no effect outside of upload to PyPI as the doc says: Continue uploading files if one already exists. (Only valid when uploading to PyPI. Other implementations may not support this.)
Pierre-Yves David authoredWhen we run the job multiple time, the upload step fails because the file always exists. So we pass the `--skip-existing` flag that is supposed to help with that… when supported. This might have no effect outside of upload to PyPI as the doc says: Continue uploading files if one already exists. (Only valid when uploading to PyPI. Other implementations may not support this.)
heptapod-ci.yml 19.96 KiB
# Don't run pipelines on branch "merge", since we're fast-forward only.
# Gitlab sees a new branch (since e.g. `topic/stable/my-topic` becomes
# `branch/stable`), but the hash hasn't changed. There is no reason to
# re-run the CI in our case, since we haven't built up any specific automation.
# Right now it's just wasted CI and developer time.
# One can still run the pipeline manually via the web interface,
# like in the case of releases, to make *extra* sure that the actual branch
# has succeeded.
workflow:
rules:
- if: ($CI_COMMIT_BRANCH =~ /^branch\/.*/ || $CI_COMMIT_TAG) && $CI_PIPELINE_SOURCE !~ "/web|schedule/"
when: never
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
when: never
- if: $CI_PIPELINE_SOURCE == "push"
when: always
- if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS
when: never
- if: $CI_COMMIT_BRANCH
when: always
stages:
- nightly-trigger
- build
- checks
- tests
- platform-compat
- py-version-compat
- upload
image: registry.heptapod.net/mercurial/ci-images/mercurial-core:$HG_CI_IMAGE_TAG
variables:
# to debug use:
#
# RE_BRANCH: '/^topic/.+/.+$/'
# RE_TOPIC: '/^xxx/'
#
# Instead of the two following lines:
RE_BRANCH: '/^branch/.+$/'
RE_TOPIC: '/^topic/.+/.+$/'
PYTHON: python
HG_CI_IMAGE_TAG: "v2.1"
# a directory dedicated to creating files and temporary clone
# with shell runner, its content is not cleaned from one call to the next,
# so plan for it.
TMP_WORK_DIR: "${CI_PROJECT_DIR}/../.."
.all:
# help changing all job at once when debugging
when: on_success
# make sure jobs from later steps does not wait for anything implicit before
# starting.
needs: []
# dummy job that serve dependencies purpose
.dummy:
# smallest I know of
image: busybox
variables:
GIT_STRATEGY: none
CI_CLEVER_CLOUD_FLAVOR: "XS"
script:
- echo 'nothing to see here'
# a dummy job that only serve to trigger others
#
# This is useful for two reasons: