contrib/heptapod-ci.yml
author Matt Harbison <matt_harbison@yahoo.com>
Sun, 16 Feb 2020 17:17:41 -0500
changeset 44551 9bae1d1a0f4c
parent 44490 b3991b72d9f1
child 44577 f8427841c8fc
permissions -rw-r--r--
phabricator: add a config knob to import in the secret phase For my use anyway, it's better to have a config knob that's always set than to try to remember a switch. But we can add a tristate switch if desired. Differential Revision: https://phab.mercurial-scm.org/D8137

image: octobus/ci-mercurial-core

# The runner made a clone as root.
# We make a new clone owned by user used to run the step.
before_script:
    - hg clone . /tmp/mercurial-ci/ --noupdate
    - hg -R /tmp/mercurial-ci/ update `hg log --rev '.' --template '{node}'`
    - cd /tmp/mercurial-ci/
    - (cd tests; ls -1 test-check-*.*) > /tmp/check-tests.txt

variables:
    PYTHON: python
    TEST_HGMODULEPOLICY: "allow"

.runtests_template: &runtests
    script:
        - cd tests/
        - echo "python used, $PYTHON"
        - echo "$RUNTEST_ARGS"
        - HGMODULEPOLICY="$TEST_HGMODULEPOLICY" "$PYTHON" run-tests.py --color=always $RUNTEST_ARGS

checks-py2:
    <<: *runtests
    variables:
        RUNTEST_ARGS: "--time --test-list /tmp/check-tests.txt"

checks-py3:
    <<: *runtests
    variables:
        RUNTEST_ARGS: "--time --test-list /tmp/check-tests.txt"
        PYTHON: python3

rust-cargo-test-py2: &rust_cargo_test
    script:
        - echo "python used, $PYTHON"
        - make rust-tests

rust-cargo-test-py3:
    <<: *rust_cargo_test
    variables:
        PYTHON: python3

test-py2:
    <<: *runtests
    variables:
        RUNTEST_ARGS: " --no-rust --blacklist /tmp/check-tests.txt"
        TEST_HGMODULEPOLICY: "c"

test-py3:
    <<: *runtests
    variables:
        RUNTEST_ARGS: " --no-rust --blacklist /tmp/check-tests.txt"
        PYTHON: python3
        TEST_HGMODULEPOLICY: "c"

test-py2-pure:
    <<: *runtests
    variables:
        RUNTEST_ARGS: "--pure --blacklist /tmp/check-tests.txt"
        TEST_HGMODULEPOLICY: "py"

test-py3-pure:
    <<: *runtests
    variables:
        RUNTEST_ARGS: "--pure --blacklist /tmp/check-tests.txt"
        PYTHON: python3
        TEST_HGMODULEPOLICY: "py"

test-py2-rust:
    <<: *runtests
    variables:
        HGWITHRUSTEXT: cpython
        RUNTEST_ARGS: "--rust --blacklist /tmp/check-tests.txt"
        TEST_HGMODULEPOLICY: "rust+c"

test-py3-rust:
    <<: *runtests
    variables:
        HGWITHRUSTEXT: cpython
        RUNTEST_ARGS: "--rust --blacklist /tmp/check-tests.txt"
        PYTHON: python3
        TEST_HGMODULEPOLICY: "rust+c"