feat: new flag --list-rule #4750
build.yml
on: pull_request
yamllint
4s
typecheck
15s
eslint
8s
unused-deps
8s
test
3m 54s
CodeQL
1m 12s
Matrix: smoke-test
Annotations
12 errors and 1 warning
|
yamllint
Process completed with exit code 1.
|
|
eslint
Process completed with exit code 1.
|
|
[threads] tests/rules.test.ts > https://github.com/firecow/gitlab-ci-local/issues/609:
tests/rules.test.ts#L299
AssertionError: expected { when: 'manual', …(4) } to deeply equal { when: 'manual', …(2) }
- Expected
+ Received
{
"allowFailure": false,
+ "matchedRule": "$CI_COMMIT_REF_NAME =~ $PROD_REF",
+ "needs": undefined,
"variables": undefined,
"when": "manual",
}
❯ tests/rules.test.ts:299:25
|
|
[threads] tests/rules.test.ts > https://github.com/firecow/gitlab-ci-local/issues/424:
tests/rules.test.ts#L290
AssertionError: expected { when: 'manual', …(4) } to deeply equal { when: 'manual', …(2) }
- Expected
+ Received
{
"allowFailure": false,
+ "matchedRule": "$CI_COMMIT_REF_NAME =~ /^(develop$|release\\/.*|master$)/",
+ "needs": undefined,
"variables": undefined,
"when": "manual",
}
❯ tests/rules.test.ts:290:25
|
|
[threads] tests/rules.test.ts > https://github.com/firecow/gitlab-ci-local/issues/300:
tests/rules.test.ts#L274
AssertionError: expected { when: 'manual', …(4) } to deeply equal { when: 'manual', …(2) }
- Expected
+ Received
{
"allowFailure": false,
+ "matchedRule": "$VAR1 && (($VAR2 =~ /ci-skip-job-/ && $VAR2 =~ $VAR3) || ($VAR2 =~ /ci-skip-stage-/ && $VAR2 =~ $VAR3))",
+ "needs": undefined,
"variables": undefined,
"when": "manual",
}
❯ tests/rules.test.ts:274:25
|
|
[threads] tests/rules.test.ts > https://github.com/firecow/gitlab-ci-local/issues/350:
tests/rules.test.ts#L257
AssertionError: expected { when: 'manual', …(4) } to deeply equal { when: 'manual', …(2) }
- Expected
+ Received
{
"allowFailure": false,
+ "matchedRule": "$CI_COMMIT_BRANCH =~ /master$/",
+ "needs": undefined,
"variables": undefined,
"when": "manual",
}
❯ tests/rules.test.ts:257:25
|
|
[threads] tests/rules.test.ts > Early return:
tests/rules.test.ts#L79
AssertionError: expected { when: 'never', …(4) } to deeply equal { when: 'never', …(2) }
- Expected
+ Received
{
"allowFailure": false,
+ "matchedRule": "$GITLAB_CI",
+ "needs": undefined,
"variables": undefined,
"when": "never",
}
❯ tests/rules.test.ts:79:25
|
|
[threads] tests/rules.test.ts > Undefined when:
tests/rules.test.ts#L69
AssertionError: expected { when: 'on_success', …(4) } to deeply equal { when: 'on_success', …(2) }
- Expected
+ Received
{
"allowFailure": false,
+ "matchedRule": "$GITLAB_CI",
+ "needs": undefined,
"variables": undefined,
"when": "on_success",
}
❯ tests/rules.test.ts:69:25
|
|
[threads] tests/rules.test.ts > Undefined if:
tests/rules.test.ts#L60
AssertionError: expected { when: 'on_success', …(4) } to deeply equal { when: 'on_success', …(2) }
- Expected
+ Received
{
"allowFailure": false,
+ "matchedRule": "",
+ "needs": undefined,
"variables": undefined,
"when": "on_success",
}
❯ tests/rules.test.ts:60:25
|
|
[threads] tests/rules.test.ts > GITLAB_CI fail and fallback:
tests/rules.test.ts#L51
AssertionError: expected { when: 'manual', …(4) } to deeply equal { when: 'manual', …(2) }
- Expected
+ Received
{
"allowFailure": false,
+ "matchedRule": "",
+ "needs": undefined,
"variables": undefined,
"when": "manual",
}
❯ tests/rules.test.ts:51:25
|
|
[threads] tests/rules.test.ts > Negated regex on undef var:
tests/rules.test.ts#L41
AssertionError: expected { when: 'on_success', …(4) } to deeply equal { when: 'on_success', …(2) }
- Expected
+ Received
{
"allowFailure": false,
+ "matchedRule": "$CI_COMMIT_TAG !~ /^v\\d+.\\d+.\\d+/",
+ "needs": undefined,
"variables": undefined,
"when": "on_success",
}
❯ tests/rules.test.ts:41:25
|
|
[threads] tests/rules.test.ts > GITLAB_CI on_success:
tests/rules.test.ts#L23
AssertionError: expected { when: 'on_success', …(4) } to deeply equal { when: 'on_success', …(2) }
- Expected
+ Received
{
"allowFailure": false,
+ "matchedRule": "$GITLAB_CI == 'false'",
+ "needs": undefined,
"variables": undefined,
"when": "on_success",
}
❯ tests/rules.test.ts:23:25
|
|
CodeQL
Starting April 2026, the CodeQL Action will skip computing file coverage information on pull requests to improve analysis performance. File coverage information will still be computed on non-PR analyses.
To opt out of this change, set the `CODEQL_ACTION_FILE_COVERAGE_ON_PRS` environment variable to `true`.
|