view .gitlab-ci.yml @ 6130:cd07d6bd4e2a

cmdrewrite: a new `hg fixup` command This new command can be used to amend specific revisions with working copy changes. Implementation-wise what it basically does is: 1) commit working directory changes 2) relocate the new commit onto the target commit 3) fold them into one. After the run, the working directory parent will be the obsoleted changeset created in step 1 and descendants of the target will become orphans.
author Sushil khanchi <sushilkhanchi97@gmail.com>
date Wed, 03 Nov 2021 22:59:17 +0530
parents a6e93dc6e570
children
line wrap: on
line source

.prepare_hg: &prepare_hg
    - hg pull -R /ci/repos/mercurial/
    - hg_branch=${HG_BRANCH:-$(tests/testlib/map-hg-rev.sh "$(hg identify --branch)")}
    - hg -R /ci/repos/mercurial/ update "$hg_branch"
    - hg_rev=$(hg log -R /ci/repos/mercurial/ -r . -T '{node}')
    - echo testing with mercurial branch="$hg_branch", revision="$hg_rev"

pytype:
    image: registry.heptapod.net/mercurial/ci-images/py3-hgext3rd
    script:
        - *prepare_hg
        - pytype --version
        - jobs=$(python -c 'import multiprocessing; print multiprocessing.cpu_count()')
        - pytype -P /ci/repos/mercurial/:hgext3rd -k hgext3rd -x hgext3rd/evolve/thirdparty -j $jobs || true
    when: manual

variables:
    PY: py2
    PYTHON: python
    RUNTEST_ARGS: ""
    TEST_HGMODULEPOLICY: "allow"

.runtests_template: &runtests
    image: registry.heptapod.net/mercurial/ci-images/$PY-hgext3rd
    before_script:
        - (cd tests; ls -1 test-check-*.t > /tmp/check-tests.txt)
    script:
        - *prepare_hg
        - ("$PYTHON" --version)
        - (cd tests; set -x; HGMODULEPOLICY="$TEST_HGMODULEPOLICY" "$PYTHON" /ci/repos/mercurial/tests/run-tests.py --color=always $RUNTEST_ARGS)

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

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

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

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

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

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

doc:
    image: registry.heptapod.net/mercurial/ci-images/py3-evolve-doc
    script:
        - cd docs/
        - make
    variables:
        LANG: en_US.UTF-8
        PYTHON: python3
        PYTHONPATH: "/ci/repos/mercurial:$PYTHONPATH"
        SPHINXBUILD: python3 -m sphinx -b html
    artifacts:
        paths:
            - html/*

sdist:
    stage: .post
    image: registry.heptapod.net/mercurial/ci-images/py3-hgext3rd
    script:
        - python3 setup.py sdist
    artifacts:
        paths:
            - dist/*
    only:
        - tags

.windows_runtests_template: &windows_runtests
    before_script:
        - C:/MinGW/msys/1.0/bin/sh.exe --login -c 'cd "$OLDPWD" && ls -1 tests/test-check-*.t > C:/Temp/check-tests.txt'
    script:
        - C:/MinGW/msys/1.0/bin/sh.exe --login -c 'cd "$OLDPWD" && tests/testlib/update-hg-repo.sh C:/Temp/hg'
        - >
          C:/MinGW/msys/1.0/bin/sh.exe --login -c '
          cd "$OLDPWD" &&
          evo_branch=$(hg identify --branch) &&
          hg_branch=${HG_BRANCH:-$(tests/testlib/map-hg-rev.sh "$evo_branch")} &&
          hg -R C:/Temp/hg update "$hg_branch" &&
          hg_rev=$(hg log -R C:/Temp/hg -r . -T "\{node\}") &&
          echo testing with mercurial branch="$hg_branch", revision="$hg_rev"'
        - Invoke-Expression "$Env:PYTHON --version"
        - echo "$Env:RUNTEST_ARGS"
        - C:/MinGW/msys/1.0/bin/sh.exe --login -c 'cd "$OLDPWD" && HGMODULEPOLICY="$TEST_HGMODULEPOLICY" $PYTHON C:/Temp/hg/tests/run-tests.py --color=always $RUNTEST_ARGS'

windows-py3:
    <<: *windows_runtests
    tags:
        - windows
    variables:
        PYTHON: py -3
        RUNTEST_ARGS: "--blacklist C:/Temp/check-tests.txt"
        TEST_HGMODULEPOLICY: "c"
    when: manual