Mercurial > evolve
annotate .gitlab-ci.yml @ 5919:1a8e86053adb stable
topic: don't lose any file changes when changing topic of a merge commit
This file-related logic is taken directly from cmdutil.amend().
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Sun, 09 May 2021 00:10:55 +0800 |
parents | c0ed8e574638 |
children | 8accc5eb0aba 221a2563b02f 97c248f9bb58 |
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>
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>
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>
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) |
5343
f464b29898e3
ci: use set -x to echo the whole run-tests.py command string
Anton Shestakov <av6@dwimlabs.net>
parents:
5342
diff
changeset
|
30 - (cd tests; set -x; HGMODULEPOLICY="$TEST_HGMODULEPOLICY" "$PYTHON" /ci/repos/mercurial/tests/run-tests.py --color=always $RUNTEST_ARGS) |
5341
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
31 |
5369
2295818ec738
ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents:
5368
diff
changeset
|
32 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
|
33 <<: *runtests |
2295818ec738
ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents:
5368
diff
changeset
|
34 variables: |
2295818ec738
ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents:
5368
diff
changeset
|
35 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
|
36 |
2295818ec738
ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents:
5368
diff
changeset
|
37 checks-py3: |
2295818ec738
ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents:
5368
diff
changeset
|
38 <<: *runtests |
2295818ec738
ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents:
5368
diff
changeset
|
39 variables: |
2295818ec738
ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents:
5368
diff
changeset
|
40 PY: py3 |
2295818ec738
ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents:
5368
diff
changeset
|
41 PYTHON: python3 |
2295818ec738
ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents:
5368
diff
changeset
|
42 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
|
43 |
5341
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
44 tests-py2-cext: |
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
45 <<: *runtests |
5342
4a958a7bb138
ci: set HGMODULEPOLICY when running specific variants
Anton Shestakov <av6@dwimlabs.net>
parents:
5341
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: "--no-rust --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: "c" |
4925
dbeb04ee6679
heptapod-ci: add a --pure variant for the CI
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4924
diff
changeset
|
49 |
dbeb04ee6679
heptapod-ci: add a --pure variant for the CI
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4924
diff
changeset
|
50 tests-py2-pure: |
5341
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
51 <<: *runtests |
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
52 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
|
53 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
|
54 TEST_HGMODULEPOLICY: "py" |
4926
0fad1d376814
heptapod-ci: test with python3 too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4925
diff
changeset
|
55 |
0fad1d376814
heptapod-ci: test with python3 too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4925
diff
changeset
|
56 tests-py3-cext: |
5341
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
57 <<: *runtests |
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
58 variables: |
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
59 PY: py3 |
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
60 PYTHON: python3 |
5369
2295818ec738
ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents:
5368
diff
changeset
|
61 RUNTEST_ARGS: "--no-rust --blacklist /tmp/check-tests.txt" |
5342
4a958a7bb138
ci: set HGMODULEPOLICY when running specific variants
Anton Shestakov <av6@dwimlabs.net>
parents:
5341
diff
changeset
|
62 TEST_HGMODULEPOLICY: "c" |
4926
0fad1d376814
heptapod-ci: test with python3 too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4925
diff
changeset
|
63 |
0fad1d376814
heptapod-ci: test with python3 too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
4925
diff
changeset
|
64 tests-py3-pure: |
5341
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
65 <<: *runtests |
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
66 variables: |
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
67 PY: py3 |
efb8ae4419b2
ci: use a template + variables for defining tests
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
68 PYTHON: python3 |
5369
2295818ec738
ci: replace flake8 job by checks-py{2,3} (with more than flake8)
Anton Shestakov <av6@dwimlabs.net>
parents:
5368
diff
changeset
|
69 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
|
70 TEST_HGMODULEPOLICY: "py" |
4986
1214f3d085a9
ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents:
4966
diff
changeset
|
71 |
1214f3d085a9
ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents:
4966
diff
changeset
|
72 doc: |
5678
4737d3db1671
heptapod-ci: new address for the evolve-doc base image
Georges Racinet <georges.racinet@octobus.net>
parents:
5677
diff
changeset
|
73 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
|
74 script: |
1214f3d085a9
ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents:
4966
diff
changeset
|
75 - cd docs/ |
1214f3d085a9
ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents:
4966
diff
changeset
|
76 - make |
1214f3d085a9
ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents:
4966
diff
changeset
|
77 variables: |
5655
1aec5a3be808
docs: properly capitalize LANG value
Anton Shestakov <av6@dwimlabs.net>
parents:
5564
diff
changeset
|
78 LANG: en_US.UTF-8 |
5662
bec8a04d2f6a
docs: build using py3 image
Anton Shestakov <av6@dwimlabs.net>
parents:
5655
diff
changeset
|
79 PYTHON: python3 |
5359
f4d991ac2cd6
ci: add /ci/repos/mercurial to $PYTHONPATH for docs
Anton Shestakov <av6@dwimlabs.net>
parents:
5076
diff
changeset
|
80 PYTHONPATH: "/ci/repos/mercurial:$PYTHONPATH" |
5662
bec8a04d2f6a
docs: build using py3 image
Anton Shestakov <av6@dwimlabs.net>
parents:
5655
diff
changeset
|
81 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
|
82 artifacts: |
1214f3d085a9
ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents:
4966
diff
changeset
|
83 paths: |
1214f3d085a9
ci: add job to build and archive the documentation
Boris Feld <boris.feld@octobus.net>
parents:
4966
diff
changeset
|
84 - html/* |
5838
c0ed8e574638
ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents:
5678
diff
changeset
|
85 |
c0ed8e574638
ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents:
5678
diff
changeset
|
86 sdist: |
c0ed8e574638
ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents:
5678
diff
changeset
|
87 stage: .post |
c0ed8e574638
ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents:
5678
diff
changeset
|
88 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
|
89 script: |
c0ed8e574638
ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents:
5678
diff
changeset
|
90 - 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
|
91 artifacts: |
c0ed8e574638
ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents:
5678
diff
changeset
|
92 paths: |
c0ed8e574638
ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents:
5678
diff
changeset
|
93 - dist/* |
c0ed8e574638
ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents:
5678
diff
changeset
|
94 only: |
c0ed8e574638
ci: build sdist tarball as a post step (only for tagged revisions)
Anton Shestakov <av6@dwimlabs.net>
parents:
5678
diff
changeset
|
95 - tags |