mirror of
https://github.com/dorny/paths-filter.git
synced 2024-12-20 00:49:04 +00:00
Fixes - making action pass self-test (#3)
* Remove accidental string interpolation from action.yml * Fix test workflow filters * Improve self-test * Add test case for matching any changed file * Fix workflow test - step `name` was used instead of `id` * Extend default pull_request trigger types * Remove `edited` trigger to avoid executing workflow on non-code changes
This commit is contained in:
parent
94603ab6f7
commit
f9b6173f5e
15
.github/workflows/test.yml
vendored
15
.github/workflows/test.yml
vendored
@ -1,6 +1,9 @@
|
||||
name: "build-test"
|
||||
on: # rebuild any PRs and main branch changes
|
||||
pull_request:
|
||||
types:
|
||||
- opened
|
||||
- synchronize
|
||||
branches:
|
||||
- master
|
||||
|
||||
@ -17,10 +20,16 @@ jobs:
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ./
|
||||
id: filter
|
||||
with:
|
||||
githubToken: ${{ secrets.GITHUB_TOKEN }}
|
||||
filter: |
|
||||
githubToken: ${{ github.token }}
|
||||
filters: |
|
||||
src:
|
||||
- src/**/*
|
||||
tests:
|
||||
- __tests__/**/*
|
||||
- __tests__/**/*
|
||||
any:
|
||||
- "**/*"
|
||||
- name: filter-test
|
||||
if: steps.filter.outputs.any != 'true'
|
||||
run: exit 1
|
||||
|
@ -70,4 +70,14 @@ describe('matching tests', () => {
|
||||
const match = filter.match(['test/test.js'])
|
||||
expect(match.src).toBeTruthy()
|
||||
})
|
||||
|
||||
test('matches anything', () => {
|
||||
const yaml = `
|
||||
any:
|
||||
- "**/*"
|
||||
`
|
||||
const filter = new Filter(yaml)
|
||||
const match = filter.match(['test/test.js'])
|
||||
expect(match.any).toBeTruthy()
|
||||
})
|
||||
})
|
||||
|
@ -3,7 +3,7 @@ description: 'Enables conditional execution of workflow job steps considering wh
|
||||
author: 'Michal Dorner <dorner.michal@gmail.com>'
|
||||
inputs:
|
||||
githubToken:
|
||||
description: 'GitHub Access Token - use ${{ github.token }}'
|
||||
description: 'GitHub Access Token'
|
||||
required: true
|
||||
filters:
|
||||
description: 'YAML dictionary where keys specifies rule names and values are lists of (globbing) file path patterns'
|
||||
|
2
dist/index.js
vendored
2
dist/index.js
vendored
@ -4118,7 +4118,7 @@ function run() {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
try {
|
||||
const token = core.getInput('githubToken', { required: true });
|
||||
const filterYaml = core.getInput('filter', { required: true });
|
||||
const filterYaml = core.getInput('filters', { required: true });
|
||||
const client = new github.GitHub(token);
|
||||
if (github.context.eventName !== 'pull_request') {
|
||||
core.setFailed('This action can be triggered only by pull_request event');
|
||||
|
@ -7,7 +7,7 @@ import Filter from './filter'
|
||||
async function run(): Promise<void> {
|
||||
try {
|
||||
const token = core.getInput('githubToken', {required: true})
|
||||
const filterYaml = core.getInput('filter', {required: true})
|
||||
const filterYaml = core.getInput('filters', {required: true})
|
||||
const client = new github.GitHub(token)
|
||||
|
||||
if (github.context.eventName !== 'pull_request') {
|
||||
|
Loading…
Reference in New Issue
Block a user