Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3de1f9a283 | ||
|
|
87d61bba41 | ||
|
|
9716e7993f | ||
|
|
666680491a | ||
|
|
58a81c5c4c | ||
|
|
6b8ef3323f | ||
|
|
1c997727c9 |
19
HISTORY.md
19
HISTORY.md
@@ -1,12 +1,29 @@
|
||||
# Changelog
|
||||
|
||||
## [v21](https://github.com/tj-actions/changed-files/tree/v21) (2022-05-25)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v20.2...v21)
|
||||
|
||||
**Implemented enhancements:**
|
||||
|
||||
- \[Feature\] Handle Pipeline Error [\#500](https://github.com/tj-actions/changed-files/issues/500)
|
||||
|
||||
**Fixed bugs:**
|
||||
|
||||
- \[BUG\] System.InvalidOperationException: Maximum object size exceeded [\#501](https://github.com/tj-actions/changed-files/issues/501)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- fix: large output generated by all\_old\_new\_renamed\_files output [\#502](https://github.com/tj-actions/changed-files/pull/502) ([jackton1](https://github.com/jackton1))
|
||||
- Upgraded to v20.2 [\#499](https://github.com/tj-actions/changed-files/pull/499) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v20.2](https://github.com/tj-actions/changed-files/tree/v20.2) (2022-05-24)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v20.1...v20.2)
|
||||
|
||||
**Fixed bugs:**
|
||||
|
||||
- \[BUG\] old\_new\_renamed\_files is empty when providing a glob pattern. [\#467](https://github.com/tj-actions/changed-files/issues/467)
|
||||
- \[BUG\] all\_old\_new\_renamed\_files is empty when providing a glob pattern. [\#467](https://github.com/tj-actions/changed-files/issues/467)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
|
||||
73
README.md
73
README.md
@@ -67,7 +67,7 @@ jobs:
|
||||
|
||||
- name: Get changed files
|
||||
id: changed-files
|
||||
uses: tj-actions/changed-files@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
|
||||
- name: List all changed files
|
||||
run: |
|
||||
@@ -140,12 +140,12 @@ Support this project with a :star:
|
||||
| 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 |
|
||||
| path | `string` | `false` | `'.'` | Relative path under <br> `GITHUB_WORKSPACE` <br> to the repository |
|
||||
| since\_last\_remote\_commit | `boolean` | `false` | `false` | Use the last commit on the remote <br> branch as the `base_sha` <br> (Defaults to the last commit <br> on the target branch for Pull requests <br> or the previous commit <br> on the current branch <br> for push events). <br /> NOTE: This requires <br /> `fetch-depth: 0` <br /> with `actions/checkout@v2` |
|
||||
| use\_fork\_point | `boolean` | `false` | `false` | Finds best common ancestor <br /> between two commits <br /> to use in a three-way merge <br /> as the `base_sha` <br /> See: [git merge-base](https://git-scm.com/docs/git-merge-base#Documentation/git-merge-base.txt---fork-point). <br> NOTE: This pulls the entire commit history of the base branch |
|
||||
| quotepath | `boolean` | `false` | `true` | Output filenames completely verbatim by setting this to `false` |
|
||||
|
||||
## Example
|
||||
## Examples
|
||||
|
||||
```yaml
|
||||
...
|
||||
@@ -157,11 +157,11 @@ Support this project with a :star:
|
||||
|
||||
- name: Get changed files using defaults
|
||||
id: changed-files
|
||||
uses: tj-actions/changed-files@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
|
||||
- name: Get changed files using a comma separator
|
||||
id: changed-files-comma
|
||||
uses: tj-actions/changed-files@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
with:
|
||||
separator: ","
|
||||
|
||||
@@ -183,7 +183,7 @@ Support this project with a :star:
|
||||
|
||||
- name: Get specific changed files
|
||||
id: changed-files-specific
|
||||
uses: tj-actions/changed-files@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
with:
|
||||
files: |
|
||||
my-file.txt
|
||||
@@ -224,14 +224,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@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
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@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
with:
|
||||
files_from_source_file: |
|
||||
test/changed-files-list.txt
|
||||
@@ -240,13 +240,13 @@ Support this project with a :star:
|
||||
|
||||
- name: Use a different commit SHA
|
||||
id: changed-files-custom-sha
|
||||
uses: tj-actions/changed-files@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
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@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
with:
|
||||
base_sha: "2096ed0"
|
||||
|
||||
@@ -258,7 +258,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@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
with:
|
||||
path: dir1
|
||||
|
||||
@@ -270,21 +270,64 @@ Support this project with a :star:
|
||||
|
||||
- name: Run changed-files using the last commit on the remote branch
|
||||
id: changed-files-since-last-remote-commit
|
||||
uses: tj-actions/changed-files@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
with:
|
||||
since_last_remote_commit: "true"
|
||||
|
||||
- name: Run changed-files using the fork point of a pull request
|
||||
id: changed-files-fork-point
|
||||
uses: tj-actions/changed-files@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
with:
|
||||
use_fork_point: "true"
|
||||
|
||||
- name: Run changed-files with quotepath disabled
|
||||
id: changed-files-quotepath
|
||||
uses: tj-actions/changed-files@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
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 solutions that works for your use case.
|
||||
|
||||
# Push event based workflows
|
||||
- name: Get branch name
|
||||
id: branch-name
|
||||
uses: tj-actions/branch-names@v5
|
||||
|
||||
- uses: nrwl/last-successful-commit-action@v1
|
||||
id: last_successful_commit_push
|
||||
with:
|
||||
branch: ${{ steps.branch-name.outputs.current_branch }} # Get the last successful commit for the current branch.
|
||||
workflow_id: 'test.yml'
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- 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@v21
|
||||
with:
|
||||
base_sha: ${{ steps.last_successful_commit_push.outputs.commit_hash }}
|
||||
|
||||
# Pull request based workflows.
|
||||
- name: Get branch name
|
||||
id: branch-name
|
||||
uses: tj-actions/branch-names@v5
|
||||
if: github.event_name == 'pull_request'
|
||||
|
||||
- uses: nrwl/last-successful-commit-action@v1
|
||||
id: last_successful_commit_pull_request
|
||||
if: github.event_name == 'pull_request'
|
||||
with:
|
||||
branch: ${{ steps.branch-name.outputs.base_ref_branch }} # Get the last successful commit on master or main branch
|
||||
workflow_id: 'test.yml'
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- 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@v21
|
||||
with:
|
||||
base_sha: ${{ steps.last_successful_commit_pull_request.outputs.commit_hash }}
|
||||
|
||||
```
|
||||
|
||||
@@ -336,7 +379,7 @@ With the switch from using grep's Extended regex to match files to the natively
|
||||
|
||||
- name: Get specific changed files
|
||||
id: changed-files-specific
|
||||
uses: tj-actions/changed-files@v20.2
|
||||
uses: tj-actions/changed-files@v21
|
||||
with:
|
||||
files: |
|
||||
*.sh
|
||||
|
||||
@@ -61,6 +61,7 @@ inputs:
|
||||
path:
|
||||
description: 'Specify a relative path under $GITHUB_WORKSPACE to locate the repository'
|
||||
required: false
|
||||
default: '.'
|
||||
use_fork_point:
|
||||
description: 'Finds best common ancestor between two commits to use in a three-way merge as the base_sha'
|
||||
default: 'false'
|
||||
@@ -158,6 +159,7 @@ runs:
|
||||
GITHUB_BASE_REF: ${{ github.base_ref }}
|
||||
GITHUB_HEAD_REF: ${{ github.head_ref }}
|
||||
GITHUB_ACTION_PATH: ${{ github.action_path }}
|
||||
GITHUB_WORKSPACE: ${{ github.workspace }}
|
||||
# INPUT_<VARIABLE_NAME> is not available in Composite run steps
|
||||
# https://github.community/t/input-variable-name-is-not-available-in-composite-run-steps/127611
|
||||
INPUT_SHA: ${{ inputs.sha }}
|
||||
@@ -166,7 +168,7 @@ runs:
|
||||
INPUT_PATH: ${{ inputs.path }}
|
||||
INPUT_USE_FORK_POINT: ${{ inputs.use_fork_point }}
|
||||
- name: Glob match
|
||||
uses: tj-actions/glob@v7.20
|
||||
uses: tj-actions/glob@v9
|
||||
id: glob
|
||||
with:
|
||||
files: ${{ inputs.files }}
|
||||
@@ -187,6 +189,7 @@ runs:
|
||||
shell: bash
|
||||
env:
|
||||
GITHUB_ACTION_PATH: ${{ github.action_path }}
|
||||
GITHUB_WORKSPACE: ${{ github.workspace }}
|
||||
# INPUT_<VARIABLE_NAME> is not available in Composite run steps
|
||||
# https://github.community/t/input-variable-name-is-not-available-in-composite-run-steps/127611
|
||||
INPUT_FILES_PATTERN_FILE: ${{ steps.glob.outputs.paths-output-file }}
|
||||
|
||||
@@ -4,12 +4,12 @@ set -eu
|
||||
|
||||
echo "::group::changed-files-diff-sha"
|
||||
|
||||
echo "Resolving repository path..."
|
||||
|
||||
if [[ -n $INPUT_PATH ]]; then
|
||||
REPO_DIR="$GITHUB_WORKSPACE/$INPUT_PATH"
|
||||
|
||||
echo "Resolving repository path: $REPO_DIR"
|
||||
if [[ ! -d "$REPO_DIR" ]]; then
|
||||
echo "::warning::Invalid repository path"
|
||||
echo "::warning::Invalid repository path: $REPO_DIR"
|
||||
exit 1
|
||||
fi
|
||||
cd "$REPO_DIR"
|
||||
|
||||
@@ -52,12 +52,12 @@ function get_renames() {
|
||||
|
||||
echo "::group::changed-files"
|
||||
|
||||
echo "Resolving repository path..."
|
||||
|
||||
if [[ -n $INPUT_PATH ]]; then
|
||||
REPO_DIR="$GITHUB_WORKSPACE/$INPUT_PATH"
|
||||
|
||||
echo "Resolving repository path: $REPO_DIR"
|
||||
if [[ ! -d "$REPO_DIR" ]]; then
|
||||
echo "::warning::Invalid repository path"
|
||||
echo "::warning::Invalid repository path: $REPO_DIR"
|
||||
exit 1
|
||||
fi
|
||||
cd "$REPO_DIR"
|
||||
|
||||
Reference in New Issue
Block a user