summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/ci.generate.ts16
-rw-r--r--.github/workflows/ci.yml6
2 files changed, 13 insertions, 9 deletions
diff --git a/.github/workflows/ci.generate.ts b/.github/workflows/ci.generate.ts
index 7fd40d839..5f2946e36 100644
--- a/.github/workflows/ci.generate.ts
+++ b/.github/workflows/ci.generate.ts
@@ -150,7 +150,7 @@ function cancelEarlyIfDraftPr(
].join("\n"),
},
...nextSteps.map((step) =>
- skipForCondition(step, "steps.exit_early.outputs.EXIT_EARLY != 'true'")
+ withCondition(step, "steps.exit_early.outputs.EXIT_EARLY != 'true'")
),
];
}
@@ -162,14 +162,14 @@ function skipJobsIfPrAndMarkedSkip(
// so just apply this condition to all the steps.
// https://stackoverflow.com/questions/65384420/how-to-make-a-github-action-matrix-element-conditional
return steps.map((s) =>
- skipForCondition(
+ withCondition(
s,
"!(github.event_name == 'pull_request' && matrix.skip_pr)",
)
);
}
-function skipForCondition(
+function withCondition(
step: Record<string, unknown>,
condition: string,
): Record<string, unknown> {
@@ -327,7 +327,9 @@ const ci = {
if: "matrix.job == 'lint' || matrix.job == 'test'",
...installDenoStep,
},
- ...installPythonSteps,
+ ...installPythonSteps.map((s) =>
+ withCondition(s, "matrix.job != 'lint'")
+ ),
{
// only necessary for benchmarks
if: "matrix.job == 'bench'",
@@ -435,9 +437,11 @@ const ci = {
},
{
name: "Apply and update mtime cache",
- if: "matrix.profile == 'release'",
+ if: "!startsWith(github.ref, 'refs/tags/')",
uses: "./.github/mtime_cache",
- with: { "cache-path": "./target" },
+ with: {
+ "cache-path": "./target",
+ },
},
{
// Shallow the cloning the crates.io index makes CI faster because it
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index ae5224e9f..ca3430234 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -113,9 +113,9 @@ jobs:
uses: actions/setup-python@v4
with:
python-version: 3.8
- if: '!(github.event_name == ''pull_request'' && matrix.skip_pr) && (steps.exit_early.outputs.EXIT_EARLY != ''true'')'
+ if: '!(github.event_name == ''pull_request'' && matrix.skip_pr) && (steps.exit_early.outputs.EXIT_EARLY != ''true'' && (matrix.job != ''lint''))'
- name: Remove unused versions of Python
- if: '!(github.event_name == ''pull_request'' && matrix.skip_pr) && (steps.exit_early.outputs.EXIT_EARLY != ''true'' && (startsWith(matrix.os, ''windows'')))'
+ if: '!(github.event_name == ''pull_request'' && matrix.skip_pr) && (steps.exit_early.outputs.EXIT_EARLY != ''true'' && (matrix.job != ''lint'' && (startsWith(matrix.os, ''windows''))))'
shell: pwsh
run: |-
$env:PATH -split ";" |
@@ -269,7 +269,7 @@ jobs:
key: never_saved
restore-keys: '18-cargo-target-${{ matrix.os }}-${{ matrix.profile }}-'
- name: Apply and update mtime cache
- if: '!(github.event_name == ''pull_request'' && matrix.skip_pr) && (steps.exit_early.outputs.EXIT_EARLY != ''true'' && (matrix.profile == ''release''))'
+ if: '!(github.event_name == ''pull_request'' && matrix.skip_pr) && (steps.exit_early.outputs.EXIT_EARLY != ''true'' && (!startsWith(github.ref, ''refs/tags/'')))'
uses: ./.github/mtime_cache
with:
cache-path: ./target