Compare commits
45 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8de562e931 | ||
|
|
291d397b90 | ||
|
|
1ced186070 | ||
|
|
dd9210256d | ||
|
|
846166ffa0 | ||
|
|
4e8b0a81f6 | ||
|
|
be3cb7b5aa | ||
|
|
81520789a6 | ||
|
|
bea18ddafc | ||
|
|
b14b0a186c | ||
|
|
8c6e3fef17 | ||
|
|
62690928c6 | ||
|
|
ec96351509 | ||
|
|
5c8fbbaf20 | ||
|
|
bc00134c62 | ||
|
|
7ed7f59ca2 | ||
|
|
5cd49f8c2d | ||
|
|
2740f4ff1f | ||
|
|
5b1a2fe1bf | ||
|
|
a0f6ff42fa | ||
|
|
316681cafb | ||
|
|
6d2a5c29e8 | ||
|
|
3750c5302c | ||
|
|
a299058164 | ||
|
|
235f02844b | ||
|
|
a866c7c45e | ||
|
|
c8b8b3cadf | ||
|
|
2610be7bb8 | ||
|
|
7c640bd299 | ||
|
|
0604c7fd87 | ||
|
|
e4574f5e38 | ||
|
|
2e272d0ec7 | ||
|
|
270645280a | ||
|
|
a8b258a5a2 | ||
|
|
d3148ec5e5 | ||
|
|
0190fb3dbc | ||
|
|
f0f52523e7 | ||
|
|
9461844917 | ||
|
|
03730a35b9 | ||
|
|
bfda1ec9d1 | ||
|
|
17ab284b9d | ||
|
|
f51c3c4c5f | ||
|
|
c742851bbf | ||
|
|
9f56ba29e4 | ||
|
|
10a315a997 |
@@ -132,6 +132,24 @@
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "kostiantyn-korniienko-aurea",
|
||||
"name": "Kostiantyn Korniienko",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/37180625?v=4",
|
||||
"profile": "https://github.com/kostiantyn-korniienko-aurea",
|
||||
"contributions": [
|
||||
"doc"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "lpulley",
|
||||
"name": "Logan Pulley",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/7193187?v=4",
|
||||
"profile": "https://github.com/lpulley",
|
||||
"contributions": [
|
||||
"code"
|
||||
]
|
||||
}
|
||||
],
|
||||
"contributorsPerLine": 7,
|
||||
@@ -139,5 +157,6 @@
|
||||
"projectOwner": "tj-actions",
|
||||
"repoType": "github",
|
||||
"repoHost": "https://github.com",
|
||||
"skipCi": true
|
||||
"skipCi": true,
|
||||
"commitConvention": "angular"
|
||||
}
|
||||
|
||||
10
.github/workflows/greetings.yml
vendored
10
.github/workflows/greetings.yml
vendored
@@ -6,8 +6,8 @@ jobs:
|
||||
greeting:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/first-interaction@v1.1.0
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
issue-message: "Thanks for reporting this issue, don't forget to star this project if you haven't already to help us reach a wider audience."
|
||||
pr-message: "Thanks for implementing a fix, could you ensure that the test covers your changes if applicable."
|
||||
- uses: actions/first-interaction@v1
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
issue-message: "Thanks for reporting this issue, don't forget to star this project if you haven't already to help us reach a wider audience."
|
||||
pr-message: "Thanks for implementing a fix, could you ensure that the test covers your changes if applicable."
|
||||
|
||||
2
.github/workflows/manual-matrix-test.yml
vendored
2
.github/workflows/manual-matrix-test.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
||||
echo '${{ steps.changed-files.outputs.all_changed_files }}'
|
||||
|
||||
- id: set-matrix
|
||||
run: echo "::set-output name=matrix::{\"container\":${{ steps.changed-files.outputs.all_changed_files }}}"
|
||||
run: echo "matrix={\"container\":${{ steps.changed-files.outputs.all_changed_files }}}" >> "$GITHUB_OUTPUT"
|
||||
|
||||
matrix-job:
|
||||
name: Run Matrix Job
|
||||
|
||||
6
.github/workflows/test.yml
vendored
6
.github/workflows/test.yml
vendored
@@ -138,12 +138,6 @@ jobs:
|
||||
id: changed-files
|
||||
continue-on-error: true
|
||||
uses: ./
|
||||
|
||||
- name: Exit with 1 if no error is raised
|
||||
if: steps.changed-files.outcome != 'failure' && github.event.action == 'closed'
|
||||
run: |
|
||||
echo "Expected: (failure) got ${{ steps.changed-files.outcome }}"
|
||||
exit 1
|
||||
|
||||
- name: Show output
|
||||
run: |
|
||||
|
||||
2
.github/workflows/update-readme.yml
vendored
2
.github/workflows/update-readme.yml
vendored
@@ -9,7 +9,7 @@ jobs:
|
||||
sync-assets:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3.0.2
|
||||
- uses: actions/checkout@v3.1.0
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
|
||||
92
HISTORY.md
92
HISTORY.md
@@ -1,17 +1,72 @@
|
||||
# Changelog
|
||||
|
||||
## [v31.0.2](https://github.com/tj-actions/changed-files/tree/v31.0.2) (2022-09-29)
|
||||
## [Unreleased](https://github.com/tj-actions/changed-files/tree/HEAD)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v31...v31.0.2)
|
||||
|
||||
## [v31](https://github.com/tj-actions/changed-files/tree/v31) (2022-09-29)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v31.0.1...v31)
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v32.0.1...HEAD)
|
||||
|
||||
**Closed issues:**
|
||||
|
||||
- Dependency Dashboard [\#27](https://github.com/tj-actions/changed-files/issues/27)
|
||||
|
||||
## [v32.0.1](https://github.com/tj-actions/changed-files/tree/v32.0.1) (2022-10-11)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v32...v32.0.1)
|
||||
|
||||
## [v32](https://github.com/tj-actions/changed-files/tree/v32) (2022-10-11)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v32.0.0...v32)
|
||||
|
||||
**Fixed bugs:**
|
||||
|
||||
- \[BUG\] file not ignored with files\_ignore option [\#675](https://github.com/tj-actions/changed-files/issues/675)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- chore\(deps\): update tj-actions/glob action to v15 [\#677](https://github.com/tj-actions/changed-files/pull/677) ([renovate[bot]](https://github.com/apps/renovate))
|
||||
- Upgraded to v32.0.0 [\#676](https://github.com/tj-actions/changed-files/pull/676) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v32.0.0](https://github.com/tj-actions/changed-files/tree/v32.0.0) (2022-10-06)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v31...v32.0.0)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Updated README.md [\#674](https://github.com/tj-actions/changed-files/pull/674) ([jackton1](https://github.com/jackton1))
|
||||
- add kostiantyn-korniienko-aurea as a contributor for doc [\#673](https://github.com/tj-actions/changed-files/pull/673) ([allcontributors[bot]](https://github.com/apps/allcontributors))
|
||||
- TYPO fix [\#671](https://github.com/tj-actions/changed-files/pull/671) ([kostiantyn-korniienko-aurea](https://github.com/kostiantyn-korniienko-aurea))
|
||||
- chore\(deps\): update tj-actions/glob action to v14 [\#670](https://github.com/tj-actions/changed-files/pull/670) ([renovate[bot]](https://github.com/apps/renovate))
|
||||
- chore\(deps\): update actions/checkout action to v3.1.0 [\#669](https://github.com/tj-actions/changed-files/pull/669) ([renovate[bot]](https://github.com/apps/renovate))
|
||||
- Upgraded to v31.0.3 [\#667](https://github.com/tj-actions/changed-files/pull/667) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v31](https://github.com/tj-actions/changed-files/tree/v31) (2022-10-02)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v31.0.3...v31)
|
||||
|
||||
## [v31.0.3](https://github.com/tj-actions/changed-files/tree/v31.0.3) (2022-10-02)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v31.0.2...v31.0.3)
|
||||
|
||||
**Fixed bugs:**
|
||||
|
||||
- \[BUG\] I'd like to use file name consisting of Korean, not English [\#658](https://github.com/tj-actions/changed-files/issues/658)
|
||||
- Relative path from a working directory [\#657](https://github.com/tj-actions/changed-files/issues/657)
|
||||
- Similar commit hash detected. You seem to be missing fetch-depth:0 [\#656](https://github.com/tj-actions/changed-files/issues/656)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- chore: remove redundant since last remote commit input [\#666](https://github.com/tj-actions/changed-files/pull/666) ([jackton1](https://github.com/jackton1))
|
||||
- chore: fixed test [\#665](https://github.com/tj-actions/changed-files/pull/665) ([jackton1](https://github.com/jackton1))
|
||||
- chore: update docs [\#664](https://github.com/tj-actions/changed-files/pull/664) ([jackton1](https://github.com/jackton1))
|
||||
- chore: fix bug with base sha [\#663](https://github.com/tj-actions/changed-files/pull/663) ([jackton1](https://github.com/jackton1))
|
||||
- chore: dump github context [\#662](https://github.com/tj-actions/changed-files/pull/662) ([jackton1](https://github.com/jackton1))
|
||||
- fix: error retrieving the base sha [\#661](https://github.com/tj-actions/changed-files/pull/661) ([jackton1](https://github.com/jackton1))
|
||||
- chore: test using non ascii characters in files input [\#659](https://github.com/tj-actions/changed-files/pull/659) ([jackton1](https://github.com/jackton1))
|
||||
- Upgraded to v31.0.2 [\#655](https://github.com/tj-actions/changed-files/pull/655) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v31.0.2](https://github.com/tj-actions/changed-files/tree/v31.0.2) (2022-09-29)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v31.0.1...v31.0.2)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- chore: add back ability to fetch target branch history [\#654](https://github.com/tj-actions/changed-files/pull/654) ([jackton1](https://github.com/jackton1))
|
||||
@@ -1015,7 +1070,11 @@
|
||||
|
||||
## [v11.9](https://github.com/tj-actions/changed-files/tree/v11.9) (2021-12-04)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v1.3.1...v11.9)
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v11...v11.9)
|
||||
|
||||
## [v11](https://github.com/tj-actions/changed-files/tree/v11) (2021-12-04)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v1.3.1...v11)
|
||||
|
||||
**Implemented enhancements:**
|
||||
|
||||
@@ -1176,7 +1235,12 @@
|
||||
|
||||
## [v11.1](https://github.com/tj-actions/changed-files/tree/v11.1) (2021-10-25)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v11...v11.1)
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v10.1...v11.1)
|
||||
|
||||
**Fixed bugs:**
|
||||
|
||||
- \[BUG\] Spaces in file names are not handled correctly [\#216](https://github.com/tj-actions/changed-files/issues/216)
|
||||
- \[BUG\] Usage of quotes around array items [\#208](https://github.com/tj-actions/changed-files/issues/208)
|
||||
|
||||
**Closed issues:**
|
||||
|
||||
@@ -1187,18 +1251,6 @@
|
||||
- Disable automatic tag following [\#225](https://github.com/tj-actions/changed-files/pull/225) ([jackton1](https://github.com/jackton1))
|
||||
- Updated README.md [\#223](https://github.com/tj-actions/changed-files/pull/223) ([jackton1](https://github.com/jackton1))
|
||||
- Upgraded to v11 [\#222](https://github.com/tj-actions/changed-files/pull/222) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v11](https://github.com/tj-actions/changed-files/tree/v11) (2021-10-23)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v10.1...v11)
|
||||
|
||||
**Fixed bugs:**
|
||||
|
||||
- \[BUG\] Spaces in file names are not handled correctly [\#216](https://github.com/tj-actions/changed-files/issues/216)
|
||||
- \[BUG\] Usage of quotes around array items [\#208](https://github.com/tj-actions/changed-files/issues/208)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Updated README.md [\#221](https://github.com/tj-actions/changed-files/pull/221) ([jackton1](https://github.com/jackton1))
|
||||
- Miscellaneous code cleanup [\#219](https://github.com/tj-actions/changed-files/pull/219) ([jackton1](https://github.com/jackton1))
|
||||
- Fixed bug with separator for filenames that contain spaces [\#218](https://github.com/tj-actions/changed-files/pull/218) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
171
README.md
171
README.md
@@ -6,9 +6,7 @@
|
||||
[](https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on)
|
||||
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
||||
|
||||
[](#contributors-)
|
||||
|
||||
[](#contributors-)
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
||||
|
||||
## changed-files
|
||||
@@ -69,7 +67,7 @@ jobs:
|
||||
# Example 1
|
||||
- name: Get changed files
|
||||
id: changed-files
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
|
||||
- name: List all changed files
|
||||
run: |
|
||||
@@ -80,7 +78,7 @@ jobs:
|
||||
# Example 2
|
||||
- name: Get changed files in the docs folder
|
||||
id: changed-files-specific
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
files: |
|
||||
docs/**
|
||||
@@ -115,53 +113,54 @@ Support this project with a :star:
|
||||
| U | Unmerged |
|
||||
| X | Unknown |
|
||||
|
||||
| Output | type | example | description |
|
||||
|:----------------------------------:|:--------:|:--------------------------------------------------------------:|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|
|
||||
| Output | type | example | description |
|
||||
|:----------------------------------:|:--------:|:--------------------------------------------------------------:|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|
|
||||
| any\_changed | `string` | `true` OR `false` | Returns `true` when any <br /> of the filenames provided using <br /> the `files` input has changed. If no `files` have been specified,<br> an empty string `''` is returned. <br /> i.e. *using a combination of all added, <br />copied, modified and renamed files (ACMR)* |
|
||||
| only\_changed | `string` | `true` OR `false` | Returns `true` when only <br /> files provided using <br /> the `files` input has changed. If no `files` have been specified,<br> an empty string `''` is returned. <br /> i.e. *using a combination of all added, <br />copied, modified and renamed files (ACMR)* |
|
||||
| other\_changed\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all other changed files <br/> not listed in the files input <br /> i.e. *using a combination of all added, <br />copied, modified and renamed files (ACMR)* |
|
||||
| only\_changed | `string` | `true` OR `false` | Returns `true` when only <br /> files provided using <br /> the `files` input has changed. If no `files` have been specified,<br> an empty string `''` is returned. <br /> i.e. *using a combination of all added, <br />copied, modified and renamed files (ACMR)* |
|
||||
| other\_changed\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all other changed files <br/> not listed in the files input <br /> i.e. *using a combination of all added, <br />copied, modified and renamed files (ACMR)* |
|
||||
| any\_modified | `string` | `true` OR `false` | Returns `true` when any <br /> of the filenames provided using <br /> the `files` input has been modified. If no `files` have been specified,<br> an empty string `''` is returned. <br /> i.e. *using a combination of all added, <br />copied, modified, renamed, and deleted files (ACMRD)* |
|
||||
| only\_modified | `string` | `true` OR `false` | Returns `true` when only <br /> files provided using <br /> the `files` input has been modified. If no `files` have been specified,<br> an empty string `''` is returned.(ACMRD) |
|
||||
| other\_modified\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all other modified files <br/> not listed in the files input <br /> i.e. *a combination of all added, <br /> copied, modified, and deleted files (ACMRD)* |
|
||||
| only\_modified | `string` | `true` OR `false` | Returns `true` when only <br /> files provided using <br /> the `files` input has been modified. If no `files` have been specified,<br> an empty string `''` is returned.(ACMRD) |
|
||||
| other\_modified\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all other modified files <br/> not listed in the files input <br /> i.e. *a combination of all added, <br /> copied, modified, and deleted files (ACMRD)* |
|
||||
| any\_deleted | `string` | `true` OR `false` | Returns `true` when any <br /> of the filenames provided using <br /> the `files` input has been deleted. If no `files` have been specified,<br> an empty string `''` is returned. (D) |
|
||||
| only\_deleted | `string` | `true` OR `false` | Returns `true` when only <br /> files provided using <br /> the `files` input has been deleted. If no `files` have been specified,<br> an empty string `''` is returned. (D) |
|
||||
| other\_deleted\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all other deleted files <br/> not listed in the files input <br /> i.e. *a combination of all deleted files (D)* |
|
||||
| all\_changed\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all changed files <br /> i.e. *a combination of all added, <br />copied, modified and renamed files (ACMR)* |
|
||||
| all\_modified\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all changed files <br /> i.e. *a combination of all added, <br />copied, modified, renamed and deleted files (ACMRD)* |
|
||||
| all\_changed\_and\_modified\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all changed <br /> and modified files <br /> i.e. *a combination of (ACMRDTUX)* |
|
||||
| all\_old\_new\_renamed\_files | `string` | `'old name.txt,new name.txt old name 2.txt,new name 2.txt...'` | Returns only files that are Renamed and list their old and new names. <br> NOTE: This requires setting `include_all_old_new_renamed_files` to `true` (R) |
|
||||
| added\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Added (A) |
|
||||
| copied\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Copied (C) |
|
||||
| deleted\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Deleted (D) |
|
||||
| modified\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Modified (M) |
|
||||
| renamed\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Renamed (R) |
|
||||
| type\_changed\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that have their file type changed (T) |
|
||||
| unmerged\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Unmerged (U) |
|
||||
| unknown\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Unknown (X) |
|
||||
| other\_deleted\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all other deleted files <br/> not listed in the files input <br /> i.e. *a combination of all deleted files (D)* |
|
||||
| all\_changed\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all changed files <br /> i.e. *a combination of all added, <br />copied, modified and renamed files (ACMR)* |
|
||||
| all\_modified\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all changed files <br /> i.e. *a combination of all added, <br />copied, modified, renamed and deleted files (ACMRD)* |
|
||||
| all\_changed\_and\_modified\_files | `string` | `'new.txt path/to/file.png ...'` | Returns all changed <br /> and modified files <br /> i.e. *a combination of (ACMRDTUX)* |
|
||||
| all\_old\_new\_renamed\_files | `string` | `'old name.txt,new name.txt old name 2.txt,new name 2.txt...'` | Returns only files that are Renamed and list their old and new names. <br> NOTE: This requires setting `include_all_old_new_renamed_files` to `true` (R) |
|
||||
| added\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Added (A) |
|
||||
| copied\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Copied (C) |
|
||||
| deleted\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Deleted (D) |
|
||||
| modified\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Modified (M) |
|
||||
| renamed\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Renamed (R) |
|
||||
| type\_changed\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that have their file type changed (T) |
|
||||
| unmerged\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Unmerged (U) |
|
||||
| unknown\_files | `string` | `'new.txt path/to/file.png ...'` | Returns only files that are Unknown (X) |
|
||||
|
||||
## Inputs
|
||||
|
||||
| Input | type | required | default | description |
|
||||
|:--------------------------------------:|:----------------------:|:--------:|:---------------------:|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|
|
||||
| separator | `string` | `false` | `' '` | Split character for output strings |
|
||||
| include\_all\_old\_new\_renamed\_files | `boolean` | `false` | `false` | Include `all_old_new_renamed_files` output. Note this can generate a large output See: [#501](https://github.com/tj-actions/changed-files/issues/501). |
|
||||
| old\_new\_separator | `string` | `false` | `','` | Split character for old and new filename pairs |
|
||||
| old\_new\_files\_separator | `string` | `false` | `' '` | Split character for multiple old and new filename pairs |
|
||||
| files | `string` OR `string[]` | `false` | | Check for changes <br> using only these <br> list of file(s) <br> (Defaults to the <br> entire repo) <br /> **NOTE:** Multiline file/directory patterns <br /> should not include qoutes. <br /> |
|
||||
| files\_separator | `string` | `false` | `'\n'` | Separator used to split the<br>`files` input |
|
||||
| files\_from\_source\_file | `string` | `false` | | Source file(s) <br> used to populate <br> the `files` input |
|
||||
| files\_ignore | `string` | `false` | | Ignore changes to these file(s) <br /> **NOTE:** Multiline file/directory patterns <br /> should not include qoutes. <br /> |
|
||||
| files\_ignore\_separator | `string` | `false` | `'\n'` | Separator used to split the <br>`files-ignore` input |
|
||||
| files\_ignore\_from\_source\_file | `string` | `false` | | Source file(s) <br> used to populate <br> the `files_ignore` input |
|
||||
| sha | `string` | `true` | `${{ github.sha }}` | Specify a different <br> commit SHA <br> used for <br> comparing changes |
|
||||
| base\_sha | `string` | `false` | | Specify a different <br> base commit SHA <br> used for <br> comparing changes |
|
||||
| path | `string` | `false` | `'.'` | Relative path under <br> `GITHUB_WORKSPACE` <br> to the repository |
|
||||
| quotepath | `boolean` | `false` | `true` | Output filenames completely verbatim by setting this to `false` |
|
||||
| diff\_relative | `boolean` | `false` | | Exclude changes outside the current directory and show pathnames relative to it. **NOTE:** This requires you to specify the top level directory via the `path` input. |
|
||||
| dir\_names | `boolean` | `false` | `false` | Output unique changed directories instead of filenames. <br> **NOTE:** This returns `.` for <br> changed files located in the root of the project. |
|
||||
| json | `boolean` | `false` | `false` | Output changed files in JSON format which can be used for [matrix jobs](https://github.com/tj-actions/changed-files/blob/main/.github/workflows/manual-matrix-test.yml). |
|
||||
| since | `string` | `false` | | Get changed files for commits whose timestamp is older than the given time. |
|
||||
| until | `string` | `false` | | Get changed files for commits whose timestamp is earlier than the given time. |
|
||||
| Input | type | required | default | description |
|
||||
|:--------------------------------------:|:----------------------:|:--------:|:-------------------:|:-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|
|
||||
| separator | `string` | `false` | `' '` | Split character for output strings |
|
||||
| include\_all\_old\_new\_renamed\_files | `boolean` | `false` | `false` | Include `all_old_new_renamed_files` output. Note this can generate a large output See: [#501](https://github.com/tj-actions/changed-files/issues/501). |
|
||||
| old\_new\_separator | `string` | `false` | `','` | Split character for old and new filename pairs |
|
||||
| old\_new\_files\_separator | `string` | `false` | `' '` | Split character for multiple old and new filename pairs |
|
||||
| files | `string` OR `string[]` | `false` | | Check for changes <br> using only these <br> list of file(s) <br> (Defaults to the <br> entire repo) <br /> **NOTE:** Multiline file/directory patterns <br /> should not include qoutes. <br /> |
|
||||
| files\_separator | `string` | `false` | `'\n'` | Separator used to split the<br>`files` input |
|
||||
| files\_from\_source\_file | `string` | `false` | | Source file(s) <br> used to populate <br> the `files` input |
|
||||
| files\_ignore | `string` | `false` | | Ignore changes to these file(s) <br /> **NOTE:** Multiline file/directory patterns <br /> should not include qoutes. <br /> |
|
||||
| files\_ignore\_separator | `string` | `false` | `'\n'` | Separator used to split the <br>`files-ignore` input |
|
||||
| files\_ignore\_from\_source\_file | `string` | `false` | | Source file(s) <br> used to populate <br> the `files_ignore` input |
|
||||
| sha | `string` | `true` | `${{ github.sha }}` | Specify a different <br> commit SHA <br> used for <br> comparing changes |
|
||||
| base\_sha | `string` | `false` | | Specify a different <br> base commit SHA <br> used for <br> comparing changes |
|
||||
| path | `string` | `false` | `'.'` | Relative path under <br> `GITHUB_WORKSPACE` <br> to the repository |
|
||||
| quotepath | `boolean` | `false` | `true` | Output filenames completely verbatim by setting this to `false` |
|
||||
| diff\_relative | `boolean` | `false` | | Exclude changes outside the current directory and show pathnames relative to it. **NOTE:** This requires you to specify the top level directory via the `path` input. |
|
||||
| dir\_names | `boolean` | `false` | `false` | Output unique changed directories instead of filenames. <br> **NOTE:** This returns `.` for <br> changed files located in the root of the project. |
|
||||
| json | `boolean` | `false` | `false` | Output changed files in JSON format which can be used for [matrix jobs](https://github.com/tj-actions/changed-files/blob/main/.github/workflows/manual-matrix-test.yml). |
|
||||
| since | `string` | `false` | | Get changed files for commits whose timestamp is older than the given time. |
|
||||
| until | `string` | `false` | | Get changed files for commits whose timestamp is earlier than the given time. |
|
||||
| target\_branch\_fetch\_depth | `string` | `false` | `20` | Limit fetching commits from the target branch to a specified number. **NOTE**: This can be adjusted to resolve errors with insufficient history. See: [#668](https://github.com/tj-actions/changed-files/issues/668). |
|
||||
|
||||
## Examples
|
||||
|
||||
@@ -175,11 +174,11 @@ Support this project with a :star:
|
||||
|
||||
- name: Get changed files using defaults
|
||||
id: changed-files
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
|
||||
- name: Get changed files using a comma separator
|
||||
id: changed-files-comma
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
separator: ","
|
||||
|
||||
@@ -201,7 +200,7 @@ Support this project with a :star:
|
||||
|
||||
- name: Get specific changed files
|
||||
id: changed-files-specific
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
files: |
|
||||
my-file.txt
|
||||
@@ -242,14 +241,14 @@ Support this project with a :star:
|
||||
|
||||
- name: Use a source file or list of file(s) to populate to files input.
|
||||
id: changed-files-specific-source-file
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
files_from_source_file: |
|
||||
test/changed-files-list.txt
|
||||
|
||||
- name: Use a source file or list of file(s) to populate to files input and optionally specify more files.
|
||||
id: changed-files-specific-source-file-and-specify-files
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
files_from_source_file: |
|
||||
test/changed-files-list.txt
|
||||
@@ -258,13 +257,13 @@ Support this project with a :star:
|
||||
|
||||
- name: Use a different commit SHA
|
||||
id: changed-files-custom-sha
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
sha: ${{ github.event.pull_request.head.sha }}
|
||||
|
||||
- name: Use a different base SHA
|
||||
id: changed-files-custom-base-sha
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
base_sha: ${{ github.event.pull_request.base.sha }}
|
||||
|
||||
@@ -276,7 +275,7 @@ Support this project with a :star:
|
||||
|
||||
- name: Run changed-files with defaults on the dir1
|
||||
id: changed-files-for-dir1
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
path: dir1
|
||||
|
||||
@@ -288,14 +287,14 @@ Support this project with a :star:
|
||||
|
||||
- name: Run changed-files with quotepath disabled
|
||||
id: changed-files-quotepath
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
quotepath: "false"
|
||||
|
||||
|
||||
# Run changed-files action using the last successful commit as the base_sha
|
||||
# NOTE: This setting overrides the commit sha used by setting since_last_remote_commit to true.
|
||||
# It is recommended to use either solution that works for your use case.
|
||||
|
||||
|
||||
# Push event based workflows
|
||||
- name: Get branch name
|
||||
id: branch-name
|
||||
@@ -310,7 +309,7 @@ Support this project with a :star:
|
||||
|
||||
- name: Run changed-files with the commit of the last successful test workflow run
|
||||
id: changed-files-base-sha-push
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
base_sha: ${{ steps.last_successful_commit_push.outputs.commit_hash }}
|
||||
|
||||
@@ -331,32 +330,32 @@ Support this project with a :star:
|
||||
- name: Run changed-files with the commit of the last successful test workflow run on main
|
||||
if: github.event_name == 'pull_request'
|
||||
id: changed-files-base-sha-pull-request
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
base_sha: ${{ steps.last_successful_commit_pull_request.outputs.commit_hash }}
|
||||
|
||||
- name: Run changed-files with dir_names
|
||||
id: changed-files-dir-names
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
dir_names: "true"
|
||||
|
||||
# All outputs are JSON formatted arrays and can be used in other actions and matrix compatible jobs.
|
||||
- name: Run changed-files with json output
|
||||
id: changed-files-json
|
||||
uses: tj-actions/changed-files@v31
|
||||
wi
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
json: "true"
|
||||
|
||||
- name: Run changed-files since 2022-08-19
|
||||
id: changed-files-since
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
since: "2022-08-19"
|
||||
|
||||
- name: Run changed-files until 2022-08-20
|
||||
id: changed-files-until
|
||||
uses: tj-actions/changed-files@v31
|
||||
uses: tj-actions/changed-files@v32
|
||||
with:
|
||||
until: "2022-08-20"
|
||||
```
|
||||
@@ -397,34 +396,36 @@ If you are reporting a bug, please include:
|
||||
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
|
||||
|
||||
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
|
||||
|
||||
<!-- prettier-ignore-start -->
|
||||
|
||||
<!-- markdownlint-disable -->
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/jsoref"><img src="https://avatars.githubusercontent.com/u/2119212?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Josh Soref</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=jsoref" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/monoxgas"><img src="https://avatars.githubusercontent.com/u/1223016?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Nick Landers</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=monoxgas" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/Kras4ooo"><img src="https://avatars.githubusercontent.com/u/1948054?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Krasimir Nikolov</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=Kras4ooo" title="Code">💻</a> <a href="https://github.com/tj-actions/changed-files/commits?author=Kras4ooo" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/IvanPizhenko"><img src="https://avatars.githubusercontent.com/u/11859904?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ivan Pizhenko</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=IvanPizhenko" title="Code">💻</a> <a href="https://github.com/tj-actions/changed-files/commits?author=IvanPizhenko" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/talva-tr"><img src="https://avatars.githubusercontent.com/u/82046981?v=4?s=100" width="100px;" alt=""/><br /><sub><b>talva-tr</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=talva-tr" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://bandism.net/"><img src="https://avatars.githubusercontent.com/u/22633385?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ikko Ashimine</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=eltociear" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/Zamiell"><img src="https://avatars.githubusercontent.com/u/5511220?v=4?s=100" width="100px;" alt=""/><br /><sub><b>James</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=Zamiell" title="Documentation">📖</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/wushujames"><img src="https://avatars.githubusercontent.com/u/677529?v=4?s=100" width="100px;" alt=""/><br /><sub><b>James Cheng</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=wushujames" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://qiita.com/SUZUKI_Masaya"><img src="https://avatars.githubusercontent.com/u/15100604?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Masaya Suzuki</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=massongit" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://fagai.net"><img src="https://avatars.githubusercontent.com/u/1772112?v=4?s=100" width="100px;" alt=""/><br /><sub><b>fagai</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=fagai" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/pkit"><img src="https://avatars.githubusercontent.com/u/805654?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Constantine Peresypkin</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=pkit" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/deronnax"><img src="https://avatars.githubusercontent.com/u/439279?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Mathieu Dupuy</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=deronnax" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/JoeOvo"><img src="https://avatars.githubusercontent.com/u/100686542?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Joe Moggridge</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=JoeOvo" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://www.credly.com/users/thyarles/badges"><img src="https://avatars.githubusercontent.com/u/1340046?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Charles Santos</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=thyarles" title="Code">💻</a></td>
|
||||
</tr>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/jsoref"><img src="https://avatars.githubusercontent.com/u/2119212?v=4?s=100" width="100px;" alt="Josh Soref"/><br /><sub><b>Josh Soref</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=jsoref" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/monoxgas"><img src="https://avatars.githubusercontent.com/u/1223016?v=4?s=100" width="100px;" alt="Nick Landers"/><br /><sub><b>Nick Landers</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=monoxgas" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/Kras4ooo"><img src="https://avatars.githubusercontent.com/u/1948054?v=4?s=100" width="100px;" alt="Krasimir Nikolov"/><br /><sub><b>Krasimir Nikolov</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=Kras4ooo" title="Code">💻</a> <a href="https://github.com/tj-actions/changed-files/commits?author=Kras4ooo" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/IvanPizhenko"><img src="https://avatars.githubusercontent.com/u/11859904?v=4?s=100" width="100px;" alt="Ivan Pizhenko"/><br /><sub><b>Ivan Pizhenko</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=IvanPizhenko" title="Code">💻</a> <a href="https://github.com/tj-actions/changed-files/commits?author=IvanPizhenko" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/talva-tr"><img src="https://avatars.githubusercontent.com/u/82046981?v=4?s=100" width="100px;" alt="talva-tr"/><br /><sub><b>talva-tr</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=talva-tr" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://bandism.net/"><img src="https://avatars.githubusercontent.com/u/22633385?v=4?s=100" width="100px;" alt="Ikko Ashimine"/><br /><sub><b>Ikko Ashimine</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=eltociear" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/Zamiell"><img src="https://avatars.githubusercontent.com/u/5511220?v=4?s=100" width="100px;" alt="James"/><br /><sub><b>James</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=Zamiell" title="Documentation">📖</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/wushujames"><img src="https://avatars.githubusercontent.com/u/677529?v=4?s=100" width="100px;" alt="James Cheng"/><br /><sub><b>James Cheng</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=wushujames" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://qiita.com/SUZUKI_Masaya"><img src="https://avatars.githubusercontent.com/u/15100604?v=4?s=100" width="100px;" alt="Masaya Suzuki"/><br /><sub><b>Masaya Suzuki</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=massongit" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://fagai.net"><img src="https://avatars.githubusercontent.com/u/1772112?v=4?s=100" width="100px;" alt="fagai"/><br /><sub><b>fagai</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=fagai" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/pkit"><img src="https://avatars.githubusercontent.com/u/805654?v=4?s=100" width="100px;" alt="Constantine Peresypkin"/><br /><sub><b>Constantine Peresypkin</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=pkit" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/deronnax"><img src="https://avatars.githubusercontent.com/u/439279?v=4?s=100" width="100px;" alt="Mathieu Dupuy"/><br /><sub><b>Mathieu Dupuy</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=deronnax" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/JoeOvo"><img src="https://avatars.githubusercontent.com/u/100686542?v=4?s=100" width="100px;" alt="Joe Moggridge"/><br /><sub><b>Joe Moggridge</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=JoeOvo" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://www.credly.com/users/thyarles/badges"><img src="https://avatars.githubusercontent.com/u/1340046?v=4?s=100" width="100px;" alt="Charles Santos"/><br /><sub><b>Charles Santos</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=thyarles" title="Code">💻</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="center"><a href="https://github.com/kostiantyn-korniienko-aurea"><img src="https://avatars.githubusercontent.com/u/37180625?v=4?s=100" width="100px;" alt="Kostiantyn Korniienko"/><br /><sub><b>Kostiantyn Korniienko</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=kostiantyn-korniienko-aurea" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/lpulley"><img src="https://avatars.githubusercontent.com/u/7193187?v=4?s=100" width="100px;" alt="Logan Pulley"/><br /><sub><b>Logan Pulley</b></sub></a><br /><a href="https://github.com/tj-actions/changed-files/commits?author=lpulley" title="Code">💻</a></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<!-- markdownlint-restore -->
|
||||
|
||||
<!-- prettier-ignore-end -->
|
||||
|
||||
<!-- ALL-CONTRIBUTORS-LIST:END -->
|
||||
|
||||
11
action.yml
11
action.yml
@@ -77,6 +77,10 @@ inputs:
|
||||
description: "Output changed files in JSON format which can be used for matrix jobs"
|
||||
required: false
|
||||
default: "false"
|
||||
target_branch_fetch_depth:
|
||||
description: "Limit fetching commits from the target branch to a specified number. **NOTE**: This can be adjusted to resolve errors with insufficient history. See: [#668](https://github.com/tj-actions/changed-files/issues/668)."
|
||||
required: false
|
||||
default: "20"
|
||||
|
||||
outputs:
|
||||
added_files:
|
||||
@@ -184,16 +188,17 @@ runs:
|
||||
GITHUB_BASE_REF: ${{ github.base_ref }}
|
||||
GITHUB_HEAD_REF: ${{ github.head_ref }}
|
||||
GITHUB_WORKSPACE: ${{ github.workspace }}
|
||||
GITHUB_PULL_REQUEST_BASE_SHA: ${{ github.event.pull_request.base.sha }}
|
||||
GITHUB_EVENT_PULL_REQUEST_BASE_SHA: ${{ github.event.pull_request.base.sha }}
|
||||
GITHUB_EVENT_BEFORE: ${{ github.event.before }}
|
||||
GITHUB_EVENT_FORCED : ${{ github.event.forced }}
|
||||
GITHUB_EVENT_FORCED: ${{ github.event.forced }}
|
||||
# INPUT_<VARIABLE_NAME> is not available in Composite run steps
|
||||
# https://docs.github.com/en/actions/creating-actions/metadata-syntax-for-github-actions#example-specifying-inputs
|
||||
INPUT_SHA: ${{ steps.sha.outputs.sha }}
|
||||
INPUT_BASE_SHA: ${{ steps.base-sha.outputs.base_sha }}
|
||||
INPUT_PATH: ${{ inputs.path }}
|
||||
INPUT_TARGET_BRANCH_FETCH_DEPTH: ${{ inputs.target_branch_fetch_depth }}
|
||||
- name: Glob match
|
||||
uses: tj-actions/glob@v13
|
||||
uses: tj-actions/glob@v15
|
||||
id: glob
|
||||
with:
|
||||
files: ${{ inputs.files }}
|
||||
|
||||
27
diff-sha.sh
27
diff-sha.sh
@@ -62,7 +62,7 @@ if [[ -z $GITHUB_BASE_REF ]]; then
|
||||
CURRENT_BRANCH=$TARGET_BRANCH && exit_status=$? || exit_status=$?
|
||||
|
||||
if [[ -z $INPUT_BASE_SHA ]]; then
|
||||
git fetch --no-tags -u --progress origin --depth=2 "${TARGET_BRANCH}":"${TARGET_BRANCH}" && exit_status=$? || exit_status=$?
|
||||
git fetch --no-tags -u --progress origin --depth="$INPUT_TARGET_BRANCH_FETCH_DEPTH" "${TARGET_BRANCH}":"${TARGET_BRANCH}" && exit_status=$? || exit_status=$?
|
||||
PREVIOUS_SHA=""
|
||||
|
||||
if [[ "$GITHUB_EVENT_FORCED" == "false" ]]; then
|
||||
@@ -103,20 +103,19 @@ else
|
||||
TARGET_BRANCH=$GITHUB_BASE_REF
|
||||
CURRENT_BRANCH=$GITHUB_HEAD_REF
|
||||
|
||||
echo "::debug::GITHUB_BASE_REF: $TARGET_BRANCH..."
|
||||
git fetch --no-tags -u --progress origin --depth="$INPUT_TARGET_BRANCH_FETCH_DEPTH" "${TARGET_BRANCH}":"${TARGET_BRANCH}" &&
|
||||
exit_status=$? || exit_status=$?
|
||||
|
||||
if [[ -z $INPUT_BASE_SHA ]]; then
|
||||
git fetch --no-tags -u --progress origin --depth=1 "${TARGET_BRANCH}":"${TARGET_BRANCH}" && exit_status=$? || exit_status=$?
|
||||
PREVIOUS_SHA=$GITHUB_PULL_REQUEST_BASE_SHA && exit_status=$? || exit_status=$?
|
||||
PREVIOUS_SHA=$GITHUB_EVENT_PULL_REQUEST_BASE_SHA && exit_status=$? || exit_status=$?
|
||||
echo "::debug::Previous SHA: $PREVIOUS_SHA"
|
||||
else
|
||||
git fetch --no-tags -u --progress origin --depth=1 "$(git rev-parse --verify "$INPUT_BASE_SHA")" && exit_status=$? || exit_status=$?
|
||||
PREVIOUS_SHA=$INPUT_BASE_SHA
|
||||
TARGET_BRANCH=$(git name-rev --name-only "$PREVIOUS_SHA" 2>&1) && exit_status=$? || exit_status=$?
|
||||
echo "::debug::Previous SHA: $PREVIOUS_SHA"
|
||||
echo "::debug::Target branch: $TARGET_BRANCH"
|
||||
PREVIOUS_SHA=$INPUT_BASE_SHA && exit_status=$? || exit_status=$?
|
||||
fi
|
||||
|
||||
echo "::debug::Target branch: $TARGET_BRANCH"
|
||||
echo "::debug::Current branch: $CURRENT_BRANCH"
|
||||
|
||||
echo "::debug::Verifying the previous commit SHA: $PREVIOUS_SHA"
|
||||
git rev-parse --quiet --verify "$PREVIOUS_SHA^{commit}" 1>/dev/null 2>&1 && exit_status=$? || exit_status=$?
|
||||
|
||||
@@ -133,9 +132,11 @@ if [[ -n "$PREVIOUS_SHA" && -n "$CURRENT_SHA" && "$PREVIOUS_SHA" == "$CURRENT_SH
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "::set-output name=target_branch::$TARGET_BRANCH"
|
||||
echo "::set-output name=current_branch::$CURRENT_BRANCH"
|
||||
echo "::set-output name=previous_sha::$PREVIOUS_SHA"
|
||||
echo "::set-output name=current_sha::$CURRENT_SHA"
|
||||
cat <<EOF >> "$GITHUB_OUTPUT"
|
||||
target_branch=$TARGET_BRANCH
|
||||
current_branch=$CURRENT_BRANCH
|
||||
previous_sha=$PREVIOUS_SHA
|
||||
current_sha=$CURRENT_SHA
|
||||
EOF
|
||||
|
||||
echo "::endgroup::"
|
||||
|
||||
@@ -18,7 +18,7 @@ if [[ -n "$INPUT_SINCE" ]]; then
|
||||
if [[ -z "$BASE_SHA" ]]; then
|
||||
echo "::warning::The BASE_SHA for date '$INPUT_SINCE' couldn't be determined."
|
||||
fi
|
||||
echo "::set-output name=base_sha::$BASE_SHA"
|
||||
echo "base_sha=$BASE_SHA" >> "$GITHUB_OUTPUT"
|
||||
elif [[ -n "$INPUT_BASE_SHA" ]]; then
|
||||
echo "::set-output name=base_sha::$INPUT_BASE_SHA"
|
||||
echo "base_sha=$INPUT_BASE_SHA" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
@@ -79,8 +79,6 @@ fi
|
||||
|
||||
echo "Retrieving changes between $INPUT_PREVIOUS_SHA ($INPUT_TARGET_BRANCH) → $INPUT_CURRENT_SHA ($INPUT_CURRENT_BRANCH)"
|
||||
|
||||
echo "Getting diff..."
|
||||
|
||||
if [[ "$INPUT_HAS_CUSTOM_PATTERNS" == "false" ]]; then
|
||||
if [[ "$INPUT_JSON" == "false" ]]; then
|
||||
ADDED=$(get_diff "$INPUT_PREVIOUS_SHA" "$INPUT_CURRENT_SHA" A | awk -v d="$INPUT_SEPARATOR" '{s=(NR==1?s:s d)$0}END{print s}')
|
||||
@@ -133,9 +131,9 @@ else
|
||||
|
||||
if [[ -n "${ALL_CHANGED}" ]]; then
|
||||
echo "::debug::Matching changed files: ${ALL_CHANGED}"
|
||||
echo "::set-output name=any_changed::true"
|
||||
echo "any_changed=true" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "::set-output name=any_changed::false"
|
||||
echo "any_changed=false" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
OTHER_CHANGED=""
|
||||
@@ -156,19 +154,19 @@ else
|
||||
|
||||
if [[ -n "${OTHER_CHANGED}" && "${OTHER_CHANGED}" != "[]" ]]; then
|
||||
echo "::debug::Non Matching changed files: ${OTHER_CHANGED}"
|
||||
echo "::set-output name=only_changed::false"
|
||||
echo "::set-output name=other_changed_files::$OTHER_CHANGED"
|
||||
echo "only_changed=false" >> "$GITHUB_OUTPUT"
|
||||
echo "other_changed_files=$OTHER_CHANGED" >> "$GITHUB_OUTPUT"
|
||||
elif [[ -n "${ALL_CHANGED}" ]]; then
|
||||
echo "::set-output name=only_changed::true"
|
||||
echo "only_changed=true" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
ALL_OTHER_MODIFIED=$(get_diff "$INPUT_PREVIOUS_SHA" "$INPUT_CURRENT_SHA" "ACMRD" | awk -v d="|" '{s=(NR==1?s:s d)$0}END{print s}')
|
||||
|
||||
if [[ -n "${ALL_MODIFIED}" ]]; then
|
||||
echo "::debug::Matching modified files: ${ALL_MODIFIED}"
|
||||
echo "::set-output name=any_modified::true"
|
||||
echo "any_modified=true" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "::set-output name=any_modified::false"
|
||||
echo "any_modified=false" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
OTHER_MODIFIED=""
|
||||
@@ -189,19 +187,19 @@ else
|
||||
|
||||
if [[ -n "${OTHER_MODIFIED}" && "$OTHER_MODIFIED" != "[]" ]]; then
|
||||
echo "::debug::Non Matching modified files: ${OTHER_MODIFIED}"
|
||||
echo "::set-output name=only_modified::false"
|
||||
echo "::set-output name=other_modified_files::$OTHER_MODIFIED"
|
||||
echo "only_modified=false" >> "$GITHUB_OUTPUT"
|
||||
echo "other_modified_files=$OTHER_MODIFIED" >> "$GITHUB_OUTPUT"
|
||||
elif [[ -n "${ALL_MODIFIED}" ]]; then
|
||||
echo "::set-output name=only_modified::true"
|
||||
echo "only_modified=true" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
ALL_OTHER_DELETED=$(get_diff "$INPUT_PREVIOUS_SHA" "$INPUT_CURRENT_SHA" D | awk -v d="|" '{s=(NR==1?s:s d)$0}END{print s}')
|
||||
|
||||
if [[ -n "${DELETED}" ]]; then
|
||||
echo "::debug::Matching deleted files: ${DELETED}"
|
||||
echo "::set-output name=any_deleted::true"
|
||||
echo "any_deleted=true" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "::set-output name=any_deleted::false"
|
||||
echo "any_deleted=false" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
OTHER_DELETED=""
|
||||
@@ -222,10 +220,10 @@ else
|
||||
|
||||
if [[ -n "${OTHER_DELETED}" && "${OTHER_DELETED}" != "[]" ]]; then
|
||||
echo "::debug::Non Matching deleted files: ${OTHER_DELETED}"
|
||||
echo "::set-output name=only_deleted::false"
|
||||
echo "::set-output name=other_deleted_files::$OTHER_DELETED"
|
||||
echo "only_deleted=false" >> "$GITHUB_OUTPUT"
|
||||
echo "other_deleted_files=$OTHER_DELETED" >> "$GITHUB_OUTPUT"
|
||||
elif [[ -n "${DELETED}" ]]; then
|
||||
echo "::set-output name=only_deleted::true"
|
||||
echo "only_deleted=true" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
if [[ "$INPUT_JSON" == "false" ]]; then
|
||||
ADDED=$(echo "${ADDED}" | awk '{gsub(/\|/,"\n"); print $0;}' | awk -v d="$INPUT_SEPARATOR" '{s=(NR==1?s:s d)$0}END{print s}')
|
||||
@@ -269,19 +267,21 @@ if [[ $INPUT_INCLUDE_ALL_OLD_NEW_RENAMED_FILES == "true" ]]; then
|
||||
echo "::debug::All old & new renamed files: $ALL_OLD_NEW_RENAMED"
|
||||
fi
|
||||
|
||||
echo "::set-output name=added_files::$ADDED"
|
||||
echo "::set-output name=copied_files::$COPIED"
|
||||
echo "::set-output name=deleted_files::$DELETED"
|
||||
echo "::set-output name=modified_files::$MODIFIED"
|
||||
echo "::set-output name=renamed_files::$RENAMED"
|
||||
echo "::set-output name=type_changed_files::$TYPE_CHANGED"
|
||||
echo "::set-output name=unmerged_files::$UNMERGED"
|
||||
echo "::set-output name=unknown_files::$UNKNOWN"
|
||||
echo "::set-output name=all_changed_and_modified_files::$ALL_CHANGED_AND_MODIFIED"
|
||||
echo "::set-output name=all_changed_files::$ALL_CHANGED"
|
||||
echo "::set-output name=all_modified_files::$ALL_MODIFIED"
|
||||
cat <<EOF >> "$GITHUB_OUTPUT"
|
||||
added_files=$ADDED
|
||||
copied_files=$COPIED
|
||||
deleted_files=$DELETED
|
||||
modified_files=$MODIFIED
|
||||
renamed_files=$RENAMED
|
||||
type_changed_files=$TYPE_CHANGED
|
||||
unmerged_files=$UNMERGED
|
||||
unknown_files=$UNKNOWN
|
||||
all_changed_and_modified_files=$ALL_CHANGED_AND_MODIFIED
|
||||
all_changed_files=$ALL_CHANGED
|
||||
all_modified_files=$ALL_MODIFIED
|
||||
EOF
|
||||
if [[ $INPUT_INCLUDE_ALL_OLD_NEW_RENAMED_FILES == "true" ]]; then
|
||||
echo "::set-output name=all_old_new_renamed_files::$ALL_OLD_NEW_RENAMED"
|
||||
echo "all_old_new_renamed_files=$ALL_OLD_NEW_RENAMED" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
echo "::endgroup::"
|
||||
|
||||
@@ -18,7 +18,7 @@ if [[ -n "$INPUT_UNTIL" ]]; then
|
||||
if [[ -z "$SHA" ]]; then
|
||||
echo "::warning::The SHA for date '$INPUT_UNTIL' couldn't be determined, falling back to the current sha."
|
||||
fi
|
||||
echo "::set-output name=sha::$SHA"
|
||||
echo "sha=$SHA" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "::set-output name=sha::$INPUT_SHA"
|
||||
echo "sha=$INPUT_SHA" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
@@ -1 +1 @@
|
||||
This is a test file
|
||||
This is a test file.
|
||||
|
||||
Reference in New Issue
Block a user