Compare commits
73 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2a968ff601 | ||
|
|
ef327f98b5 | ||
|
|
5c1cab8429 | ||
|
|
60e7ac7c28 | ||
|
|
fe91ab72f6 | ||
|
|
cc23ede837 | ||
|
|
76dc7bcd3f | ||
|
|
c7072f0969 | ||
|
|
032079bf7f | ||
|
|
21ccb43669 | ||
|
|
038a51af80 | ||
|
|
a5f4b54b5f | ||
|
|
61e9ed7dab | ||
|
|
c6c396f2fe | ||
|
|
7f05b89187 | ||
|
|
139cb86a77 | ||
|
|
97365f6cd2 | ||
|
|
1f20fb83f0 | ||
|
|
51647add79 | ||
|
|
6c6532459a | ||
|
|
f53b75ef58 | ||
|
|
732c1a14e7 | ||
|
|
3ab0d43f2c | ||
|
|
de17e6cdf2 | ||
|
|
c7bb50a40c | ||
|
|
fe12e8f13f | ||
|
|
87e23c4c79 | ||
|
|
2f49eb9ee1 | ||
|
|
00b3d3d9e7 | ||
|
|
19193bdb26 | ||
|
|
d12b5fc2ab | ||
|
|
338f354106 | ||
|
|
626a6b7213 | ||
|
|
090f90127a | ||
|
|
598640f3be | ||
|
|
7ee3290f25 | ||
|
|
e9eccdd473 | ||
|
|
6dc8c796c9 | ||
|
|
d1028b2eb8 | ||
|
|
0e24cebad0 | ||
|
|
d8f8ad9a74 | ||
|
|
47a703e935 | ||
|
|
742b6417b4 | ||
|
|
af9376f801 | ||
|
|
adaff22ded | ||
|
|
2cd4de3431 | ||
|
|
b199521773 | ||
|
|
aecc5ebeee | ||
|
|
630aa37bbd | ||
|
|
c060576a37 | ||
|
|
54849deb96 | ||
|
|
034e423c9c | ||
|
|
89c31817b2 | ||
|
|
e42f43b67b | ||
|
|
6fdb8b53b3 | ||
|
|
3323f78bb4 | ||
|
|
fe20777b56 | ||
|
|
89890d6f77 | ||
|
|
927a8c5ba3 | ||
|
|
5e7542fc4b | ||
|
|
bb3376162b | ||
|
|
6d350523ea | ||
|
|
8838901b21 | ||
|
|
eb59803836 | ||
|
|
bdf73bf6ae | ||
|
|
4cddd28d4b | ||
|
|
89f014aed9 | ||
|
|
4904bb2843 | ||
|
|
13e016d7c4 | ||
|
|
709c71af5f | ||
|
|
8c58d60f5b | ||
|
|
e6e128a1c4 | ||
|
|
358ff4f347 |
@@ -1,7 +1,8 @@
|
|||||||
{
|
{
|
||||||
"plugins": [
|
"plugins": [
|
||||||
"jest",
|
"jest",
|
||||||
"@typescript-eslint"
|
"@typescript-eslint",
|
||||||
|
"github"
|
||||||
],
|
],
|
||||||
"extends": [
|
"extends": [
|
||||||
"plugin:github/recommended"
|
"plugin:github/recommended"
|
||||||
|
|||||||
10
.github/dependabot.yml
vendored
10
.github/dependabot.yml
vendored
@@ -1,7 +1,17 @@
|
|||||||
version: 2
|
version: 2
|
||||||
updates:
|
updates:
|
||||||
|
- package-ecosystem: npm
|
||||||
|
directory: "/"
|
||||||
|
schedule:
|
||||||
|
interval: daily
|
||||||
|
open-pull-requests-limit: 10
|
||||||
|
versioning-strategy: widen
|
||||||
|
labels:
|
||||||
|
- "merge when passing"
|
||||||
- package-ecosystem: github-actions
|
- package-ecosystem: github-actions
|
||||||
directory: "/"
|
directory: "/"
|
||||||
schedule:
|
schedule:
|
||||||
interval: daily
|
interval: daily
|
||||||
open-pull-requests-limit: 10
|
open-pull-requests-limit: 10
|
||||||
|
labels:
|
||||||
|
- "merge when passing"
|
||||||
|
|||||||
26
.github/workflows/auto-merge.yml
vendored
26
.github/workflows/auto-merge.yml
vendored
@@ -1,26 +0,0 @@
|
|||||||
name: automerge
|
|
||||||
on:
|
|
||||||
check_suite:
|
|
||||||
types:
|
|
||||||
- completed
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
automerge:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
if: |
|
|
||||||
github.actor == 'dependabot[bot]' ||
|
|
||||||
github.actor == 'dependabot' ||
|
|
||||||
github.actor == 'dependabot-preview[bot]' ||
|
|
||||||
github.actor == 'dependabot-preview' ||
|
|
||||||
github.actor == 'renovate[bot]' ||
|
|
||||||
github.actor == 'renovate'
|
|
||||||
steps:
|
|
||||||
- name: automerge
|
|
||||||
uses: pascalgn/automerge-action@v0.15.6
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }}
|
|
||||||
MERGE_METHOD: "rebase"
|
|
||||||
UPDATE_METHOD: "rebase"
|
|
||||||
MERGE_RETRIES: "6"
|
|
||||||
MERGE_RETRY_SLEEP: "100000"
|
|
||||||
MERGE_LABELS: ""
|
|
||||||
15
.github/workflows/test.yml
vendored
15
.github/workflows/test.yml
vendored
@@ -51,7 +51,7 @@ jobs:
|
|||||||
repository: ${{ github.event.pull_request.head.repo.full_name }}
|
repository: ${{ github.event.pull_request.head.repo.full_name }}
|
||||||
|
|
||||||
- name: Use Node.js 16.x
|
- name: Use Node.js 16.x
|
||||||
uses: actions/setup-node@v3.6.0
|
uses: actions/setup-node@v3.7.0
|
||||||
with:
|
with:
|
||||||
cache: 'yarn'
|
cache: 'yarn'
|
||||||
node-version: '16.x'
|
node-version: '16.x'
|
||||||
@@ -321,8 +321,8 @@ jobs:
|
|||||||
fail-fast: false
|
fail-fast: false
|
||||||
max-parallel: 4
|
max-parallel: 4
|
||||||
matrix:
|
matrix:
|
||||||
fetch-depth: [1, 2]
|
fetch-depth: [1, 2, 50]
|
||||||
input-fetch_depth: [1, 50]
|
input-fetch_depth: [1, 2, 50]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout branch
|
- name: Checkout branch
|
||||||
@@ -339,8 +339,10 @@ jobs:
|
|||||||
- name: Run changed-files
|
- name: Run changed-files
|
||||||
id: changed-files
|
id: changed-files
|
||||||
uses: ./
|
uses: ./
|
||||||
|
continue-on-error: ${{ matrix.input-skip_initial_fetch == true && matrix.fetch-depth < 10 }}
|
||||||
with:
|
with:
|
||||||
fetch_depth: ${{ matrix.input-fetch_depth }}
|
fetch_depth: ${{ matrix.input-fetch_depth }}
|
||||||
|
skip_initial_fetch: ${{ github.event_name == 'push' }}
|
||||||
|
|
||||||
- name: Show output
|
- name: Show output
|
||||||
run: |
|
run: |
|
||||||
@@ -640,7 +642,7 @@ jobs:
|
|||||||
shell:
|
shell:
|
||||||
bash
|
bash
|
||||||
|
|
||||||
test_recover_deleted_file:
|
test-recover-deleted-file:
|
||||||
name: Test changed-files recover deleted file
|
name: Test changed-files recover deleted file
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: build
|
needs: build
|
||||||
@@ -670,6 +672,7 @@ jobs:
|
|||||||
base_sha: "fcdeb5b3d797752d95f6dbe98552a95c29dad338"
|
base_sha: "fcdeb5b3d797752d95f6dbe98552a95c29dad338"
|
||||||
sha: "432e0c810c60ef1332850a971c5ec39022034b4c"
|
sha: "432e0c810c60ef1332850a971c5ec39022034b4c"
|
||||||
recover_deleted_files: true
|
recover_deleted_files: true
|
||||||
|
fetch_depth: 60000
|
||||||
|
|
||||||
- name: Show output
|
- name: Show output
|
||||||
run: |
|
run: |
|
||||||
@@ -702,6 +705,7 @@ jobs:
|
|||||||
files: |
|
files: |
|
||||||
test
|
test
|
||||||
recover_deleted_files: true
|
recover_deleted_files: true
|
||||||
|
fetch_depth: 60000
|
||||||
|
|
||||||
- name: Show output
|
- name: Show output
|
||||||
run: |
|
run: |
|
||||||
@@ -736,6 +740,7 @@ jobs:
|
|||||||
- test/**.txt
|
- test/**.txt
|
||||||
- test/**.md
|
- test/**.md
|
||||||
recover_deleted_files: true
|
recover_deleted_files: true
|
||||||
|
fetch_depth: 60000
|
||||||
|
|
||||||
- name: Show output
|
- name: Show output
|
||||||
run: |
|
run: |
|
||||||
@@ -767,6 +772,7 @@ jobs:
|
|||||||
sha: "432e0c810c60ef1332850a971c5ec39022034b4c"
|
sha: "432e0c810c60ef1332850a971c5ec39022034b4c"
|
||||||
recover_deleted_files: true
|
recover_deleted_files: true
|
||||||
recover_deleted_files_to_destination: "deleted_files"
|
recover_deleted_files_to_destination: "deleted_files"
|
||||||
|
fetch_depth: 60000
|
||||||
|
|
||||||
- name: Show output
|
- name: Show output
|
||||||
run: |
|
run: |
|
||||||
@@ -908,6 +914,7 @@ jobs:
|
|||||||
fetch_depth: 60000
|
fetch_depth: 60000
|
||||||
dir_names: "true"
|
dir_names: "true"
|
||||||
dir_names_max_depth: 3
|
dir_names_max_depth: 3
|
||||||
|
dir_names_exclude_current_dir: "true"
|
||||||
- name: Show output
|
- name: Show output
|
||||||
run: |
|
run: |
|
||||||
echo '${{ toJSON(steps.changed-files-dir-names-max-depth.outputs) }}'
|
echo '${{ toJSON(steps.changed-files-dir-names-max-depth.outputs) }}'
|
||||||
|
|||||||
146
HISTORY.md
146
HISTORY.md
@@ -1,5 +1,151 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
# [37.1.1](https://github.com/tj-actions/changed-files/compare/v37.1.0...v37.1.1) - (2023-07-11)
|
||||||
|
|
||||||
|
## <!-- 26 -->🔄 Update
|
||||||
|
|
||||||
|
- Updated README.md ([#1361](https://github.com/tj-actions/changed-files/issues/1361))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([f53b75e](https://github.com/tj-actions/changed-files/commit/f53b75ef587410b544b17c73677519d76ebe5775)) - (tj-actions[bot])
|
||||||
|
- Update README.md ([732c1a1](https://github.com/tj-actions/changed-files/commit/732c1a14e7c752fc78b781de8975c102ad26dc5f)) - (Tonye Jack)
|
||||||
|
- Update README.md ([de17e6c](https://github.com/tj-actions/changed-files/commit/de17e6cdf222c98c8d2caefef10216bbd23c557e)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- **deps:** Bump semver from 6.3.0 to 6.3.1 ([#1362](https://github.com/tj-actions/changed-files/issues/1362)) ([1f20fb8](https://github.com/tj-actions/changed-files/commit/1f20fb83f05eabed6e12ba0329edac8b6ec8e207)) - (dependabot[bot])
|
||||||
|
- **deps:** Update typescript-eslint monorepo to v6 (major) ([#1360](https://github.com/tj-actions/changed-files/issues/1360)) ([51647ad](https://github.com/tj-actions/changed-files/commit/51647add79ed3e9ed311efd543bc342abc2db9e9)) - (renovate[bot])
|
||||||
|
- **deps:** Update typescript-eslint monorepo to v5.62.0 ([#1359](https://github.com/tj-actions/changed-files/issues/1359)) ([6c65324](https://github.com/tj-actions/changed-files/commit/6c6532459ab0ab44938aabe62c8e665b5fd97aad)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/jest to v29.5.3 ([#1358](https://github.com/tj-actions/changed-files/issues/1358)) ([3ab0d43](https://github.com/tj-actions/changed-files/commit/3ab0d43f2c66ea0f1eb64b6f17ea2471c0f60711)) - (renovate[bot])
|
||||||
|
- **deps:** Lock file maintenance ([#1356](https://github.com/tj-actions/changed-files/issues/1356)) ([c7bb50a](https://github.com/tj-actions/changed-files/commit/c7bb50a40c6695f3cf2a5e98f77abcd3b8c1775f)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v37.1.0 ([#1355](https://github.com/tj-actions/changed-files/issues/1355))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([fe12e8f](https://github.com/tj-actions/changed-files/commit/fe12e8f13fd61b4b3acc6a385f31a0c804b71f31)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
# [37.1.0](https://github.com/tj-actions/changed-files/compare/v37.0.5...v37.1.0) - (2023-07-09)
|
||||||
|
|
||||||
|
## <!-- 0 -->🚀 Features
|
||||||
|
|
||||||
|
- Add support for skipping initial fetch ([#1353](https://github.com/tj-actions/changed-files/issues/1353)) ([2f49eb9](https://github.com/tj-actions/changed-files/commit/2f49eb9ee1f1dc38d9f070ebecf12b59c9436e0e)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 17 -->➖ Remove
|
||||||
|
|
||||||
|
- Deleted .github/workflows/auto-merge.yml ([d1028b2](https://github.com/tj-actions/changed-files/commit/d1028b2eb89e46a93cc618ef283598da9e43a860)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 26 -->🔄 Update
|
||||||
|
|
||||||
|
- Updated README.md ([#1354](https://github.com/tj-actions/changed-files/issues/1354))
|
||||||
|
|
||||||
|
Co-authored-by: repo-ranger[bot] <repo-ranger[bot]@users.noreply.github.com> ([87e23c4](https://github.com/tj-actions/changed-files/commit/87e23c4c79a603288642711155953c7da34b11ac)) - (tj-actions[bot])
|
||||||
|
- Update README.md ([00b3d3d](https://github.com/tj-actions/changed-files/commit/00b3d3d9e7d0efa856785fc5586fefd61cbf9e92)) - (Tonye Jack)
|
||||||
|
- Update README.md ([626a6b7](https://github.com/tj-actions/changed-files/commit/626a6b7213d3d54c32b7f8afae6251494453ded6)) - (Tonye Jack)
|
||||||
|
- Update dependabot.yml ([7ee3290](https://github.com/tj-actions/changed-files/commit/7ee3290f25f5a3f42d74b3399dd2106a7f7ce2f3)) - (Tonye Jack)
|
||||||
|
- Updated renovate.json ([e9eccdd](https://github.com/tj-actions/changed-files/commit/e9eccdd473f87222a6a8393f849d7c945568b842)) - (Tonye Jack)
|
||||||
|
- Update dependabot.yml ([6dc8c79](https://github.com/tj-actions/changed-files/commit/6dc8c796c9b6810ee03d89669f5f7edf09069788)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- **deps-dev:** Bump prettier from 2.8.8 to 3.0.0 ([#1345](https://github.com/tj-actions/changed-files/issues/1345)) ([19193bd](https://github.com/tj-actions/changed-files/commit/19193bdb2634c8529d7b25642f3436f76eae0b45)) - (dependabot[bot])
|
||||||
|
- **deps:** Update dependency @types/node to v20.4.1 ([#1351](https://github.com/tj-actions/changed-files/issues/1351)) ([d12b5fc](https://github.com/tj-actions/changed-files/commit/d12b5fc2ab2546513a4be53b41218c928fd70b99)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency jest to v29.6.1 ([#1350](https://github.com/tj-actions/changed-files/issues/1350)) ([338f354](https://github.com/tj-actions/changed-files/commit/338f3541063a272dd7dcf8ed531daa483ca95762)) - (renovate[bot])
|
||||||
|
- **deps:** Lock file maintenance ([#1349](https://github.com/tj-actions/changed-files/issues/1349)) ([090f901](https://github.com/tj-actions/changed-files/commit/090f90127a77657c1531f97f8f22a7ec1fbeeb1c)) - (renovate[bot])
|
||||||
|
- **deps-dev:** Bump @types/node from 20.3.3 to 20.4.0 ([#1348](https://github.com/tj-actions/changed-files/issues/1348)) ([598640f](https://github.com/tj-actions/changed-files/commit/598640f3beb83bd8c85ef43b7df70d8fca22dca6)) - (dependabot[bot])
|
||||||
|
- **deps:** Update actions/setup-node action to v3.7.0 ([#1344](https://github.com/tj-actions/changed-files/issues/1344)) ([0e24ceb](https://github.com/tj-actions/changed-files/commit/0e24cebad03e8080e8912d6a4a9a200b06ebd261)) - (renovate[bot])
|
||||||
|
- **deps:** Lock file maintenance ([#1342](https://github.com/tj-actions/changed-files/issues/1342)) ([d8f8ad9](https://github.com/tj-actions/changed-files/commit/d8f8ad9a74cda2e39386f4cebf232f27f4099887)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency jest to v29.6.0 ([#1341](https://github.com/tj-actions/changed-files/issues/1341)) ([47a703e](https://github.com/tj-actions/changed-files/commit/47a703e935c9dd0ecb0421d5656df3f8700d3a0c)) - (renovate[bot])
|
||||||
|
- Update filter pattern ([#1340](https://github.com/tj-actions/changed-files/issues/1340)) ([742b641](https://github.com/tj-actions/changed-files/commit/742b6417b4068dac99221f71a1466631de290ebb)) - (Tonye Jack)
|
||||||
|
- **deps:** Update typescript-eslint monorepo to v5.61.0 ([#1339](https://github.com/tj-actions/changed-files/issues/1339)) ([af9376f](https://github.com/tj-actions/changed-files/commit/af9376f80142244248805dc85f751b19e5875fbf)) - (renovate[bot])
|
||||||
|
- **deps:** Lock file maintenance ([#1338](https://github.com/tj-actions/changed-files/issues/1338)) ([adaff22](https://github.com/tj-actions/changed-files/commit/adaff22dedce1452500712c7d1445f1ae776739a)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency eslint to v8.44.0 ([#1337](https://github.com/tj-actions/changed-files/issues/1337)) ([2cd4de3](https://github.com/tj-actions/changed-files/commit/2cd4de3431b86792632cb629f30e5743924edb0a)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency @types/node to v20.3.3 ([#1336](https://github.com/tj-actions/changed-files/issues/1336)) ([b199521](https://github.com/tj-actions/changed-files/commit/b1995217737c4c6b644dfee6b73e35063eff6591)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency ts-jest to v29.1.1 ([#1333](https://github.com/tj-actions/changed-files/issues/1333)) ([aecc5eb](https://github.com/tj-actions/changed-files/commit/aecc5ebeee84c2358e83fc9101ef1a70bd0581ac)) - (renovate[bot])
|
||||||
|
- **deps:** Lock file maintenance ([#1331](https://github.com/tj-actions/changed-files/issues/1331)) ([c060576](https://github.com/tj-actions/changed-files/commit/c060576a37b64111bff7727c21c1c91948fd88b2)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v37.0.5 ([#1332](https://github.com/tj-actions/changed-files/issues/1332))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com>
|
||||||
|
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com> ([630aa37](https://github.com/tj-actions/changed-files/commit/630aa37bbd533646936247a99e24e04efeb41602)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
# [37.0.5](https://github.com/tj-actions/changed-files/compare/v37.0.4...v37.0.5) - (2023-06-29)
|
||||||
|
|
||||||
|
## <!-- 26 -->🔄 Update
|
||||||
|
|
||||||
|
- Update README.md ([034e423](https://github.com/tj-actions/changed-files/commit/034e423c9c8101a65e1da676ac29a3423ff442f7)) - (Tonye Jack)
|
||||||
|
- Updated README.md ([#1329](https://github.com/tj-actions/changed-files/issues/1329))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([89c3181](https://github.com/tj-actions/changed-files/commit/89c31817b274e258fb873b539a68e467a4a385b0)) - (tj-actions[bot])
|
||||||
|
- Update README.md ([e42f43b](https://github.com/tj-actions/changed-files/commit/e42f43b67b2ca0d726dec681aa34e4b875ddd284)) - (Tonye Jack)
|
||||||
|
- Update README.md ([fe20777](https://github.com/tj-actions/changed-files/commit/fe20777b56dffa2faca8f02f32ba42ae644b5a7b)) - (Tonye Jack)
|
||||||
|
- Update README.md ([89890d6](https://github.com/tj-actions/changed-files/commit/89890d6f77a064cdbf5c475517dca8d39228f154)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- **deps:** Lock file maintenance ([#1330](https://github.com/tj-actions/changed-files/issues/1330)) ([54849de](https://github.com/tj-actions/changed-files/commit/54849deb963ca9f24185fb5de2965e002d066e6b)) - (renovate[bot])
|
||||||
|
- Update README.md ([6fdb8b5](https://github.com/tj-actions/changed-files/commit/6fdb8b53b33f2cf5a6a6969836ebfd774e05ff87)) - (Tonye Jack)
|
||||||
|
- **deps:** Update dependency typescript to v5.1.6 ([#1328](https://github.com/tj-actions/changed-files/issues/1328)) ([3323f78](https://github.com/tj-actions/changed-files/commit/3323f78bb45033e3f3bb7d9cbc125d3f0833c243)) - (renovate[bot])
|
||||||
|
- **deps:** Update dependency typescript to v5.1.5 ([#1324](https://github.com/tj-actions/changed-files/issues/1324)) ([927a8c5](https://github.com/tj-actions/changed-files/commit/927a8c5ba3f01280932398e5ce47d64bada31e32)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v37.0.4 ([#1323](https://github.com/tj-actions/changed-files/issues/1323))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([5e7542f](https://github.com/tj-actions/changed-files/commit/5e7542fc4bfffb67ec6f613fb57d17364b602f57)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
# [37.0.4](https://github.com/tj-actions/changed-files/compare/v37.0.3...v37.0.4) - (2023-06-27)
|
||||||
|
|
||||||
|
## <!-- 1 -->🐛 Bug Fixes
|
||||||
|
|
||||||
|
- **deps:** Update dependency @octokit/rest to v19.0.13 ([#1318](https://github.com/tj-actions/changed-files/issues/1318)) ([eb59803](https://github.com/tj-actions/changed-files/commit/eb598038365111ee2d653fed71db39c68d8a5ca6)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 26 -->🔄 Update
|
||||||
|
|
||||||
|
- Updated README.md ([#1314](https://github.com/tj-actions/changed-files/issues/1314))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([4904bb2](https://github.com/tj-actions/changed-files/commit/4904bb2843fce2a1cec977be83ccda6c1605ff9c)) - (tj-actions[bot])
|
||||||
|
- Update README.md ([13e016d](https://github.com/tj-actions/changed-files/commit/13e016d7c459ba0b877df6680a5543e9f8890ef9)) - (Tonye Jack)
|
||||||
|
- Updated submodule ([#1307](https://github.com/tj-actions/changed-files/issues/1307))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com>
|
||||||
|
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com> ([e6e128a](https://github.com/tj-actions/changed-files/commit/e6e128a1c4b816aabb14c127146e2371749458c0)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- **deps:** Lock file maintenance ([#1320](https://github.com/tj-actions/changed-files/issues/1320)) ([bb33761](https://github.com/tj-actions/changed-files/commit/bb3376162b179308a79fc4450262a15a8e1d6888)) - (renovate[bot])
|
||||||
|
- **deps:** Bump lodash from 4.17.15 to 4.17.21 ([#1322](https://github.com/tj-actions/changed-files/issues/1322)) ([6d35052](https://github.com/tj-actions/changed-files/commit/6d350523ea913b29cd86acff803c50fcbd829ffc)) - (dependabot[bot])
|
||||||
|
- Update package.json ([8838901](https://github.com/tj-actions/changed-files/commit/8838901b21e20574f67a02954a585a5ba579809e)) - (Tonye Jack)
|
||||||
|
- Update package version requirements ([#1317](https://github.com/tj-actions/changed-files/issues/1317)) ([bdf73bf](https://github.com/tj-actions/changed-files/commit/bdf73bf6aec3938ce64ef74eb6b86af0271804a2)) - (Tonye Jack)
|
||||||
|
- **deps:** Update dependency @types/node to v20.3.2 ([#1315](https://github.com/tj-actions/changed-files/issues/1315)) ([4cddd28](https://github.com/tj-actions/changed-files/commit/4cddd28d4b8f3c05636331fdba69336f95c127a2)) - (renovate[bot])
|
||||||
|
- Increase fetch-depth to resolve error with test ([#1316](https://github.com/tj-actions/changed-files/issues/1316)) ([89f014a](https://github.com/tj-actions/changed-files/commit/89f014aed90c84e49f2d9c972ad1b3b43f6e10d8)) - (Tonye Jack)
|
||||||
|
- **deps:** Update typescript-eslint monorepo to v5.60.1 ([#1313](https://github.com/tj-actions/changed-files/issues/1313)) ([709c71a](https://github.com/tj-actions/changed-files/commit/709c71af5fefd98c04ccbfb9e588784850d867cd)) - (renovate[bot])
|
||||||
|
- Update debug message ([#1311](https://github.com/tj-actions/changed-files/issues/1311)) ([8c58d60](https://github.com/tj-actions/changed-files/commit/8c58d60f5bd07539ff823a0ed6eb66262bd89c70)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v37.0.3 ([#1310](https://github.com/tj-actions/changed-files/issues/1310))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([358ff4f](https://github.com/tj-actions/changed-files/commit/358ff4f347713d6c6eb579a95b43955158857ac1)) - (tj-actions[bot])
|
||||||
|
|
||||||
|
# [37.0.3](https://github.com/tj-actions/changed-files/compare/v37.0.2...v37.0.3) - (2023-06-26)
|
||||||
|
|
||||||
|
## <!-- 1 -->🐛 Bug Fixes
|
||||||
|
|
||||||
|
- Bug listing submodule paths ([#1308](https://github.com/tj-actions/changed-files/issues/1308)) ([7d7c695](https://github.com/tj-actions/changed-files/commit/7d7c69556b242d112e52d307ae14ba770a52af47)) - (Tonye Jack)
|
||||||
|
|
||||||
|
## <!-- 7 -->⚙️ Miscellaneous Tasks
|
||||||
|
|
||||||
|
- **deps:** Lock file maintenance ([#1309](https://github.com/tj-actions/changed-files/issues/1309)) ([ec1e14c](https://github.com/tj-actions/changed-files/commit/ec1e14cf27f4585783f463070881b2c499349a8a)) - (renovate[bot])
|
||||||
|
- **deps:** Lock file maintenance ([#1306](https://github.com/tj-actions/changed-files/issues/1306)) ([cb82bb7](https://github.com/tj-actions/changed-files/commit/cb82bb73255fe3d708c0da15a592f93d820e3499)) - (renovate[bot])
|
||||||
|
|
||||||
|
## <!-- 9 -->⬆️ Upgrades
|
||||||
|
|
||||||
|
- Upgraded to v37.0.2 ([#1305](https://github.com/tj-actions/changed-files/issues/1305))
|
||||||
|
|
||||||
|
Co-authored-by: jackton1 <jackton1@users.noreply.github.com> ([07e161e](https://github.com/tj-actions/changed-files/commit/07e161e47fa182e1cc2cb37c80f4e3b175124385)) - (tj-actions[bot])
|
||||||
|
|
||||||
# [37.0.2](https://github.com/tj-actions/changed-files/compare/v37.0.1...v37.0.2) - (2023-06-25)
|
# [37.0.2](https://github.com/tj-actions/changed-files/compare/v37.0.1...v37.0.2) - (2023-06-25)
|
||||||
|
|
||||||
## <!-- 1 -->🐛 Bug Fixes
|
## <!-- 1 -->🐛 Bug Fixes
|
||||||
|
|||||||
304
README.md
304
README.md
@@ -19,18 +19,22 @@
|
|||||||
|
|
||||||
## changed-files
|
## changed-files
|
||||||
|
|
||||||
Effortlessly track all changed files and directories relative to a target branch, preceding commit or the last remote commit returning **relative paths** from the project root.
|
Effortlessly track all changed files and directories relative to a target branch, preceding commit or the last remote commit returning **relative paths** from the project root using this GitHub action.
|
||||||
|
|
||||||
## Table of contents
|
## Table of contents
|
||||||
|
|
||||||
* [Features](#features)
|
* [Features](#features)
|
||||||
* [Usage](#usage)
|
* [Usage](#usage)
|
||||||
|
* [On `pull_request`](#on-pull_request)
|
||||||
|
* [Using local .git history](#using-local-git-history)
|
||||||
|
* [Using Github's API](#using-githubs-api)
|
||||||
|
* [On `push`](#on-push)
|
||||||
* [Useful Acronyms](#useful-acronyms)
|
* [Useful Acronyms](#useful-acronyms)
|
||||||
* [Outputs](#outputs)
|
* [Outputs](#outputs)
|
||||||
* [Inputs](#inputs)
|
* [Inputs](#inputs)
|
||||||
* [Versioning](#versioning)
|
* [Versioning](#versioning)
|
||||||
* [Examples](#examples)
|
* [Examples](#examples)
|
||||||
* [Real world usage](#real-world-usage)
|
* [Real-world usage](#real-world-usage)
|
||||||
* [Known Limitation](#known-limitation)
|
* [Known Limitation](#known-limitation)
|
||||||
* [Migration guide](#migration-guide)
|
* [Migration guide](#migration-guide)
|
||||||
* [Credits](#credits)
|
* [Credits](#credits)
|
||||||
@@ -39,14 +43,14 @@ Effortlessly track all changed files and directories relative to a target branch
|
|||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
* Provides fast execution, averaging 0-10 seconds.
|
* Fast execution, averaging 0-10 seconds.
|
||||||
* Leverages either [Github's REST API](https://docs.github.com/en/rest/reference/repos#list-commits) or [Git's native diff](https://git-scm.com/docs/git-diff) to determine changed files.
|
* Leverages either [Github's REST API](https://docs.github.com/en/rest/reference/repos#list-commits) or [Git's native diff](https://git-scm.com/docs/git-diff) to determine changed files.
|
||||||
* Facilitates easy debugging.
|
* Facilitates easy debugging.
|
||||||
* Scales to handle large repositories.
|
* Scales to handle large repositories.
|
||||||
* Supports Git submodules.
|
* Supports Git submodules.
|
||||||
* Generates escaped JSON output for running matrix jobs based on changed files.
|
* Generates escaped JSON output for running matrix jobs based on changed files.
|
||||||
* Lists changed directories.
|
* Lists changed directories.
|
||||||
* Allows limiting the matching changed directories to a specified maximum depth.
|
* Limits matching changed directories to a specified maximum depth.
|
||||||
* Optionally excludes the current directory.
|
* Optionally excludes the current directory.
|
||||||
* Writes outputs to a designated `.txt` or `.json` file for further processing.
|
* Writes outputs to a designated `.txt` or `.json` file for further processing.
|
||||||
* Restores deleted files to their previous location or a newly specified location.
|
* Restores deleted files to their previous location or a newly specified location.
|
||||||
@@ -81,53 +85,31 @@ And many more.
|
|||||||
> * Ensure that `persist-credentials` is set to `true` when configuring [`actions/checkout`](https://github.com/actions/checkout#usage) if `fetch-depth` isn't set to `0`.
|
> * Ensure that `persist-credentials` is set to `true` when configuring [`actions/checkout`](https://github.com/actions/checkout#usage) if `fetch-depth` isn't set to `0`.
|
||||||
> * For repositories that have PRs generated from forks when configuring [`actions/checkout`](https://github.com/actions/checkout#usage) set the `repository` to `${{ github.event.pull_request.head.repo.full_name }}`. See: [Example](https://github.com/tj-actions/changed-files/blob/main/.github/workflows/test.yml#L47-L51)
|
> * For repositories that have PRs generated from forks when configuring [`actions/checkout`](https://github.com/actions/checkout#usage) set the `repository` to `${{ github.event.pull_request.head.repo.full_name }}`. See: [Example](https://github.com/tj-actions/changed-files/blob/main/.github/workflows/test.yml#L47-L51)
|
||||||
|
|
||||||
|
### On `pull_request`
|
||||||
|
|
||||||
|
#### Using local .git history
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
name: CI
|
name: CI
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
pull_request:
|
pull_request:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
# -------------------------------------------------------------
|
# ------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
# Event `pull_request`: Returns all changed pull request files.
|
# Event `pull_request`: Compare the last commit of the main branch or last remote commit of the PR branch -> to the current commit of a PR branch.
|
||||||
# --------------------------------------------------------------
|
# ------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
job1: # Example 1 - Using GitHub's API
|
changed_files:
|
||||||
# NOTE:
|
runs-on: ubuntu-latest # windows-latest || macos-latest
|
||||||
# - This is limited to pull_request* events and would raise an error for other events.
|
|
||||||
# - A maximum of 3000 files can be returned.
|
|
||||||
runs-on: ubuntu-latest # windows-latest | macos-latest
|
|
||||||
name: Test changed-files
|
|
||||||
if: github.event_name != 'push'
|
|
||||||
permissions:
|
|
||||||
pull-requests: read
|
|
||||||
steps:
|
|
||||||
- name: Get changed files
|
|
||||||
id: changed-files
|
|
||||||
uses: tj-actions/changed-files@v37
|
|
||||||
|
|
||||||
- name: List all changed files
|
|
||||||
run: |
|
|
||||||
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
|
|
||||||
echo "$file was changed"
|
|
||||||
done
|
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------------------------------------
|
|
||||||
# Event `push`: Compare the preceding commit -> to the current commit of the main branch.
|
|
||||||
# Event `pull_request`: Compare the last commit of main -> to the current commit of a Pull Request branch.
|
|
||||||
# ------------------------------------------------------------------------------------------------------------
|
|
||||||
job2: # Example 2 - Using local .git directory
|
|
||||||
runs-on: ubuntu-latest # windows-latest | macos-latest
|
|
||||||
name: Test changed-files
|
name: Test changed-files
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0 # OR "2" -> To retrieve the preceding commit.
|
fetch-depth: 0 # OR "2" -> To retrieve the preceding commit.
|
||||||
|
|
||||||
|
# Example 1
|
||||||
- name: Get changed files
|
- name: Get changed files
|
||||||
id: changed-files
|
id: changed-files
|
||||||
uses: tj-actions/changed-files@v37
|
uses: tj-actions/changed-files@v37
|
||||||
@@ -142,19 +124,13 @@ jobs:
|
|||||||
echo "$file was changed"
|
echo "$file was changed"
|
||||||
done
|
done
|
||||||
|
|
||||||
job3: # Example 3 - Using local .git directory
|
# Example 2
|
||||||
runs-on: ubuntu-latest # windows-latest | macos-latest
|
|
||||||
name: Test changed-files
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
fetch-depth: 0 # OR "2" -> To retrieve the preceding commit.
|
|
||||||
|
|
||||||
- name: Get changed files in the docs folder
|
- name: Get changed files in the docs folder
|
||||||
id: changed-files-specific
|
id: changed-files-specific
|
||||||
uses: tj-actions/changed-files@v37
|
uses: tj-actions/changed-files@v37
|
||||||
with:
|
with:
|
||||||
files: docs/*.{js,html} # Alternatively using: `docs/**` or `docs`
|
files: docs/*.{js,html} # Alternatively using: `docs/**` or `docs`
|
||||||
|
files_ignore: docs/static.js
|
||||||
|
|
||||||
- name: Run step if any file(s) in the docs folder change
|
- name: Run step if any file(s) in the docs folder change
|
||||||
if: steps.changed-files-specific.outputs.any_changed == 'true'
|
if: steps.changed-files-specific.outputs.any_changed == 'true'
|
||||||
@@ -162,44 +138,14 @@ jobs:
|
|||||||
echo "One or more files in the docs folder has changed."
|
echo "One or more files in the docs folder has changed."
|
||||||
echo "List all the files that have changed: ${{ steps.changed-files-specific.outputs.all_changed_files }}"
|
echo "List all the files that have changed: ${{ steps.changed-files-specific.outputs.all_changed_files }}"
|
||||||
|
|
||||||
job4: # Example 4 - Using local .git directory
|
# Example 3
|
||||||
runs-on: ubuntu-latest # windows-latest | macos-latest
|
|
||||||
name: Test changed-files
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
fetch-depth: 0 # OR "2" -> To retrieve the preceding commit.
|
|
||||||
|
|
||||||
- name: Get all changed .js file(s) or any file in the static folder excluding the docs folder
|
|
||||||
id: changed-files-excluded
|
|
||||||
uses: tj-actions/changed-files@v37
|
|
||||||
with:
|
|
||||||
files: |
|
|
||||||
**.js
|
|
||||||
static
|
|
||||||
files_ignore: docs
|
|
||||||
|
|
||||||
- name: Run step if any .js file(s) or any file in the static folder change
|
|
||||||
if: steps.changed-files-excluded.outputs.any_changed == 'true'
|
|
||||||
run: |
|
|
||||||
echo "One or more .js file(s) or any file in the static folder but not in the doc folder has changed."
|
|
||||||
echo "List all the files that have changed: ${{ steps.changed-files-excluded.outputs.all_changed_files }}"
|
|
||||||
|
|
||||||
job5: # Example 5 - Using local .git directory
|
|
||||||
runs-on: ubuntu-latest # windows-latest | macos-latest
|
|
||||||
name: Test changed-files
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
fetch-depth: 0 # OR "2" -> To retrieve the preceding commit.
|
|
||||||
|
|
||||||
- name: Get all test, doc and src files that have changed
|
- name: Get all test, doc and src files that have changed
|
||||||
id: changed-files-yaml
|
id: changed-files-yaml
|
||||||
uses: tj-actions/changed-files@v37
|
uses: tj-actions/changed-files@v37
|
||||||
with:
|
with:
|
||||||
files_yaml: |
|
files_yaml: |
|
||||||
doc:
|
doc:
|
||||||
- *.md
|
- **.md
|
||||||
- docs/**
|
- docs/**
|
||||||
- !docs/README.md
|
- !docs/README.md
|
||||||
test:
|
test:
|
||||||
@@ -222,6 +168,107 @@ jobs:
|
|||||||
echo "List all the files that have changed: ${{ steps.changed-files-yaml.outputs.doc_all_changed_files }}"
|
echo "List all the files that have changed: ${{ steps.changed-files-yaml.outputs.doc_all_changed_files }}"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
#### Using Github's API
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
name: CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
# -------------------------------------------------------------
|
||||||
|
# Event `pull_request`: Returns all changed pull request files.
|
||||||
|
# --------------------------------------------------------------
|
||||||
|
changed_files:
|
||||||
|
# NOTE:
|
||||||
|
# - This is limited to pull_request* events and would raise an error for other events.
|
||||||
|
# - A maximum of 3000 files can be returned.
|
||||||
|
# - For more flexibility and no limitations see "Using local .git history" above.
|
||||||
|
|
||||||
|
runs-on: ubuntu-latest # windows-latest || macos-latest
|
||||||
|
name: Test changed-files
|
||||||
|
permissions:
|
||||||
|
pull-requests: read
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Get changed files
|
||||||
|
id: changed-files
|
||||||
|
uses: tj-actions/changed-files@v37
|
||||||
|
|
||||||
|
- name: List all changed files
|
||||||
|
run: |
|
||||||
|
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
|
||||||
|
echo "$file was changed"
|
||||||
|
done
|
||||||
|
```
|
||||||
|
|
||||||
|
### On `push`
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
name: CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
|
# -------------------------------
|
||||||
|
# Optionally run on other events
|
||||||
|
# -------------------------------
|
||||||
|
# schedule:
|
||||||
|
# - cron: '0 0 * * *'
|
||||||
|
#
|
||||||
|
# release:
|
||||||
|
# types: [published]
|
||||||
|
#
|
||||||
|
# push:
|
||||||
|
# tags:
|
||||||
|
# - '**'
|
||||||
|
#
|
||||||
|
# ...and many more
|
||||||
|
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
# -------------------------------------------------------------
|
||||||
|
# Using GitHub's API is not supported for push events
|
||||||
|
# -------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# ----------------------------------------------------------------------------------------------
|
||||||
|
# Using local .git history
|
||||||
|
# ----------------------------------------------------------------------------------------------
|
||||||
|
# Event `push`: Compare the preceding remote commit -> to the current commit of the main branch
|
||||||
|
# ----------------------------------------------------------------------------------------------
|
||||||
|
changed_files:
|
||||||
|
runs-on: ubuntu-latest # windows-latest || macos-latest
|
||||||
|
name: Test changed-files
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0 # OR "2" -> To retrieve the preceding commit.
|
||||||
|
|
||||||
|
# Example 1
|
||||||
|
- name: Get changed files
|
||||||
|
id: changed-files
|
||||||
|
uses: tj-actions/changed-files@v37
|
||||||
|
|
||||||
|
# NOTE: `since_last_remote_commit: true` is implied by default and falls back to the previous local commit.
|
||||||
|
|
||||||
|
- name: List all changed files
|
||||||
|
run: |
|
||||||
|
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
|
||||||
|
echo "$file was changed"
|
||||||
|
done
|
||||||
|
|
||||||
|
# Example 2: See above
|
||||||
|
...
|
||||||
|
|
||||||
|
# Example 3: See above
|
||||||
|
...
|
||||||
|
```
|
||||||
|
|
||||||
To access more examples, navigate to the [Examples](#examples) section.
|
To access more examples, navigate to the [Examples](#examples) section.
|
||||||
|
|
||||||
If you feel generous and want to show some extra appreciation:
|
If you feel generous and want to show some extra appreciation:
|
||||||
@@ -296,47 +343,48 @@ Support this project with a :star:
|
|||||||
|
|
||||||
<!-- AUTO-DOC-INPUT:START - Do not remove or modify this section -->
|
<!-- AUTO-DOC-INPUT:START - Do not remove or modify this section -->
|
||||||
|
|
||||||
| INPUT | TYPE | REQUIRED | DEFAULT | DESCRIPTION |
|
| INPUT | TYPE | REQUIRED | DEFAULT | DESCRIPTION |
|
||||||
|----------------------------------------------|--------|----------|---------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|----------------------------------------------|--------|----------|---------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| api\_url | string | false | `"${{ github.api_url }}"` | Github API URL. |
|
| api\_url | string | false | `"${{ github.api_url }}"` | Github API URL. |
|
||||||
| base\_sha | string | false | | Specify a different base commit <br>SHA used for comparing changes |
|
| base\_sha | string | false | | Specify a different base commit <br>SHA used for comparing changes |
|
||||||
| diff\_relative | string | false | `"true"` | Exclude changes outside the current <br>directory and show path names <br>relative to it. **NOTE:** This <br>requires you to specify the <br>top level directory via the <br>`path` input. |
|
| diff\_relative | string | false | `"true"` | Exclude changes outside the current <br>directory and show path names <br>relative to it. **NOTE:** This <br>requires you to specify the <br>top level directory via the <br>`path` input. |
|
||||||
| dir\_names | string | false | `"false"` | Output unique changed directories instead <br>of filenames. **NOTE:** This returns <br>`.` for changed files located <br>in the current working directory <br>which defaults to `$GITHUB_WORKSPACE`. |
|
| dir\_names | string | false | `"false"` | Output unique changed directories instead <br>of filenames. **NOTE:** This returns <br>`.` for changed files located <br>in the current working directory <br>which defaults to `$GITHUB_WORKSPACE`. |
|
||||||
| dir\_names\_exclude\_current\_dir | string | false | `"false"` | Exclude the current directory represented <br>by `.` from the output <br>when `dir_names` is set to <br>`true`. |
|
| dir\_names\_exclude\_current\_dir | string | false | `"false"` | Exclude the current directory represented <br>by `.` from the output <br>when `dir_names` is set to <br>`true`. |
|
||||||
| dir\_names\_max\_depth | string | false | | Limit the directory output to <br>a maximum depth e.g `test/test1/test2` <br>with max depth of `2` <br>returns `test/test1`. |
|
| dir\_names\_max\_depth | string | false | | Limit the directory output to <br>a maximum depth e.g `test/test1/test2` <br>with max depth of `2` <br>returns `test/test1`. |
|
||||||
| escape\_json | string | false | `"true"` | Escape JSON output. |
|
| escape\_json | string | false | `"true"` | Escape JSON output. |
|
||||||
| fetch\_depth | string | false | `"50"` | Depth of additional branch history <br>fetched. **NOTE**: This can be <br>adjusted to resolve errors with <br>insufficient history. |
|
| fetch\_depth | string | false | `"50"` | Depth of additional branch history <br>fetched. **NOTE**: This can be <br>adjusted to resolve errors with <br>insufficient history. |
|
||||||
| files | string | false | | File and directory patterns used <br>to detect changes (Defaults to the entire repo if unset) **NOTE:** <br>Multiline file/directory patterns should not <br>include quotes. |
|
| files | string | false | | File and directory patterns used <br>to detect changes (Defaults to the entire repo if unset) **NOTE:** <br>Multiline file/directory patterns should not <br>include quotes. |
|
||||||
| files\_from\_source\_file | string | false | | Source file(s) used to populate <br>the `files` input. |
|
| files\_from\_source\_file | string | false | | Source file(s) used to populate <br>the `files` input. |
|
||||||
| files\_from\_source\_file\_separator | string | false | `"\n"` | Separator used to split the <br>`files_from_source_file` input |
|
| files\_from\_source\_file\_separator | string | false | `"\n"` | Separator used to split the <br>`files_from_source_file` input |
|
||||||
| files\_ignore | string | false | | Ignore changes to these file(s) <br>**NOTE:** Multiline file/directory patterns should <br>not include quotes. |
|
| files\_ignore | string | false | | Ignore changes to these file(s) <br>**NOTE:** Multiline file/directory patterns should <br>not include quotes. |
|
||||||
| files\_ignore\_from\_source\_file | string | false | | Source file(s) used to populate <br>the `files_ignore` input |
|
| files\_ignore\_from\_source\_file | string | false | | Source file(s) used to populate <br>the `files_ignore` input |
|
||||||
| files\_ignore\_from\_source\_file\_separator | string | false | `"\n"` | Separator used to split the <br>`files_ignore_from_source_file` input |
|
| files\_ignore\_from\_source\_file\_separator | string | false | `"\n"` | Separator used to split the <br>`files_ignore_from_source_file` input |
|
||||||
| files\_ignore\_separator | string | false | `"\n"` | Separator used to split the <br>`files_ignore` input |
|
| files\_ignore\_separator | string | false | `"\n"` | Separator used to split the <br>`files_ignore` input |
|
||||||
| files\_ignore\_yaml | string | false | | YAML used to define a <br>set of file patterns to <br>ignore changes |
|
| files\_ignore\_yaml | string | false | | YAML used to define a <br>set of file patterns to <br>ignore changes |
|
||||||
| files\_ignore\_yaml\_from\_source\_file | string | false | | Source file(s) used to populate <br>the `files_ignore_yaml` input. [Example](https://github.com/tj-actions/changed-files/blob/main/test/changed-files.yml) |
|
| files\_ignore\_yaml\_from\_source\_file | string | false | | Source file(s) used to populate <br>the `files_ignore_yaml` input. [Example](https://github.com/tj-actions/changed-files/blob/main/test/changed-files.yml) |
|
||||||
| files\_ignore\_yaml\_from\_source\_file\_separator | string | false | `"\n"` | Separator used to split the <br>`files_ignore_yaml_from_source_file` input |
|
| files\_ignore\_yaml\_from\_source\_file\_separator | string | false | `"\n"` | Separator used to split the <br>`files_ignore_yaml_from_source_file` input |
|
||||||
| files\_separator | string | false | `"\n"` | Separator used to split the <br>`files` input |
|
| files\_separator | string | false | `"\n"` | Separator used to split the <br>`files` input |
|
||||||
| files\_yaml | string | false | | YAML used to define a <br>set of file patterns to <br>detect changes |
|
| files\_yaml | string | false | | YAML used to define a <br>set of file patterns to <br>detect changes |
|
||||||
| files\_yaml\_from\_source\_file | string | false | | Source file(s) used to populate <br>the `files_yaml` input. [Example](https://github.com/tj-actions/changed-files/blob/main/test/changed-files.yml) |
|
| files\_yaml\_from\_source\_file | string | false | | Source file(s) used to populate <br>the `files_yaml` input. [Example](https://github.com/tj-actions/changed-files/blob/main/test/changed-files.yml) |
|
||||||
| files\_yaml\_from\_source\_file\_separator | string | false | `"\n"` | Separator used to split the <br>`files_yaml_from_source_file` input |
|
| files\_yaml\_from\_source\_file\_separator | string | false | `"\n"` | Separator used to split the <br>`files_yaml_from_source_file` input |
|
||||||
| include\_all\_old\_new\_renamed\_files | string | false | `"false"` | Include `all_old_new_renamed_files` output. Note this <br>can generate a large output <br>See: [#501](https://github.com/tj-actions/changed-files/issues/501). |
|
| include\_all\_old\_new\_renamed\_files | string | false | `"false"` | Include `all_old_new_renamed_files` output. Note this <br>can generate a large output <br>See: [#501](https://github.com/tj-actions/changed-files/issues/501). |
|
||||||
| json | string | false | `"false"` | Output list of changed files <br>in a JSON formatted string <br>which can be used for <br>matrix jobs. |
|
| json | string | false | `"false"` | Output list of changed files <br>in a JSON formatted string <br>which can be used for <br>matrix jobs. |
|
||||||
| old\_new\_files\_separator | string | false | `" "` | Split character for old and <br>new renamed filename pairs. |
|
| old\_new\_files\_separator | string | false | `" "` | Split character for old and <br>new renamed filename pairs. |
|
||||||
| old\_new\_separator | string | false | `","` | Split character for old and <br>new filename pairs. |
|
| old\_new\_separator | string | false | `","` | Split character for old and <br>new filename pairs. |
|
||||||
| output\_dir | string | false | `".github/outputs"` | Directory to store output files. |
|
| output\_dir | string | false | `".github/outputs"` | Directory to store output files. |
|
||||||
| output\_renamed\_files\_as\_deleted\_and\_added | string | false | `"false"` | Output renamed files as deleted <br>and added files. |
|
| output\_renamed\_files\_as\_deleted\_and\_added | string | false | `"false"` | Output renamed files as deleted <br>and added files. |
|
||||||
| path | string | false | `"."` | Specify a relative path under <br>`$GITHUB_WORKSPACE` to locate the repository. |
|
| path | string | false | `"."` | Specify a relative path under <br>`$GITHUB_WORKSPACE` to locate the repository. |
|
||||||
| quotepath | string | false | `"true"` | Use non-ascii characters to match <br>files and output the filenames <br>completely verbatim by setting this <br>to `false` |
|
| quotepath | string | false | `"true"` | Use non-ascii characters to match <br>files and output the filenames <br>completely verbatim by setting this <br>to `false` |
|
||||||
| recover\_deleted\_files | string | false | `"false"` | Recover deleted files. |
|
| recover\_deleted\_files | string | false | `"false"` | Recover deleted files. |
|
||||||
| recover\_deleted\_files\_to\_destination | string | false | | Recover deleted files to a <br>new destination directory, defaults to <br>the original location. |
|
| recover\_deleted\_files\_to\_destination | string | false | | Recover deleted files to a <br>new destination directory, defaults to <br>the original location. |
|
||||||
| separator | string | false | `" "` | Split character for output strings |
|
| separator | string | false | `" "` | Split character for output strings |
|
||||||
| sha | string | false | | Specify a different commit SHA <br>used for comparing changes |
|
| sha | string | false | | Specify a different commit SHA <br>used for comparing changes |
|
||||||
| since | string | false | | Get changed files for commits <br>whose timestamp is older than <br>the given time. |
|
| since | string | false | | Get changed files for commits <br>whose timestamp is older than <br>the given time. |
|
||||||
| since\_last\_remote\_commit | string | false | `"false"` | Use the last commit on <br>the remote branch as the <br>`base_sha`. Defaults to the last <br>non-merge commit on the target <br>branch for pull request events <br>and the previous remote commit <br>of the current branch for <br>push events. |
|
| since\_last\_remote\_commit | string | false | `"false"` | Use the last commit on <br>the remote branch as the <br>`base_sha`. Defaults to the last <br>non-merge commit on the target <br>branch for pull request events <br>and the previous remote commit <br>of the current branch for <br>push events. |
|
||||||
| token | string | false | `"${{ github.token }}"` | Github token used to fetch <br>changed files from Github's API. |
|
| skip\_initial\_fetch | string | false | `"false"` | Skip the initial fetch to <br>improve performance for shallow repositories. <br>**NOTE**: This could lead to <br>errors with missing history and <br>the intended use is limited <br>to when you've fetched the <br>history necessary to perform the <br>diff. |
|
||||||
| until | string | false | | Get changed files for commits <br>whose timestamp is earlier than <br>the given time. |
|
| token | string | false | `"${{ github.token }}"` | Github token used to fetch <br>changed files from Github's API. |
|
||||||
| write\_output\_files | string | false | `"false"` | Write outputs to the `output_dir` <br>defaults to `.github/outputs` folder. **NOTE:** <br>This creates a `.txt` file <br>by default and a `.json` <br>file if `json` is set <br>to `true`. |
|
| until | string | false | | Get changed files for commits <br>whose timestamp is earlier than <br>the given time. |
|
||||||
|
| write\_output\_files | string | false | `"false"` | Write outputs to the `output_dir` <br>defaults to `.github/outputs` folder. **NOTE:** <br>This creates a `.txt` file <br>by default and a `.json` <br>file if `json` is set <br>to `true`. |
|
||||||
|
|
||||||
<!-- AUTO-DOC-INPUT:END -->
|
<!-- AUTO-DOC-INPUT:END -->
|
||||||
|
|
||||||
@@ -368,7 +416,7 @@ The format of the version string is as follows:
|
|||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Get all changed files and using a comma separator</summary>
|
<summary>Get all changed files and use a comma separator</summary>
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
...
|
...
|
||||||
@@ -431,7 +479,7 @@ See [outputs](#outputs) for a list of all available outputs.
|
|||||||
```yaml
|
```yaml
|
||||||
...
|
...
|
||||||
|
|
||||||
- name: Get changed files and write the outputs to a txt file
|
- name: Get changed files and write the outputs to a Txt file
|
||||||
id: changed-files-write-output-files-txt
|
id: changed-files-write-output-files-txt
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
@@ -450,7 +498,7 @@ See [outputs](#outputs) for a list of all available outputs.
|
|||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
...
|
...
|
||||||
- name: Get changed files and write the outputs to a json file
|
- name: Get changed files and write the outputs to a JSON file
|
||||||
id: changed-files-write-output-files-json
|
id: changed-files-write-output-files-json
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
@@ -480,7 +528,7 @@ See [outputs](#outputs) for a list of all available outputs.
|
|||||||
*.png
|
*.png
|
||||||
!*.md
|
!*.md
|
||||||
test_directory
|
test_directory
|
||||||
**/*.sql
|
**.sql
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -503,7 +551,7 @@ See [inputs](#inputs) for more information.
|
|||||||
*.png
|
*.png
|
||||||
!*.md
|
!*.md
|
||||||
test_directory
|
test_directory
|
||||||
**/*.sql
|
**.sql
|
||||||
|
|
||||||
- name: Run step if any of the listed files above change
|
- name: Run step if any of the listed files above change
|
||||||
if: steps.changed-files-specific.outputs.any_changed == 'true'
|
if: steps.changed-files-specific.outputs.any_changed == 'true'
|
||||||
@@ -680,7 +728,7 @@ See [inputs](#inputs) for more information.
|
|||||||
</details>
|
</details>
|
||||||
|
|
||||||
<details>
|
<details>
|
||||||
<summary>Get all changed files with non äšćįí characters i.e (Filename in other languages)</summary>
|
<summary>Get all changed files with non-äšćįí characters i.e (Filename in other languages)</summary>
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
...
|
...
|
||||||
@@ -747,10 +795,10 @@ See [inputs](#inputs) for more information.
|
|||||||
- uses: nrwl/nx-set-shas@v3
|
- uses: nrwl/nx-set-shas@v3
|
||||||
id: last_successful_commit_pull_request
|
id: last_successful_commit_pull_request
|
||||||
with:
|
with:
|
||||||
main-branch-name: ${{ steps.branch-name.outputs.base_ref_branch }} # Get the last successful commit on master or main branch
|
main-branch-name: ${{ steps.branch-name.outputs.base_ref_branch }} # Get the last successful commit on the master or main branch
|
||||||
workflow_id: 'test.yml'
|
workflow_id: 'test.yml'
|
||||||
|
|
||||||
- name: Run changed-files with the commit of the last successful test workflow run on main
|
- name: Run changed-files with the commit of the last successful test workflow run on the main branch
|
||||||
id: changed-files-base-sha-pull-request
|
id: changed-files-base-sha-pull-request
|
||||||
uses: tj-actions/changed-files@v37
|
uses: tj-actions/changed-files@v37
|
||||||
with:
|
with:
|
||||||
@@ -791,7 +839,7 @@ See [inputs](#inputs) for more information.
|
|||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
...
|
...
|
||||||
- name: Run changed-files with json output
|
- name: Run changed-files with JSON output
|
||||||
id: changed-files-json
|
id: changed-files-json
|
||||||
uses: tj-actions/changed-files@v37
|
uses: tj-actions/changed-files@v37
|
||||||
with:
|
with:
|
||||||
@@ -826,7 +874,7 @@ See [inputs](#inputs) for more information.
|
|||||||
|
|
||||||
</details>
|
</details>
|
||||||
|
|
||||||
## Real world usage
|
## Real-world usage
|
||||||
|
|
||||||
* [vitejs/vite: uses tj-actions/changed-files to automate testing](https://github.com/vitejs/vite/blob/8da04227d6f818a8ad9efc0056101968037c2e36/.github/workflows/ci.yml#L61)
|
* [vitejs/vite: uses tj-actions/changed-files to automate testing](https://github.com/vitejs/vite/blob/8da04227d6f818a8ad9efc0056101968037c2e36/.github/workflows/ci.yml#L61)
|
||||||
|
|
||||||
@@ -842,6 +890,8 @@ See [inputs](#inputs) for more information.
|
|||||||
|
|
||||||
* [aws-doc-sdk-examples: uses tj-actions/changed-files to automate testing](https://github.com/awsdocs/aws-doc-sdk-examples/blob/2393723ef6b0cad9502f4852f5c72f7be58ca89d/.github/workflows/javascript.yml#L22)
|
* [aws-doc-sdk-examples: uses tj-actions/changed-files to automate testing](https://github.com/awsdocs/aws-doc-sdk-examples/blob/2393723ef6b0cad9502f4852f5c72f7be58ca89d/.github/workflows/javascript.yml#L22)
|
||||||
|
|
||||||
|
* [nhost: uses tj-actions/changed-files to automate testing based on changes detected](https://github.com/nhost/nhost/blob/main/.github/workflows/ci.yaml#L44-L48)
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
And many more...
|
And many more...
|
||||||
|
|||||||
@@ -124,6 +124,10 @@ inputs:
|
|||||||
description: "Depth of additional branch history fetched. **NOTE**: This can be adjusted to resolve errors with insufficient history."
|
description: "Depth of additional branch history fetched. **NOTE**: This can be adjusted to resolve errors with insufficient history."
|
||||||
required: false
|
required: false
|
||||||
default: "50"
|
default: "50"
|
||||||
|
skip_initial_fetch:
|
||||||
|
description: "Skip the initial fetch to improve performance for shallow repositories. **NOTE**: This could lead to errors with missing history and the intended use is limited to when you've fetched the history necessary to perform the diff."
|
||||||
|
required: false
|
||||||
|
default: "false"
|
||||||
since_last_remote_commit:
|
since_last_remote_commit:
|
||||||
description: "Use the last commit on the remote branch as the `base_sha`. Defaults to the last non-merge commit on the target branch for pull request events and the previous remote commit of the current branch for push events."
|
description: "Use the last commit on the remote branch as the `base_sha`. Defaults to the last non-merge commit on the target branch for pull request events and the previous remote commit of the current branch for push events."
|
||||||
required: false
|
required: false
|
||||||
|
|||||||
77
dist/index.js
generated
vendored
77
dist/index.js
generated
vendored
@@ -170,7 +170,7 @@ function* getChangeTypeFilesGenerator({ inputs, changedFiles, changeTypes }) {
|
|||||||
const getChangeTypeFiles = ({ inputs, changedFiles, changeTypes }) => __awaiter(void 0, void 0, void 0, function* () {
|
const getChangeTypeFiles = ({ inputs, changedFiles, changeTypes }) => __awaiter(void 0, void 0, void 0, function* () {
|
||||||
const files = [
|
const files = [
|
||||||
...new Set(getChangeTypeFilesGenerator({ inputs, changedFiles, changeTypes }))
|
...new Set(getChangeTypeFilesGenerator({ inputs, changedFiles, changeTypes }))
|
||||||
];
|
].filter(Boolean);
|
||||||
if (inputs.json) {
|
if (inputs.json) {
|
||||||
return {
|
return {
|
||||||
paths: (0, utils_1.jsonOutput)({ value: files, shouldEscape: inputs.escapeJson }),
|
paths: (0, utils_1.jsonOutput)({ value: files, shouldEscape: inputs.escapeJson }),
|
||||||
@@ -200,7 +200,7 @@ function* getAllChangeTypeFilesGenerator({ inputs, changedFiles }) {
|
|||||||
const getAllChangeTypeFiles = ({ inputs, changedFiles }) => __awaiter(void 0, void 0, void 0, function* () {
|
const getAllChangeTypeFiles = ({ inputs, changedFiles }) => __awaiter(void 0, void 0, void 0, function* () {
|
||||||
const files = [
|
const files = [
|
||||||
...new Set(getAllChangeTypeFilesGenerator({ inputs, changedFiles }))
|
...new Set(getAllChangeTypeFilesGenerator({ inputs, changedFiles }))
|
||||||
];
|
].filter(Boolean);
|
||||||
if (inputs.json) {
|
if (inputs.json) {
|
||||||
return {
|
return {
|
||||||
paths: (0, utils_1.jsonOutput)({ value: files, shouldEscape: inputs.escapeJson }),
|
paths: (0, utils_1.jsonOutput)({ value: files, shouldEscape: inputs.escapeJson }),
|
||||||
@@ -724,7 +724,7 @@ const getSHAForPushEvent = (inputs, env, workingDirectory, isShallow, hasSubmodu
|
|||||||
let targetBranch = env.GITHUB_REF_NAME;
|
let targetBranch = env.GITHUB_REF_NAME;
|
||||||
const currentBranch = targetBranch;
|
const currentBranch = targetBranch;
|
||||||
let initialCommit = false;
|
let initialCommit = false;
|
||||||
if (isShallow) {
|
if (isShallow && !inputs.skipInitialFetch) {
|
||||||
core.info('Repository is shallow, fetching more history...');
|
core.info('Repository is shallow, fetching more history...');
|
||||||
if (isTag) {
|
if (isTag) {
|
||||||
const sourceBranch = env.GITHUB_EVENT_BASE_REF.replace('refs/heads/', '') ||
|
const sourceBranch = env.GITHUB_EVENT_BASE_REF.replace('refs/heads/', '') ||
|
||||||
@@ -868,7 +868,7 @@ const getSHAForPullRequestEvent = (inputs, env, workingDirectory, isShallow, has
|
|||||||
if (inputs.sinceLastRemoteCommit) {
|
if (inputs.sinceLastRemoteCommit) {
|
||||||
targetBranch = currentBranch;
|
targetBranch = currentBranch;
|
||||||
}
|
}
|
||||||
if (isShallow) {
|
if (isShallow && !inputs.skipInitialFetch) {
|
||||||
core.info('Repository is shallow, fetching more history...');
|
core.info('Repository is shallow, fetching more history...');
|
||||||
let prFetchExitCode = yield (0, utils_1.gitFetch)({
|
let prFetchExitCode = yield (0, utils_1.gitFetch)({
|
||||||
cwd: workingDirectory,
|
cwd: workingDirectory,
|
||||||
@@ -978,7 +978,7 @@ const getSHAForPullRequestEvent = (inputs, env, workingDirectory, isShallow, has
|
|||||||
sha2: currentSha,
|
sha2: currentSha,
|
||||||
diff
|
diff
|
||||||
}))) {
|
}))) {
|
||||||
core.debug('Merge base is not in the local history, fetching remote target branch...');
|
core.info('Merge base is not in the local history, fetching remote target branch...');
|
||||||
for (let i = 1; i <= 10; i++) {
|
for (let i = 1; i <= 10; i++) {
|
||||||
yield (0, utils_1.gitFetch)({
|
yield (0, utils_1.gitFetch)({
|
||||||
cwd: workingDirectory,
|
cwd: workingDirectory,
|
||||||
@@ -999,8 +999,8 @@ const getSHAForPullRequestEvent = (inputs, env, workingDirectory, isShallow, has
|
|||||||
})) {
|
})) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
core.debug('Merge base is not in the local history, fetching remote target branch again...');
|
core.info('Merge base is not in the local history, fetching remote target branch again...');
|
||||||
core.debug(`Attempt ${i}/10`);
|
core.info(`Attempt ${i}/10`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1246,6 +1246,9 @@ const getInputs = () => {
|
|||||||
const recoverDeletedFilesToDestination = core.getInput('recover_deleted_files_to_destination', { required: false });
|
const recoverDeletedFilesToDestination = core.getInput('recover_deleted_files_to_destination', { required: false });
|
||||||
const token = core.getInput('token', { required: false });
|
const token = core.getInput('token', { required: false });
|
||||||
const apiUrl = core.getInput('api_url', { required: false });
|
const apiUrl = core.getInput('api_url', { required: false });
|
||||||
|
const skipInitialFetch = core.getBooleanInput('skip_initial_fetch', {
|
||||||
|
required: false
|
||||||
|
});
|
||||||
const inputs = {
|
const inputs = {
|
||||||
files,
|
files,
|
||||||
filesSeparator,
|
filesSeparator,
|
||||||
@@ -1285,7 +1288,8 @@ const getInputs = () => {
|
|||||||
outputDir,
|
outputDir,
|
||||||
outputRenamedFilesAsDeletedAndAdded,
|
outputRenamedFilesAsDeletedAndAdded,
|
||||||
token,
|
token,
|
||||||
apiUrl
|
apiUrl,
|
||||||
|
skipInitialFetch
|
||||||
};
|
};
|
||||||
if (fetchDepth) {
|
if (fetchDepth) {
|
||||||
inputs.fetchDepth = Math.max(parseInt(fetchDepth, 10), 2);
|
inputs.fetchDepth = Math.max(parseInt(fetchDepth, 10), 2);
|
||||||
@@ -1350,7 +1354,7 @@ const commitSha_1 = __nccwpck_require__(8613);
|
|||||||
const env_1 = __nccwpck_require__(9763);
|
const env_1 = __nccwpck_require__(9763);
|
||||||
const inputs_1 = __nccwpck_require__(6180);
|
const inputs_1 = __nccwpck_require__(6180);
|
||||||
const utils_1 = __nccwpck_require__(918);
|
const utils_1 = __nccwpck_require__(918);
|
||||||
const getChangedFilesFromLocalGit = ({ inputs, env, workingDirectory }) => __awaiter(void 0, void 0, void 0, function* () {
|
const getChangedFilesFromLocalGit = ({ inputs, env, workingDirectory, filePatterns, yamlFilePatterns }) => __awaiter(void 0, void 0, void 0, function* () {
|
||||||
var _a;
|
var _a;
|
||||||
yield (0, utils_1.verifyMinimumGitVersion)();
|
yield (0, utils_1.verifyMinimumGitVersion)();
|
||||||
let quotePathValue = 'on';
|
let quotePathValue = 'on';
|
||||||
@@ -1404,11 +1408,6 @@ const getChangedFilesFromLocalGit = ({ inputs, env, workingDirectory }) => __awa
|
|||||||
core.debug(`All diff files: ${JSON.stringify(allDiffFiles)}`);
|
core.debug(`All diff files: ${JSON.stringify(allDiffFiles)}`);
|
||||||
core.info('All Done!');
|
core.info('All Done!');
|
||||||
core.endGroup();
|
core.endGroup();
|
||||||
const filePatterns = yield (0, utils_1.getFilePatterns)({
|
|
||||||
inputs,
|
|
||||||
workingDirectory
|
|
||||||
});
|
|
||||||
core.debug(`File patterns: ${filePatterns}`);
|
|
||||||
if (filePatterns.length > 0) {
|
if (filePatterns.length > 0) {
|
||||||
core.startGroup('changed-files-patterns');
|
core.startGroup('changed-files-patterns');
|
||||||
yield (0, changedFilesOutput_1.setChangedFilesOutput)({
|
yield (0, changedFilesOutput_1.setChangedFilesOutput)({
|
||||||
@@ -1421,11 +1420,6 @@ const getChangedFilesFromLocalGit = ({ inputs, env, workingDirectory }) => __awa
|
|||||||
core.info('All Done!');
|
core.info('All Done!');
|
||||||
core.endGroup();
|
core.endGroup();
|
||||||
}
|
}
|
||||||
const yamlFilePatterns = yield (0, utils_1.getYamlFilePatterns)({
|
|
||||||
inputs,
|
|
||||||
workingDirectory
|
|
||||||
});
|
|
||||||
core.debug(`Yaml file patterns: ${JSON.stringify(yamlFilePatterns)}`);
|
|
||||||
if (Object.keys(yamlFilePatterns).length > 0) {
|
if (Object.keys(yamlFilePatterns).length > 0) {
|
||||||
for (const key of Object.keys(yamlFilePatterns)) {
|
for (const key of Object.keys(yamlFilePatterns)) {
|
||||||
core.startGroup(`changed-files-yaml-${key}`);
|
core.startGroup(`changed-files-yaml-${key}`);
|
||||||
@@ -1476,18 +1470,13 @@ const getChangedFilesFromLocalGit = ({ inputs, env, workingDirectory }) => __awa
|
|||||||
core.endGroup();
|
core.endGroup();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
const getChangedFilesFromRESTAPI = ({ inputs, env, workingDirectory }) => __awaiter(void 0, void 0, void 0, function* () {
|
const getChangedFilesFromRESTAPI = ({ inputs, env, workingDirectory, filePatterns, yamlFilePatterns }) => __awaiter(void 0, void 0, void 0, function* () {
|
||||||
const allDiffFiles = yield (0, changedFiles_1.getChangedFilesFromGithubAPI)({
|
const allDiffFiles = yield (0, changedFiles_1.getChangedFilesFromGithubAPI)({
|
||||||
inputs,
|
inputs,
|
||||||
env
|
env
|
||||||
});
|
});
|
||||||
core.debug(`All diff files: ${JSON.stringify(allDiffFiles)}`);
|
core.debug(`All diff files: ${JSON.stringify(allDiffFiles)}`);
|
||||||
core.info('All Done!');
|
core.info('All Done!');
|
||||||
const filePatterns = yield (0, utils_1.getFilePatterns)({
|
|
||||||
inputs,
|
|
||||||
workingDirectory
|
|
||||||
});
|
|
||||||
core.debug(`File patterns: ${filePatterns}`);
|
|
||||||
if (filePatterns.length > 0) {
|
if (filePatterns.length > 0) {
|
||||||
core.startGroup('changed-files-patterns');
|
core.startGroup('changed-files-patterns');
|
||||||
yield (0, changedFilesOutput_1.setChangedFilesOutput)({
|
yield (0, changedFilesOutput_1.setChangedFilesOutput)({
|
||||||
@@ -1499,11 +1488,6 @@ const getChangedFilesFromRESTAPI = ({ inputs, env, workingDirectory }) => __awai
|
|||||||
core.info('All Done!');
|
core.info('All Done!');
|
||||||
core.endGroup();
|
core.endGroup();
|
||||||
}
|
}
|
||||||
const yamlFilePatterns = yield (0, utils_1.getYamlFilePatterns)({
|
|
||||||
inputs,
|
|
||||||
workingDirectory
|
|
||||||
});
|
|
||||||
core.debug(`Yaml file patterns: ${JSON.stringify(yamlFilePatterns)}`);
|
|
||||||
if (Object.keys(yamlFilePatterns).length > 0) {
|
if (Object.keys(yamlFilePatterns).length > 0) {
|
||||||
for (const key of Object.keys(yamlFilePatterns)) {
|
for (const key of Object.keys(yamlFilePatterns)) {
|
||||||
core.startGroup(`changed-files-yaml-${key}`);
|
core.startGroup(`changed-files-yaml-${key}`);
|
||||||
@@ -1537,7 +1521,19 @@ function run() {
|
|||||||
const inputs = (0, inputs_1.getInputs)();
|
const inputs = (0, inputs_1.getInputs)();
|
||||||
core.debug(`Inputs: ${JSON.stringify(inputs, null, 2)}`);
|
core.debug(`Inputs: ${JSON.stringify(inputs, null, 2)}`);
|
||||||
const workingDirectory = path_1.default.resolve(env.GITHUB_WORKSPACE || process.cwd(), inputs.path);
|
const workingDirectory = path_1.default.resolve(env.GITHUB_WORKSPACE || process.cwd(), inputs.path);
|
||||||
|
core.debug(`Working directory: ${workingDirectory}`);
|
||||||
const hasGitDirectory = yield (0, utils_1.hasLocalGitDirectory)({ workingDirectory });
|
const hasGitDirectory = yield (0, utils_1.hasLocalGitDirectory)({ workingDirectory });
|
||||||
|
core.debug(`Has git directory: ${hasGitDirectory}`);
|
||||||
|
const filePatterns = yield (0, utils_1.getFilePatterns)({
|
||||||
|
inputs,
|
||||||
|
workingDirectory
|
||||||
|
});
|
||||||
|
core.debug(`File patterns: ${filePatterns}`);
|
||||||
|
const yamlFilePatterns = yield (0, utils_1.getYamlFilePatterns)({
|
||||||
|
inputs,
|
||||||
|
workingDirectory
|
||||||
|
});
|
||||||
|
core.debug(`Yaml file patterns: ${JSON.stringify(yamlFilePatterns)}`);
|
||||||
if (inputs.token &&
|
if (inputs.token &&
|
||||||
env.GITHUB_EVENT_PULL_REQUEST_NUMBER &&
|
env.GITHUB_EVENT_PULL_REQUEST_NUMBER &&
|
||||||
!hasGitDirectory) {
|
!hasGitDirectory) {
|
||||||
@@ -1557,7 +1553,13 @@ function run() {
|
|||||||
core.warning(`Input "${input}" is not supported when using GitHub's REST API to get changed files`);
|
core.warning(`Input "${input}" is not supported when using GitHub's REST API to get changed files`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
yield getChangedFilesFromRESTAPI({ inputs, env, workingDirectory });
|
yield getChangedFilesFromRESTAPI({
|
||||||
|
inputs,
|
||||||
|
env,
|
||||||
|
workingDirectory,
|
||||||
|
filePatterns,
|
||||||
|
yamlFilePatterns
|
||||||
|
});
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (!hasGitDirectory) {
|
if (!hasGitDirectory) {
|
||||||
@@ -1565,7 +1567,13 @@ function run() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
core.info('Using local .git directory');
|
core.info('Using local .git directory');
|
||||||
yield getChangedFilesFromLocalGit({ inputs, env, workingDirectory });
|
yield getChangedFilesFromLocalGit({
|
||||||
|
inputs,
|
||||||
|
env,
|
||||||
|
workingDirectory,
|
||||||
|
filePatterns,
|
||||||
|
yamlFilePatterns
|
||||||
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -29284,8 +29292,11 @@ function fixResponseChunkedTransferBadEnding(request, errorCallback) {
|
|||||||
|
|
||||||
if (headers['transfer-encoding'] === 'chunked' && !headers['content-length']) {
|
if (headers['transfer-encoding'] === 'chunked' && !headers['content-length']) {
|
||||||
response.once('close', function (hadError) {
|
response.once('close', function (hadError) {
|
||||||
|
// tests for socket presence, as in some situations the
|
||||||
|
// the 'socket' event is not triggered for the request
|
||||||
|
// (happens in deno), avoids `TypeError`
|
||||||
// if a data listener is still present we didn't end cleanly
|
// if a data listener is still present we didn't end cleanly
|
||||||
const hasDataListener = socket.listenerCount('data') > 0;
|
const hasDataListener = socket && socket.listenerCount('data') > 0;
|
||||||
|
|
||||||
if (hasDataListener && !hadError) {
|
if (hasDataListener && !hadError) {
|
||||||
const err = new Error('Premature close');
|
const err = new Error('Premature close');
|
||||||
|
|||||||
2
dist/index.js.map
generated
vendored
2
dist/index.js.map
generated
vendored
File diff suppressed because one or more lines are too long
40
package.json
40
package.json
@@ -32,30 +32,30 @@
|
|||||||
},
|
},
|
||||||
"homepage": "https://github.com/tj-actions/glob#readme",
|
"homepage": "https://github.com/tj-actions/glob#readme",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@actions/core": "1.10.0",
|
"@actions/core": "^1.10.0",
|
||||||
"@actions/exec": "1.1.1",
|
"@actions/exec": "^1.1.1",
|
||||||
"@actions/github": "5.1.1",
|
"@actions/github": "^5.1.1",
|
||||||
"lodash": "^4.17.15",
|
"@octokit/rest": "^19.0.13",
|
||||||
|
"lodash": "^4.17.21",
|
||||||
"micromatch": "^4.0.5",
|
"micromatch": "^4.0.5",
|
||||||
"yaml": "^2.3.1",
|
"yaml": "^2.3.1"
|
||||||
"@octokit/rest": "^19.0.7"
|
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/jest": "29.5.2",
|
"@types/jest": "^29.5.2",
|
||||||
"@types/lodash": "^4.14.195",
|
"@types/lodash": "^4.14.195",
|
||||||
"@types/micromatch": "^4.0.2",
|
"@types/micromatch": "^4.0.2",
|
||||||
"@types/node": "20.3.1",
|
"@types/node": "^20.3.2",
|
||||||
"@types/uuid": "9.0.2",
|
"@types/uuid": "^9.0.2",
|
||||||
"@typescript-eslint/eslint-plugin": "5.60.0",
|
"@typescript-eslint/eslint-plugin": "^6.0.0",
|
||||||
"@typescript-eslint/parser": "5.60.0",
|
"@typescript-eslint/parser": "^6.0.0",
|
||||||
"@vercel/ncc": "0.36.1",
|
"@vercel/ncc": "^0.36.1",
|
||||||
"eslint": "8.43.0",
|
"eslint": "^8.43.0",
|
||||||
"eslint-plugin-github": "4.8.0",
|
"eslint-plugin-github": "^4.8.0",
|
||||||
"eslint-plugin-jest": "27.2.2",
|
"eslint-plugin-jest": "^27.2.2",
|
||||||
"eslint-plugin-prettier": "^4.2.1",
|
"eslint-plugin-prettier": "^5.0.0-alpha.2",
|
||||||
"jest": "29.5.0",
|
"jest": "^29.5.0",
|
||||||
"prettier": "2.8.8",
|
"prettier": "^3.0.0",
|
||||||
"ts-jest": "29.1.0",
|
"ts-jest": "^29.1.0",
|
||||||
"typescript": "5.1.3"
|
"typescript": "^5.1.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,8 +3,8 @@
|
|||||||
"config:base"
|
"config:base"
|
||||||
],
|
],
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"prHourlyLimit": 30,
|
"prHourlyLimit": 10,
|
||||||
"prConcurrentLimit": 10,
|
"prConcurrentLimit": 5,
|
||||||
"rebaseWhen": "behind-base-branch",
|
"rebaseWhen": "behind-base-branch",
|
||||||
"addLabels": [
|
"addLabels": [
|
||||||
"dependencies",
|
"dependencies",
|
||||||
@@ -20,13 +20,21 @@
|
|||||||
"enabled": true,
|
"enabled": true,
|
||||||
"automerge": true
|
"automerge": true
|
||||||
},
|
},
|
||||||
|
"nvm": {
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
"packageRules": [
|
"packageRules": [
|
||||||
{
|
{
|
||||||
"matchUpdateTypes": ["minor", "patch", "pin", "digest"],
|
"matchUpdateTypes": [
|
||||||
|
"minor",
|
||||||
|
"patch",
|
||||||
|
"pin",
|
||||||
|
"digest"
|
||||||
|
],
|
||||||
"automerge": true,
|
"automerge": true,
|
||||||
"rebaseWhen": "behind-base-branch",
|
"rebaseWhen": "behind-base-branch",
|
||||||
"addLabels": [
|
"addLabels": [
|
||||||
"automerge"
|
"merge when passing"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -34,10 +42,15 @@
|
|||||||
"matchLanguages": [
|
"matchLanguages": [
|
||||||
"docker"
|
"docker"
|
||||||
],
|
],
|
||||||
"matchUpdateTypes": ["minor", "patch", "pin", "digest"],
|
"matchUpdateTypes": [
|
||||||
|
"minor",
|
||||||
|
"patch",
|
||||||
|
"pin",
|
||||||
|
"digest"
|
||||||
|
],
|
||||||
"rebaseWhen": "behind-base-branch",
|
"rebaseWhen": "behind-base-branch",
|
||||||
"addLabels": [
|
"addLabels": [
|
||||||
"automerge"
|
"merge when passing"
|
||||||
],
|
],
|
||||||
"automerge": true
|
"automerge": true
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -192,7 +192,7 @@ export const getChangeTypeFiles = async ({
|
|||||||
}): Promise<{paths: string; count: string}> => {
|
}): Promise<{paths: string; count: string}> => {
|
||||||
const files = [
|
const files = [
|
||||||
...new Set(getChangeTypeFilesGenerator({inputs, changedFiles, changeTypes}))
|
...new Set(getChangeTypeFilesGenerator({inputs, changedFiles, changeTypes}))
|
||||||
]
|
].filter(Boolean)
|
||||||
|
|
||||||
if (inputs.json) {
|
if (inputs.json) {
|
||||||
return {
|
return {
|
||||||
@@ -236,7 +236,7 @@ export const getAllChangeTypeFiles = async ({
|
|||||||
}): Promise<{paths: string; count: string}> => {
|
}): Promise<{paths: string; count: string}> => {
|
||||||
const files = [
|
const files = [
|
||||||
...new Set(getAllChangeTypeFilesGenerator({inputs, changedFiles}))
|
...new Set(getAllChangeTypeFilesGenerator({inputs, changedFiles}))
|
||||||
]
|
].filter(Boolean)
|
||||||
|
|
||||||
if (inputs.json) {
|
if (inputs.json) {
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -92,7 +92,7 @@ export const getSHAForPushEvent = async (
|
|||||||
const currentBranch = targetBranch
|
const currentBranch = targetBranch
|
||||||
let initialCommit = false
|
let initialCommit = false
|
||||||
|
|
||||||
if (isShallow) {
|
if (isShallow && !inputs.skipInitialFetch) {
|
||||||
core.info('Repository is shallow, fetching more history...')
|
core.info('Repository is shallow, fetching more history...')
|
||||||
|
|
||||||
if (isTag) {
|
if (isTag) {
|
||||||
@@ -271,7 +271,7 @@ export const getSHAForPullRequestEvent = async (
|
|||||||
targetBranch = currentBranch
|
targetBranch = currentBranch
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isShallow) {
|
if (isShallow && !inputs.skipInitialFetch) {
|
||||||
core.info('Repository is shallow, fetching more history...')
|
core.info('Repository is shallow, fetching more history...')
|
||||||
|
|
||||||
let prFetchExitCode = await gitFetch({
|
let prFetchExitCode = await gitFetch({
|
||||||
@@ -411,7 +411,7 @@ export const getSHAForPullRequestEvent = async (
|
|||||||
diff
|
diff
|
||||||
}))
|
}))
|
||||||
) {
|
) {
|
||||||
core.debug(
|
core.info(
|
||||||
'Merge base is not in the local history, fetching remote target branch...'
|
'Merge base is not in the local history, fetching remote target branch...'
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -439,10 +439,10 @@ export const getSHAForPullRequestEvent = async (
|
|||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
core.debug(
|
core.info(
|
||||||
'Merge base is not in the local history, fetching remote target branch again...'
|
'Merge base is not in the local history, fetching remote target branch again...'
|
||||||
)
|
)
|
||||||
core.debug(`Attempt ${i}/10`)
|
core.info(`Attempt ${i}/10`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ export type Inputs = {
|
|||||||
recoverDeletedFilesToDestination: string
|
recoverDeletedFilesToDestination: string
|
||||||
token: string
|
token: string
|
||||||
apiUrl: string
|
apiUrl: string
|
||||||
|
skipInitialFetch: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
export const getInputs = (): Inputs => {
|
export const getInputs = (): Inputs => {
|
||||||
@@ -154,6 +155,9 @@ export const getInputs = (): Inputs => {
|
|||||||
)
|
)
|
||||||
const token = core.getInput('token', {required: false})
|
const token = core.getInput('token', {required: false})
|
||||||
const apiUrl = core.getInput('api_url', {required: false})
|
const apiUrl = core.getInput('api_url', {required: false})
|
||||||
|
const skipInitialFetch = core.getBooleanInput('skip_initial_fetch', {
|
||||||
|
required: false
|
||||||
|
})
|
||||||
|
|
||||||
const inputs: Inputs = {
|
const inputs: Inputs = {
|
||||||
files,
|
files,
|
||||||
@@ -194,7 +198,8 @@ export const getInputs = (): Inputs => {
|
|||||||
outputDir,
|
outputDir,
|
||||||
outputRenamedFilesAsDeletedAndAdded,
|
outputRenamedFilesAsDeletedAndAdded,
|
||||||
token,
|
token,
|
||||||
apiUrl
|
apiUrl,
|
||||||
|
skipInitialFetch
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fetchDepth) {
|
if (fetchDepth) {
|
||||||
|
|||||||
69
src/main.ts
69
src/main.ts
@@ -28,11 +28,15 @@ import {
|
|||||||
const getChangedFilesFromLocalGit = async ({
|
const getChangedFilesFromLocalGit = async ({
|
||||||
inputs,
|
inputs,
|
||||||
env,
|
env,
|
||||||
workingDirectory
|
workingDirectory,
|
||||||
|
filePatterns,
|
||||||
|
yamlFilePatterns
|
||||||
}: {
|
}: {
|
||||||
inputs: Inputs
|
inputs: Inputs
|
||||||
env: Env
|
env: Env
|
||||||
workingDirectory: string
|
workingDirectory: string
|
||||||
|
filePatterns: string[]
|
||||||
|
yamlFilePatterns: Record<string, string[]>
|
||||||
}): Promise<void> => {
|
}): Promise<void> => {
|
||||||
await verifyMinimumGitVersion()
|
await verifyMinimumGitVersion()
|
||||||
|
|
||||||
@@ -120,12 +124,6 @@ const getChangedFilesFromLocalGit = async ({
|
|||||||
core.info('All Done!')
|
core.info('All Done!')
|
||||||
core.endGroup()
|
core.endGroup()
|
||||||
|
|
||||||
const filePatterns = await getFilePatterns({
|
|
||||||
inputs,
|
|
||||||
workingDirectory
|
|
||||||
})
|
|
||||||
core.debug(`File patterns: ${filePatterns}`)
|
|
||||||
|
|
||||||
if (filePatterns.length > 0) {
|
if (filePatterns.length > 0) {
|
||||||
core.startGroup('changed-files-patterns')
|
core.startGroup('changed-files-patterns')
|
||||||
await setChangedFilesOutput({
|
await setChangedFilesOutput({
|
||||||
@@ -139,12 +137,6 @@ const getChangedFilesFromLocalGit = async ({
|
|||||||
core.endGroup()
|
core.endGroup()
|
||||||
}
|
}
|
||||||
|
|
||||||
const yamlFilePatterns = await getYamlFilePatterns({
|
|
||||||
inputs,
|
|
||||||
workingDirectory
|
|
||||||
})
|
|
||||||
core.debug(`Yaml file patterns: ${JSON.stringify(yamlFilePatterns)}`)
|
|
||||||
|
|
||||||
if (Object.keys(yamlFilePatterns).length > 0) {
|
if (Object.keys(yamlFilePatterns).length > 0) {
|
||||||
for (const key of Object.keys(yamlFilePatterns)) {
|
for (const key of Object.keys(yamlFilePatterns)) {
|
||||||
core.startGroup(`changed-files-yaml-${key}`)
|
core.startGroup(`changed-files-yaml-${key}`)
|
||||||
@@ -201,11 +193,15 @@ const getChangedFilesFromLocalGit = async ({
|
|||||||
const getChangedFilesFromRESTAPI = async ({
|
const getChangedFilesFromRESTAPI = async ({
|
||||||
inputs,
|
inputs,
|
||||||
env,
|
env,
|
||||||
workingDirectory
|
workingDirectory,
|
||||||
|
filePatterns,
|
||||||
|
yamlFilePatterns
|
||||||
}: {
|
}: {
|
||||||
inputs: Inputs
|
inputs: Inputs
|
||||||
env: Env
|
env: Env
|
||||||
workingDirectory: string
|
workingDirectory: string
|
||||||
|
filePatterns: string[]
|
||||||
|
yamlFilePatterns: Record<string, string[]>
|
||||||
}): Promise<void> => {
|
}): Promise<void> => {
|
||||||
const allDiffFiles = await getChangedFilesFromGithubAPI({
|
const allDiffFiles = await getChangedFilesFromGithubAPI({
|
||||||
inputs,
|
inputs,
|
||||||
@@ -214,12 +210,6 @@ const getChangedFilesFromRESTAPI = async ({
|
|||||||
core.debug(`All diff files: ${JSON.stringify(allDiffFiles)}`)
|
core.debug(`All diff files: ${JSON.stringify(allDiffFiles)}`)
|
||||||
core.info('All Done!')
|
core.info('All Done!')
|
||||||
|
|
||||||
const filePatterns = await getFilePatterns({
|
|
||||||
inputs,
|
|
||||||
workingDirectory
|
|
||||||
})
|
|
||||||
core.debug(`File patterns: ${filePatterns}`)
|
|
||||||
|
|
||||||
if (filePatterns.length > 0) {
|
if (filePatterns.length > 0) {
|
||||||
core.startGroup('changed-files-patterns')
|
core.startGroup('changed-files-patterns')
|
||||||
await setChangedFilesOutput({
|
await setChangedFilesOutput({
|
||||||
@@ -232,12 +222,6 @@ const getChangedFilesFromRESTAPI = async ({
|
|||||||
core.endGroup()
|
core.endGroup()
|
||||||
}
|
}
|
||||||
|
|
||||||
const yamlFilePatterns = await getYamlFilePatterns({
|
|
||||||
inputs,
|
|
||||||
workingDirectory
|
|
||||||
})
|
|
||||||
core.debug(`Yaml file patterns: ${JSON.stringify(yamlFilePatterns)}`)
|
|
||||||
|
|
||||||
if (Object.keys(yamlFilePatterns).length > 0) {
|
if (Object.keys(yamlFilePatterns).length > 0) {
|
||||||
for (const key of Object.keys(yamlFilePatterns)) {
|
for (const key of Object.keys(yamlFilePatterns)) {
|
||||||
core.startGroup(`changed-files-yaml-${key}`)
|
core.startGroup(`changed-files-yaml-${key}`)
|
||||||
@@ -270,13 +254,30 @@ export async function run(): Promise<void> {
|
|||||||
|
|
||||||
const env = await getEnv()
|
const env = await getEnv()
|
||||||
core.debug(`Env: ${JSON.stringify(env, null, 2)}`)
|
core.debug(`Env: ${JSON.stringify(env, null, 2)}`)
|
||||||
|
|
||||||
const inputs = getInputs()
|
const inputs = getInputs()
|
||||||
core.debug(`Inputs: ${JSON.stringify(inputs, null, 2)}`)
|
core.debug(`Inputs: ${JSON.stringify(inputs, null, 2)}`)
|
||||||
|
|
||||||
const workingDirectory = path.resolve(
|
const workingDirectory = path.resolve(
|
||||||
env.GITHUB_WORKSPACE || process.cwd(),
|
env.GITHUB_WORKSPACE || process.cwd(),
|
||||||
inputs.path
|
inputs.path
|
||||||
)
|
)
|
||||||
|
core.debug(`Working directory: ${workingDirectory}`)
|
||||||
|
|
||||||
const hasGitDirectory = await hasLocalGitDirectory({workingDirectory})
|
const hasGitDirectory = await hasLocalGitDirectory({workingDirectory})
|
||||||
|
core.debug(`Has git directory: ${hasGitDirectory}`)
|
||||||
|
|
||||||
|
const filePatterns = await getFilePatterns({
|
||||||
|
inputs,
|
||||||
|
workingDirectory
|
||||||
|
})
|
||||||
|
core.debug(`File patterns: ${filePatterns}`)
|
||||||
|
|
||||||
|
const yamlFilePatterns = await getYamlFilePatterns({
|
||||||
|
inputs,
|
||||||
|
workingDirectory
|
||||||
|
})
|
||||||
|
core.debug(`Yaml file patterns: ${JSON.stringify(yamlFilePatterns)}`)
|
||||||
|
|
||||||
if (
|
if (
|
||||||
inputs.token &&
|
inputs.token &&
|
||||||
@@ -302,7 +303,13 @@ export async function run(): Promise<void> {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
await getChangedFilesFromRESTAPI({inputs, env, workingDirectory})
|
await getChangedFilesFromRESTAPI({
|
||||||
|
inputs,
|
||||||
|
env,
|
||||||
|
workingDirectory,
|
||||||
|
filePatterns,
|
||||||
|
yamlFilePatterns
|
||||||
|
})
|
||||||
} else {
|
} else {
|
||||||
if (!hasGitDirectory) {
|
if (!hasGitDirectory) {
|
||||||
core.setFailed(
|
core.setFailed(
|
||||||
@@ -312,7 +319,13 @@ export async function run(): Promise<void> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
core.info('Using local .git directory')
|
core.info('Using local .git directory')
|
||||||
await getChangedFilesFromLocalGit({inputs, env, workingDirectory})
|
await getChangedFilesFromLocalGit({
|
||||||
|
inputs,
|
||||||
|
env,
|
||||||
|
workingDirectory,
|
||||||
|
filePatterns,
|
||||||
|
yamlFilePatterns
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Submodule test/demo updated: 83ccca9b63...e168fac86c
Reference in New Issue
Block a user