annotate .gitlab-ci.yml @ 6006:90af9db93d2b mercurial-4.7

test-compat: merge mercurial-4.8 into mercurial-4.7
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Thu, 12 Aug 2021 22:01:14 +0200
parents 8bd3348c4150
children 3641f0a2d1cc
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5371
02804d8bac31 ci: use a script template to pull and update /ci/repos/mercurial/
Anton Shestakov <av6@dwimlabs.net>
parents: 5370
diff changeset
1 .prepare_hg: &prepare_hg
02804d8bac31 ci: use a script template to pull and update /ci/repos/mercurial/
Anton Shestakov <av6@dwimlabs.net>
parents: 5370
diff changeset
2 - hg pull -R /ci/repos/mercurial/
5541
98e2613d797d branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 5371 5538
diff changeset
3 - hg_branch=$(tests/testlib/map-hg-rev.sh "$(hg identify --branch)")
98e2613d797d branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 5371 5538
diff changeset
4 - hg -R /ci/repos/mercurial/ update "$hg_branch"
5564
0e23393dda9c ci: drop extraneous space
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 5541
diff changeset
5 - hg_rev=$(hg log -R /ci/repos/mercurial/ -r . -T '{node}')
5541
98e2613d797d branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 5371 5538
diff changeset
6 - echo testing with mercurial branch="$hg_branch", revision="$hg_rev"
4926
0fad1d376814 heptapod-ci: test with python3 too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4925
diff changeset
7
5076
43b448bb1a57 heptapod-ci: add pytype job, allow it to fail for now
Anton Shestakov <av6@dwimlabs.net>
parents: 4986
diff changeset
8 pytype:
5677
9a16cf248b05 heptapod-ci: new address for base Docker images
Georges Racinet <georges.racinet@octobus.net>
parents: 5662
diff changeset
9 image: registry.heptapod.net/mercurial/ci-images/py3-hgext3rd
5076
43b448bb1a57 heptapod-ci: add pytype job, allow it to fail for now
Anton Shestakov <av6@dwimlabs.net>
parents: 4986
diff changeset
10 script:
5371
02804d8bac31 ci: use a script template to pull and update /ci/repos/mercurial/
Anton Shestakov <av6@dwimlabs.net>
parents: 5370
diff changeset
11 - *prepare_hg
5370
06b5e43ac29c ci: print the exact version of pytype
Anton Shestakov <av6@dwimlabs.net>
parents: 5369
diff changeset
12 - pytype --version
5076
43b448bb1a57 heptapod-ci: add pytype job, allow it to fail for now
Anton Shestakov <av6@dwimlabs.net>
parents: 4986
diff changeset
13 - jobs=$(python -c 'import multiprocessing; print multiprocessing.cpu_count()')
43b448bb1a57 heptapod-ci: add pytype job, allow it to fail for now
Anton Shestakov <av6@dwimlabs.net>
parents: 4986
diff changeset
14 - pytype -P /ci/repos/mercurial/:hgext3rd -k hgext3rd -x hgext3rd/evolve/thirdparty -j $jobs || true
43b448bb1a57 heptapod-ci: add pytype job, allow it to fail for now
Anton Shestakov <av6@dwimlabs.net>
parents: 4986
diff changeset
15 when: manual
43b448bb1a57 heptapod-ci: add pytype job, allow it to fail for now
Anton Shestakov <av6@dwimlabs.net>
parents: 4986
diff changeset
16
5341
efb8ae4419b2 ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents: 5076
diff changeset
17 variables:
efb8ae4419b2 ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents: 5076
diff changeset
18 PY: py2
efb8ae4419b2 ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents: 5076
diff changeset
19 PYTHON: python
efb8ae4419b2 ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents: 5076
diff changeset
20 RUNTEST_ARGS: ""
5342
4a958a7bb138 ci: set HGMODULEPOLICY when running specific variants
Anton Shestakov <av6@dwimlabs.net>
parents: 5341
diff changeset
21 TEST_HGMODULEPOLICY: "allow"
4925
dbeb04ee6679 heptapod-ci: add a --pure variant for the CI
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4924
diff changeset
22
5341
efb8ae4419b2 ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents: 5076
diff changeset
23 .runtests_template: &runtests
5677
9a16cf248b05 heptapod-ci: new address for base Docker images
Georges Racinet <georges.racinet@octobus.net>
parents: 5662
diff changeset
24 image: registry.heptapod.net/mercurial/ci-images/$PY-hgext3rd
5369
2295818ec738 ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents: 5368
diff changeset
25 before_script:
2295818ec738 ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents: 5368
diff changeset
26 - (cd tests; ls -1 test-check-*.t > /tmp/check-tests.txt)
4874
ab0d09c93532 gitlab-ci: be bold and try to run the full test in them
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4873
diff changeset
27 script:
5371
02804d8bac31 ci: use a script template to pull and update /ci/repos/mercurial/
Anton Shestakov <av6@dwimlabs.net>
parents: 5370
diff changeset
28 - *prepare_hg
5358
db1dfa818187 ci: print exact version of used Python
Anton Shestakov <av6@dwimlabs.net>
parents: 5352
diff changeset
29 - ("$PYTHON" --version)
5640
8d93e7fc0daa test-compat: merge mercurial-4.8 into mercurial-4.7
Anton Shestakov <av6@dwimlabs.net>
parents: 5467 5637
diff changeset
30 - jobs=$(python -c 'import multiprocessing; print multiprocessing.cpu_count()')
8d93e7fc0daa test-compat: merge mercurial-4.8 into mercurial-4.7
Anton Shestakov <av6@dwimlabs.net>
parents: 5467 5637
diff changeset
31 - (cd tests; set -x; HGMODULEPOLICY="$TEST_HGMODULEPOLICY" "$PYTHON" /ci/repos/mercurial/tests/run-tests.py -j $jobs --color=always $RUNTEST_ARGS)
5341
efb8ae4419b2 ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents: 5076
diff changeset
32
5369
2295818ec738 ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents: 5368
diff changeset
33 checks-py2:
2295818ec738 ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents: 5368
diff changeset
34 <<: *runtests
2295818ec738 ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents: 5368
diff changeset
35 variables:
2295818ec738 ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents: 5368
diff changeset
36 RUNTEST_ARGS: "--test-list /tmp/check-tests.txt"
2295818ec738 ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents: 5368
diff changeset
37
5341
efb8ae4419b2 ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents: 5076
diff changeset
38 tests-py2-cext:
efb8ae4419b2 ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents: 5076
diff changeset
39 <<: *runtests
5342
4a958a7bb138 ci: set HGMODULEPOLICY when running specific variants
Anton Shestakov <av6@dwimlabs.net>
parents: 5341
diff changeset
40 variables:
5632
ee18173c54a2 test-compat: merge mercurial-5.4 into mercurial-5.3
Anton Shestakov <av6@dwimlabs.net>
parents: 5564
diff changeset
41 RUNTEST_ARGS: "--blacklist /tmp/check-tests.txt"
5342
4a958a7bb138 ci: set HGMODULEPOLICY when running specific variants
Anton Shestakov <av6@dwimlabs.net>
parents: 5341
diff changeset
42 TEST_HGMODULEPOLICY: "c"
4925
dbeb04ee6679 heptapod-ci: add a --pure variant for the CI
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4924
diff changeset
43
dbeb04ee6679 heptapod-ci: add a --pure variant for the CI
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4924
diff changeset
44 tests-py2-pure:
5341
efb8ae4419b2 ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents: 5076
diff changeset
45 <<: *runtests
efb8ae4419b2 ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents: 5076
diff changeset
46 variables:
5369
2295818ec738 ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents: 5368
diff changeset
47 RUNTEST_ARGS: "--pure --blacklist /tmp/check-tests.txt"
5342
4a958a7bb138 ci: set HGMODULEPOLICY when running specific variants
Anton Shestakov <av6@dwimlabs.net>
parents: 5341
diff changeset
48 TEST_HGMODULEPOLICY: "py"
4926
0fad1d376814 heptapod-ci: test with python3 too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4925
diff changeset
49
4986
1214f3d085a9 ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents: 4966
diff changeset
50 doc:
5678
4737d3db1671 heptapod-ci: new address for the evolve-doc base image
Georges Racinet <georges.racinet@octobus.net>
parents: 5677
diff changeset
51 image: registry.heptapod.net/mercurial/ci-images/py3-evolve-doc
4986
1214f3d085a9 ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents: 4966
diff changeset
52 script:
1214f3d085a9 ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents: 4966
diff changeset
53 - cd docs/
1214f3d085a9 ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents: 4966
diff changeset
54 - make
1214f3d085a9 ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents: 4966
diff changeset
55 variables:
5655
1aec5a3be808 docs: properly capitalize LANG value
Anton Shestakov <av6@dwimlabs.net>
parents: 5564
diff changeset
56 LANG: en_US.UTF-8
5662
bec8a04d2f6a docs: build using py3 image
Anton Shestakov <av6@dwimlabs.net>
parents: 5655
diff changeset
57 PYTHON: python3
5359
f4d991ac2cd6 ci: add /ci/repos/mercurial to $PYTHONPATH for docs
Anton Shestakov <av6@dwimlabs.net>
parents: 5076
diff changeset
58 PYTHONPATH: "/ci/repos/mercurial:$PYTHONPATH"
5662
bec8a04d2f6a docs: build using py3 image
Anton Shestakov <av6@dwimlabs.net>
parents: 5655
diff changeset
59 SPHINXBUILD: python3 -m sphinx -b html
4986
1214f3d085a9 ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents: 4966
diff changeset
60 artifacts:
1214f3d085a9 ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents: 4966
diff changeset
61 paths:
1214f3d085a9 ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents: 4966
diff changeset
62 - html/*
5838
c0ed8e574638 ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents: 5678
diff changeset
63
c0ed8e574638 ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents: 5678
diff changeset
64 sdist:
c0ed8e574638 ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents: 5678
diff changeset
65 stage: .post
c0ed8e574638 ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents: 5678
diff changeset
66 image: registry.heptapod.net/mercurial/ci-images/py3-hgext3rd
c0ed8e574638 ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents: 5678
diff changeset
67 script:
c0ed8e574638 ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents: 5678
diff changeset
68 - python3 setup.py sdist
c0ed8e574638 ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents: 5678
diff changeset
69 artifacts:
c0ed8e574638 ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents: 5678
diff changeset
70 paths:
c0ed8e574638 ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents: 5678
diff changeset
71 - dist/*
c0ed8e574638 ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents: 5678
diff changeset
72 only:
c0ed8e574638 ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents: 5678
diff changeset
73 - tags