Compare commits
32 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
271bbd60fe | ||
|
|
e629b8ea3a | ||
|
|
f048489251 | ||
|
|
e8ace0110c | ||
|
|
e83c52fc11 | ||
|
|
853caa603d | ||
|
|
17e2510d74 | ||
|
|
e858c485a2 | ||
|
|
19483649c5 | ||
|
|
c061ef1fa3 | ||
|
|
84fd7c7a42 | ||
|
|
af5a2e5d10 | ||
|
|
e8f8d088f6 | ||
|
|
c23398e584 | ||
|
|
9352b30cc3 | ||
|
|
7b1f7ad57b | ||
|
|
e368753cac | ||
|
|
b47ed0ffe6 | ||
|
|
0e1d04f780 | ||
|
|
814a7ea227 | ||
|
|
4420c3c441 | ||
|
|
feadcbc861 | ||
|
|
b60f5e56b6 | ||
|
|
489e2d514f | ||
|
|
d889202b3a | ||
|
|
9ec430d951 | ||
|
|
ca2815e08c | ||
|
|
120ceacaf7 | ||
|
|
d205273c8b | ||
|
|
cc55e77a98 | ||
|
|
64fdc4478a | ||
|
|
669bce6c25 |
5
.github/workflows/test.yml
vendored
5
.github/workflows/test.yml
vendored
@@ -1,6 +1,9 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
@@ -12,6 +15,8 @@ jobs:
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Run changed-files with defaults
|
||||
id: changed-files
|
||||
uses: ./
|
||||
|
||||
41
CHANGELOG.md
41
CHANGELOG.md
@@ -1,41 +0,0 @@
|
||||
# Changelog
|
||||
|
||||
## [v3](https://github.com/tj-actions/changed-files/tree/v3) (2021-04-02)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v2.1...v3)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Update action.yml [\#11](https://github.com/tj-actions/changed-files/pull/11) ([jackton1](https://github.com/jackton1))
|
||||
- Update README.md [\#10](https://github.com/tj-actions/changed-files/pull/10) ([jackton1](https://github.com/jackton1))
|
||||
- Configure Renovate [\#9](https://github.com/tj-actions/changed-files/pull/9) ([renovate[bot]](https://github.com/apps/renovate))
|
||||
- Update test.yml [\#8](https://github.com/tj-actions/changed-files/pull/8) ([jackton1](https://github.com/jackton1))
|
||||
- Upgraded to v2.1 [\#6](https://github.com/tj-actions/changed-files/pull/6) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v2.1](https://github.com/tj-actions/changed-files/tree/v2.1) (2021-03-18)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v2...v2.1)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Upgraded to v2 [\#5](https://github.com/tj-actions/changed-files/pull/5) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v2](https://github.com/tj-actions/changed-files/tree/v2) (2021-03-14)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v1...v2)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Fixed end of string with separator [\#4](https://github.com/tj-actions/changed-files/pull/4) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v1](https://github.com/tj-actions/changed-files/tree/v1) (2021-03-05)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/7eba13b12c69e63845b6d8bf1d3453edb0549ff9...v1)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Update action.yml [\#2](https://github.com/tj-actions/changed-files/pull/2) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
|
||||
|
||||
\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
|
||||
40
HISTORY.md
40
HISTORY.md
@@ -1,5 +1,45 @@
|
||||
# Changelog
|
||||
|
||||
## [v4.1](https://github.com/tj-actions/changed-files/tree/v4.1) (2021-04-23)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v4...v4.1)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Upgraded to v4 [\#22](https://github.com/tj-actions/changed-files/pull/22) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v4](https://github.com/tj-actions/changed-files/tree/v4) (2021-04-23)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v3.3...v4)
|
||||
|
||||
**Implemented enhancements:**
|
||||
|
||||
- Feature request [\#15](https://github.com/tj-actions/changed-files/issues/15)
|
||||
- Added support for push events [\#21](https://github.com/tj-actions/changed-files/pull/21) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Upgraded to v3.3 [\#19](https://github.com/tj-actions/changed-files/pull/19) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v3.3](https://github.com/tj-actions/changed-files/tree/v3.3) (2021-04-20)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v3.2...v3.3)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Update action.yml [\#18](https://github.com/tj-actions/changed-files/pull/18) ([jackton1](https://github.com/jackton1))
|
||||
- Upgraded to v3.2 [\#17](https://github.com/tj-actions/changed-files/pull/17) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v3.2](https://github.com/tj-actions/changed-files/tree/v3.2) (2021-04-11)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v3.1...v3.2)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- Add support for all modified files [\#16](https://github.com/tj-actions/changed-files/pull/16) ([jackton1](https://github.com/jackton1))
|
||||
- Update test.yml [\#14](https://github.com/tj-actions/changed-files/pull/14) ([jackton1](https://github.com/jackton1))
|
||||
- Upgraded to v3.1 [\#13](https://github.com/tj-actions/changed-files/pull/13) ([jackton1](https://github.com/jackton1))
|
||||
|
||||
## [v3.1](https://github.com/tj-actions/changed-files/tree/v3.1) (2021-04-04)
|
||||
|
||||
[Full Changelog](https://github.com/tj-actions/changed-files/compare/v3...v3.1)
|
||||
|
||||
76
README.md
76
README.md
@@ -1,20 +1,38 @@
|
||||
[](https://github.com/tj-actions/changed-files/actions/workflows/test.yml) [](https://github.com/tj-actions/changed-files/actions/workflows/sync-release-version.yml)
|
||||
[](https://github.com/tj-actions/changed-files/actions/workflows/test.yml) [](https://github.com/tj-actions/changed-files/actions/workflows/sync-release-version.yml) <a href="https://github.com/search?q=tj-actions+changed-files+path%3A.github%2Fworkflows+language%3AYAML&type=code" target="_blank" title="Public workflows that use this action."><img src="https://img.shields.io/endpoint?url=https%3A%2F%2Fapi-git-master.endbug.vercel.app%2Fapi%2Fgithub-actions%2Fused-by%3Faction%3Dtj-actions%2Fchanged-files%26badge%3Dtrue" alt="Public workflows that use this action."></a>
|
||||
|
||||
changed-files
|
||||
-------------
|
||||
|
||||
Get modified files using [`git diff --diff-filter`](https://git-scm.com/docs/git-diff#Documentation/git-diff.txt---diff-filterACDMRTUXB82308203) to locate all files that have been modified relative to the default branch.
|
||||
|
||||
> NOTE: :warning: This action should only run on the following events :warning:
|
||||
> * [pull_request](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#pull_request)
|
||||
> * [pull_request_review](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#pull_request_review)
|
||||
> * [pull_request_review_comment](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#pull_request_review_comment)
|
||||
> * [pull_request_target](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#pull_request_target)
|
||||
Get all modified files relative to the default branch or preceding commit.
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
With defaults
|
||||
### Push event
|
||||
|
||||
```yaml
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
name: Test changed-files
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0 # OR "2" -> To retrieve the preceding commit.
|
||||
- name: Get changed files
|
||||
id: changed_files
|
||||
uses: tj-actions/changed-files@v4.1
|
||||
```
|
||||
|
||||
|
||||
### Pull Request events
|
||||
|
||||
```yaml
|
||||
name: CI
|
||||
@@ -31,8 +49,8 @@ jobs:
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Get changed files
|
||||
id: changed-files
|
||||
uses: tj-actions/changed-files@v3.1
|
||||
id: changed_files
|
||||
uses: tj-actions/changed-files@v4.1
|
||||
```
|
||||
|
||||
|
||||
@@ -43,34 +61,54 @@ jobs:
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Get changed files using defaults
|
||||
id: changed-files
|
||||
uses: tj-actions/changed-files@v3.1
|
||||
id: changed_files
|
||||
uses: tj-actions/changed-files@v4.1
|
||||
|
||||
- name: Get changed files using a comma separator
|
||||
id: changed-files-comma
|
||||
uses: tj-actions/changed-files@v3.1
|
||||
id: changed_files_comma
|
||||
uses: tj-actions/changed-files@v4.1
|
||||
with:
|
||||
separator: ","
|
||||
|
||||
- name: List all added files
|
||||
run: |
|
||||
for file in "${{ steps.changed-files.outputs.added_files }}"; do
|
||||
for file in "${{ steps.changed_files.outputs.added_files }}"; do
|
||||
echo $file
|
||||
done
|
||||
|
||||
- name: Run step when a file changes in a PR relative to the default branch
|
||||
if: contains(steps.changed-files.outputs.modified_files, 'my-file.txt')
|
||||
if: contains(steps.changed_files.outputs.modified_files, 'my-file.txt')
|
||||
run: |
|
||||
echo "Your file my-file.txt has been modified."
|
||||
|
||||
- name: Run step when a file is deleted in a PR relative to the default branch
|
||||
if: contains(steps.changed-files.outputs.deleted_files, 'test.txt')
|
||||
if: contains(steps.changed_files.outputs.deleted_files, 'test.txt')
|
||||
run: |
|
||||
echo "Your test.txt has been deleted."
|
||||
|
||||
|
||||
```
|
||||
|
||||
### Running [pre-commit](https://pre-commit.com/) on all modified files
|
||||
|
||||
```yaml
|
||||
...
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0 # otherwise, you will fail to push refs to dest repo
|
||||
|
||||
- name: Get changed files
|
||||
id: changed_files
|
||||
uses: tj-actions/changed-files@v4.1
|
||||
|
||||
- name: Pre-commit
|
||||
uses: pre-commit/action@v2.0.0
|
||||
with:
|
||||
extra_args: -v --hook-stage push --files ${{ steps.changed_files.outputs.all_modified_files }}
|
||||
token: ${{ secrets.github_token }}
|
||||
```
|
||||
|
||||
|
||||
## Inputs
|
||||
|
||||
@@ -95,7 +133,7 @@ Using the default separator.
|
||||
| unmerged_files | `string` | 'new.txt other.png ...' | Select only files that are Unmerged (U) |
|
||||
| unknown_files | `string` | 'new.txt other.png ...' | Select only files that are Unknown (X) |
|
||||
| all_changed_files | `string` | 'new.txt other.png ...' | Select all paths (*) <br /> *i.e a combination of all options above.* |
|
||||
| all_modified_files | `string` | 'new.txt other.png ...' | Select all modified files (*) <br /> *i.e a combination of all added, <br />copied and modified files (ACM).* |
|
||||
| all_modified_files | `string` | 'new.txt other.png ...' | Select all modified files <br /> *i.e a combination of all added, <br />copied and modified files (ACM).* |
|
||||
|
||||
|
||||
## Example
|
||||
|
||||
47
action.yml
47
action.yml
@@ -10,54 +10,51 @@ inputs:
|
||||
outputs:
|
||||
added_files:
|
||||
description: List of added files.
|
||||
value: ${{ steps.changed-files.outputs.added_files }}
|
||||
value: ${{ steps.changed_files.outputs.added_files }}
|
||||
copied_files:
|
||||
description: List of copied files.
|
||||
value: ${{ steps.changed-files.outputs.copied_files }}
|
||||
value: ${{ steps.changed_files.outputs.copied_files }}
|
||||
deleted_files:
|
||||
description: List of deleted files.
|
||||
value: ${{ steps.changed-files.outputs.deleted_files }}
|
||||
value: ${{ steps.changed_files.outputs.deleted_files }}
|
||||
modified_files:
|
||||
description: List of modified files.
|
||||
value: ${{ steps.changed-files.outputs.modified_files }}
|
||||
value: ${{ steps.changed_files.outputs.modified_files }}
|
||||
renamed_files:
|
||||
description: List of renamed files.
|
||||
value: ${{ steps.changed-files.outputs.renamed_files }}
|
||||
value: ${{ steps.changed_files.outputs.renamed_files }}
|
||||
changed_files:
|
||||
description: List of changed files.
|
||||
value: ${{ steps.changed-files.outputs.changed_files }}
|
||||
value: ${{ steps.changed_files.outputs.changed_files }}
|
||||
unmerged_files:
|
||||
description: List of unmerged files.
|
||||
value: ${{ steps.changed-files.outputs.unmerged_files }}
|
||||
value: ${{ steps.changed_files.outputs.unmerged_files }}
|
||||
unknown_files:
|
||||
description: List of unknown files.
|
||||
value: ${{ steps.changed-files.outputs.unknown_files }}
|
||||
value: ${{ steps.changed_files.outputs.unknown_files }}
|
||||
all_changed_files:
|
||||
description: List of all changed files.
|
||||
value: ${{ steps.changed-files.outputs.all_changed_files }}
|
||||
value: ${{ steps.changed_files.outputs.all_changed_files }}
|
||||
all_modified_files:
|
||||
description: List of all changed modified and added files
|
||||
value: ${{ steps.changed-files.outputs.all_modified_files }}
|
||||
description: List of all copied modified and added files
|
||||
value: ${{ steps.changed_files.outputs.all_modified_files }}
|
||||
|
||||
runs:
|
||||
using: 'composite'
|
||||
steps:
|
||||
- id: changed-files
|
||||
- id: changed_files
|
||||
run: |
|
||||
echo "Getting head sha..."
|
||||
|
||||
if [[ -z $GITHUB_BASE_REF ]]; then
|
||||
echo "Skipping: This should only run on pull_request.";
|
||||
exit 0;
|
||||
HEAD_SHA=$(git rev-parse HEAD^1 || true)
|
||||
else
|
||||
TARGET_BRANCH=${GITHUB_BASE_REF}
|
||||
git fetch --depth=1 origin ${TARGET_BRANCH}:${TARGET_BRANCH}
|
||||
HEAD_SHA=$(git rev-parse ${TARGET_BRANCH} || true)
|
||||
fi
|
||||
|
||||
TARGET_BRANCH=${GITHUB_BASE_REF}
|
||||
CURRENT_BRANCH=${GITHUB_HEAD_REF}
|
||||
|
||||
git fetch --depth=1 origin ${TARGET_BRANCH}:${TARGET_BRANCH}
|
||||
|
||||
echo "Getting head sha..."
|
||||
|
||||
HEAD_SHA=$(git rev-parse ${TARGET_BRANCH} || true)
|
||||
|
||||
echo "Getting diff..."
|
||||
ADDED=$(git diff --diff-filter=A --name-only "$HEAD_SHA" | tr "\n" "${{ inputs.separator }}" | sed -E 's/(${{ inputs.separator }})$//')
|
||||
COPIED=$(git diff --diff-filter=C --name-only "$HEAD_SHA" | tr "\n" "${{ inputs.separator }}" | sed -E 's/(${{ inputs.separator }})$//')
|
||||
DELETED=$(git diff --diff-filter=D --name-only "$HEAD_SHA" | tr "\n" "${{ inputs.separator }}" | sed -E 's/(${{ inputs.separator }})$//')
|
||||
@@ -69,7 +66,7 @@ runs:
|
||||
ALL_CHANGED=$(git diff --diff-filter='*ACDMRTUX' --name-only "$HEAD_SHA" | tr "\n" "${{ inputs.separator }}" | sed -E 's/(${{ inputs.separator }})$//')
|
||||
ALL_MODIFIED_FILES=$(git diff --diff-filter='ACM' --name-only "$HEAD_SHA" | tr "\n" "${{ inputs.separator }}" | sed -E 's/(${{ inputs.separator }})$//')
|
||||
|
||||
echo "Getting diff..."
|
||||
|
||||
echo "::set-output name=added_files::$ADDED"
|
||||
echo "::set-output name=copied_files::$COPIED"
|
||||
echo "::set-output name=deleted_files::$DELETED"
|
||||
@@ -83,5 +80,5 @@ runs:
|
||||
shell: bash
|
||||
|
||||
branding:
|
||||
icon: git-pull-request
|
||||
icon: file-text
|
||||
color: white
|
||||
|
||||
@@ -1,5 +1,44 @@
|
||||
{
|
||||
"extends": [
|
||||
"config:base"
|
||||
],
|
||||
"enabled": true,
|
||||
"prHourlyLimit": 10,
|
||||
"prConcurrentLimit": 5,
|
||||
"rebaseWhen": "behind-base-branch",
|
||||
"addLabels": [
|
||||
"dependencies"
|
||||
],
|
||||
"assignees": [
|
||||
"jackton1"
|
||||
],
|
||||
"assignAutomerge": true,
|
||||
"dependencyDashboard": true,
|
||||
"dependencyDashboardAutoclose": true,
|
||||
"lockFileMaintenance": {
|
||||
"enabled": true,
|
||||
"automerge": true
|
||||
},
|
||||
"packageRules": [
|
||||
{
|
||||
"matchUpdateTypes": ["minor", "patch", "pin", "digest"],
|
||||
"automerge": true,
|
||||
"rebaseWhen": "behind-base-branch",
|
||||
"addLabels": [
|
||||
"automerge"
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "docker images",
|
||||
"matchLanguages": [
|
||||
"docker"
|
||||
],
|
||||
"matchUpdateTypes": ["minor", "patch", "pin", "digest"],
|
||||
"rebaseWhen": "behind-base-branch",
|
||||
"addLabels": [
|
||||
"automerge"
|
||||
],
|
||||
"automerge": true
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user