|
9 | 9 | # When actions are enabled then it will - by default - run the 'Sanity Check' job.
|
10 | 10 | #
|
11 | 11 | # Testing other build configurations is controlled by the 'Secrets' configured
|
12 |
| -# in 'Settings' -> 'Secrets' -> 'Actions' -> 'Repository Secrets': |
13 |
| -# - EXTENDED_TESTING: when this secret exists and is set to a true value then |
| 12 | +# in 'Settings' -> 'Secrets and Variables' -> 'Actions' -> 'Variables': |
| 13 | +# - DO_EXTENDED_TESTING: when this var exists and is set to a true value then |
14 | 14 | # all build configurations are tested;
|
15 | 15 | # - CI_SKIP_SANITY: if set to a true value then most of the 'Sanity Check' job is skipped;
|
16 | 16 | # - CI_FORCE_LINUX: if set to a true value: run the 'linux' job;
|
|
33 | 33 | # * string containing only zeroes (i.e. '0', '0000')
|
34 | 34 | # * string containing only spaces and zeroes (i.e. '0 0 0 0')
|
35 | 35 | #
|
36 |
| -# When setting a value it's best to set a long and complex value |
37 |
| -# since GitHub will mask the secrets in the output. Which means if you |
38 |
| -# set (for example) EXTENDED_TESTING to 1 then all occurrences of '1' |
39 |
| -# are replaced with '*'. (e.g. `s/1/*/g;`). So it's recommended to set |
40 |
| -# something that is unlikely to occur in the job(/build/test) output |
41 |
| -# (for example: '111111111111111111', 'Rumpelstiltskin', ...). |
42 |
| -# |
43 | 36 | # Example: if you only want to run tests on cygwin then you can set:
|
44 |
| -# - EXTENDED_TESTING=00000000000000000000000000000000000000 |
45 |
| -# - CI_SKIP_SANITY=1111111111111111111111111111111111111111 |
46 |
| -# - CI_FORCE_CYGWIN=111111111111111111111111111111111111111 |
47 |
| -# - (and all other CI_FORCE_... secrets to 0000000000000000) |
| 37 | +# - DO_EXTENDED_TESTING=0 |
| 38 | +# - CI_SKIP_SANITY=1 |
| 39 | +# - CI_FORCE_CYGWIN=1 |
| 40 | +# - (and all other CI_FORCE_... vars to 0) |
48 | 41 | #
|
49 | 42 |
|
50 | 43 | name: testsuite
|
@@ -117,13 +110,23 @@ jobs:
|
117 | 110 | # "linux-i386" tests -Uusethreads without -DDEBUGGING
|
118 | 111 | # All builds in the "linux" matrix test with -DDEBUGGING
|
119 | 112 | #
|
120 |
| - # "sanity_check" sets `fetch-depth: 0` so that it does a git clone with full |
121 |
| - # history, and hence can run t/porting/cmp_version.t etc |
122 |
| - # The git-related tests require full history, but we only need to run them |
123 |
| - # once (they aren't platform specific). |
124 |
| - # Hence leave the others with the default setting (1), which performs a |
125 |
| - # shallow clone. In these shallow checkouts, the git related porting tests |
126 |
| - # skip (or rapidly pass), but they won't fail spuriously. |
| 113 | + # "sanity_check" sets `fetch-depth: 0` so that it does a git clone |
| 114 | + # with full history, and hence can run t/porting/cmp_version.t etc |
| 115 | + # |
| 116 | + # The git-related tests require full history, but we only need to run |
| 117 | + # them once (they aren't platform specific). Hence leave the others |
| 118 | + # with the default setting (1), which performs a shallow clone. In |
| 119 | + # these shallow checkouts, the git related porting tests skip (or |
| 120 | + # rapidly pass), but they won't fail spuriously. |
| 121 | + # |
| 122 | + # TODO - Now that we do not use secrets and instead use vars for the |
| 123 | + # control of which tests we run (due to the way secrets are elided |
| 124 | + # from the output), we can simplify the shell code below. The |
| 125 | + # following url includes discussion on what next steps we could take |
| 126 | + # to simplify the complexity of this code. |
| 127 | + # |
| 128 | + # https://github.com/Perl/perl5/pull/20845#issuecomment-1440676127 |
| 129 | + # |
127 | 130 |
|
128 | 131 | sanity_check:
|
129 | 132 | name: "Sanity: Linux -Dusethreads"
|
@@ -152,18 +155,18 @@ jobs:
|
152 | 155 | - name: Check what-to-do
|
153 | 156 | id: ci_config
|
154 | 157 | env:
|
155 |
| - CI_SKIP_SANITY: ${{ secrets.CI_SKIP_SANITY }} |
156 |
| - CI_FORCE_LINUX: ${{ secrets.CI_FORCE_LINUX }} |
157 |
| - CI_FORCE_LINUX_I386: ${{ secrets.CI_FORCE_LINUX_I386 }} |
158 |
| - CI_FORCE_INSTALL: ${{ secrets.CI_FORCE_INSTALL }} |
159 |
| - CI_FORCE_MACOS: ${{ secrets.CI_FORCE_MACOS }} |
160 |
| - CI_FORCE_MSVC142: ${{ secrets.CI_FORCE_MSVC142 }} |
161 |
| - CI_FORCE_MINGW64: ${{ secrets.CI_FORCE_MINGW64 }} |
162 |
| - CI_FORCE_CYGWIN: ${{ secrets.CI_FORCE_CYGWIN }} |
163 |
| - CI_FORCE_MINITEST: ${{ secrets.CI_FORCE_MINITEST }} |
164 |
| - CI_FORCE_ASAN: ${{ secrets.CI_FORCE_ASAN }} |
165 |
| - CI_FORCE_PERL_UNICODE: ${{ secrets.CI_FORCE_PERL_UNICODE }} |
166 |
| - CI_FORCE_DIST_MODULES: ${{ secrets.CI_FORCE_DIST_MODULES }} |
| 158 | + CI_SKIP_SANITY: ${{ vars.CI_SKIP_SANITY }} |
| 159 | + CI_FORCE_LINUX: ${{ vars.CI_FORCE_LINUX }} |
| 160 | + CI_FORCE_LINUX_I386: ${{ vars.CI_FORCE_LINUX_I386 }} |
| 161 | + CI_FORCE_INSTALL: ${{ vars.CI_FORCE_INSTALL }} |
| 162 | + CI_FORCE_MACOS: ${{ vars.CI_FORCE_MACOS }} |
| 163 | + CI_FORCE_MSVC142: ${{ vars.CI_FORCE_MSVC142 }} |
| 164 | + CI_FORCE_MINGW64: ${{ vars.CI_FORCE_MINGW64 }} |
| 165 | + CI_FORCE_CYGWIN: ${{ vars.CI_FORCE_CYGWIN }} |
| 166 | + CI_FORCE_MINITEST: ${{ vars.CI_FORCE_MINITEST }} |
| 167 | + CI_FORCE_ASAN: ${{ vars.CI_FORCE_ASAN }} |
| 168 | + CI_FORCE_PERL_UNICODE: ${{ vars.CI_FORCE_PERL_UNICODE }} |
| 169 | + CI_FORCE_DIST_MODULES: ${{ vars.CI_FORCE_DIST_MODULES }} |
167 | 170 | run: |
|
168 | 171 | echo '::echo::on'
|
169 | 172 | [[ -n "${CI_SKIP_SANITY}" ]] && [[ "${CI_SKIP_SANITY%[!0 ]*}" != "${CI_SKIP_SANITY}" ]] && echo "ci_skip_sanity=true" >> "$GITHUB_OUTPUT"
|
@@ -214,16 +217,16 @@ jobs:
|
214 | 217 | TEST_JOBS=2 ./perl t/harness -nre='^porting/'
|
215 | 218 |
|
216 | 219 | # Set a variable for dependent jobs to signal if full testsuite is enabled
|
217 |
| - - name: "Check if EXTENDED_TESTING is set" |
| 220 | + - name: "Check if DO_EXTENDED_TESTING is set" |
218 | 221 | id: check_extended_testing
|
219 | 222 | env:
|
220 |
| - EXTENDED_TESTING: ${{ secrets.EXTENDED_TESTING }} |
| 223 | + DO_EXTENDED_TESTING: ${{ vars.DO_EXTENDED_TESTING }} |
221 | 224 | CURRENT_REPOSITORY: ${{ github.repository }}
|
222 | 225 | run: |
|
223 | 226 | if [[ "${CURRENT_REPOSITORY}" = 'Perl/perl5' ]]; then
|
224 | 227 | echo "Running all test jobs"
|
225 | 228 | echo "run_all_jobs=true" >> "$GITHUB_OUTPUT"
|
226 |
| - elif [[ -n "${EXTENDED_TESTING}" ]] && [[ "${EXTENDED_TESTING%[!0 ]*}" != "${EXTENDED_TESTING}" ]]; then |
| 229 | + elif [[ -n "${DO_EXTENDED_TESTING}" ]] && [[ "${DO_EXTENDED_TESTING%[!0 ]*}" != "${DO_EXTENDED_TESTING}" ]]; then |
227 | 230 | echo "Running all test jobs"
|
228 | 231 | echo "run_all_jobs=true" >> "$GITHUB_OUTPUT"
|
229 | 232 | else
|
|
0 commit comments