Compare commits

..

24 Commits

Author SHA1 Message Date
tj-actions[bot]
87e23c4c79 Updated README.md (#1354)
Co-authored-by: repo-ranger[bot] <repo-ranger[bot]@users.noreply.github.com>
2023-07-09 09:35:22 +00:00
Tonye Jack
2f49eb9ee1 feat: add support for skipping initial fetch (#1353)
Co-authored-by: GitHub Action <action@github.com>
2023-07-09 09:19:14 +00:00
Tonye Jack
00b3d3d9e7 Update README.md 2023-07-09 02:54:05 -06:00
dependabot[bot]
19193bdb26 chore(deps-dev): bump prettier from 2.8.8 to 3.0.0 (#1345)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tonye Jack <jtonye@ymail.com>
2023-07-09 08:46:27 +00:00
renovate[bot]
d12b5fc2ab chore(deps): update dependency @types/node to v20.4.1 (#1351)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-08 01:31:42 +00:00
renovate[bot]
338f354106 chore(deps): update dependency jest to v29.6.1 (#1350)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-06 16:06:00 +00:00
Tonye Jack
626a6b7213 Update README.md 2023-07-06 09:34:48 -06:00
renovate[bot]
090f90127a chore(deps): lock file maintenance (#1349)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-06 00:54:01 +00:00
dependabot[bot]
598640f3be chore(deps-dev): bump @types/node from 20.3.3 to 20.4.0 (#1348)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-05 23:47:02 +00:00
Tonye Jack
7ee3290f25 Update dependabot.yml 2023-07-05 17:12:18 -06:00
Tonye Jack
e9eccdd473 Updated renovate.json 2023-07-05 12:20:56 -06:00
Tonye Jack
6dc8c796c9 Update dependabot.yml 2023-07-05 12:00:16 -06:00
Tonye Jack
d1028b2eb8 Deleted .github/workflows/auto-merge.yml 2023-07-05 11:57:34 -06:00
renovate[bot]
0e24cebad0 chore(deps): update actions/setup-node action to v3.7.0 (#1344)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-05 17:07:42 +00:00
renovate[bot]
d8f8ad9a74 chore(deps): lock file maintenance (#1342)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-05 01:22:00 +00:00
renovate[bot]
47a703e935 chore(deps): update dependency jest to v29.6.0 (#1341)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-04 17:30:37 +00:00
Tonye Jack
742b6417b4 chore: update filter pattern (#1340) 2023-07-03 15:30:44 -06:00
renovate[bot]
af9376f801 chore(deps): update typescript-eslint monorepo to v5.61.0 (#1339)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-03 19:47:32 +00:00
renovate[bot]
adaff22ded chore(deps): lock file maintenance (#1338)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-03 00:32:10 +00:00
renovate[bot]
2cd4de3431 chore(deps): update dependency eslint to v8.44.0 (#1337)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-01 05:44:33 +00:00
renovate[bot]
b199521773 chore(deps): update dependency @types/node to v20.3.3 (#1336)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-07-01 05:19:19 +00:00
renovate[bot]
aecc5ebeee chore(deps): update dependency ts-jest to v29.1.1 (#1333)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-06-30 11:08:45 +00:00
tj-actions[bot]
630aa37bbd Upgraded to v37.0.5 (#1332)
Co-authored-by: jackton1 <jackton1@users.noreply.github.com>
Co-authored-by: repo-ranger[bot] <39074581+repo-ranger[bot]@users.noreply.github.com>
2023-06-29 21:21:56 +00:00
renovate[bot]
c060576a37 chore(deps): lock file maintenance (#1331)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: GitHub Action <action@github.com>
2023-06-29 21:06:16 +00:00
15 changed files with 850 additions and 576 deletions

View File

@@ -1,7 +1,8 @@
{
"plugins": [
"jest",
"@typescript-eslint"
"@typescript-eslint",
"github"
],
"extends": [
"plugin:github/recommended"

View File

@@ -1,7 +1,17 @@
version: 2
updates:
- package-ecosystem: npm
directory: "/"
schedule:
interval: daily
open-pull-requests-limit: 10
versioning-strategy: widen
labels:
- "merge when passing"
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: daily
open-pull-requests-limit: 10
labels:
- "merge when passing"

View File

@@ -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: ""

View File

@@ -51,7 +51,7 @@ jobs:
repository: ${{ github.event.pull_request.head.repo.full_name }}
- name: Use Node.js 16.x
uses: actions/setup-node@v3.6.0
uses: actions/setup-node@v3.7.0
with:
cache: 'yarn'
node-version: '16.x'

View File

@@ -1,5 +1,30 @@
# Changelog
# [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

View File

@@ -19,7 +19,7 @@
## 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.
Github action used to 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.
## Table of contents
@@ -121,11 +121,11 @@ jobs:
echo "$file was changed"
done
# -------------------------------------------------------------------------------------------------------------------------------------
# ------------------------------------------------------------------------------------------------------------------------------------------------
# Using local .git directory
# -------------------------------------------------------------------------------------------------------------------------------------
# Event `pull_request`: Compare the last commit of main or last remote commit of the PR branch -> to the current commit of a PR branch.
# -------------------------------------------------------------------------------------------------------------------------------------
# ------------------------------------------------------------------------------------------------------------------------------------------------
# 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.
# ------------------------------------------------------------------------------------------------------------------------------------------------
job2:
runs-on: ubuntu-latest # windows-latest | macos-latest
name: Test changed-files
@@ -369,6 +369,7 @@ Support this project with a :star:
| 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\_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. |
| skip\_initial\_fetch | string | false | `"false"` | Skip the initial fetch to <br>improve performance. |
| token | string | false | `"${{ github.token }}"` | Github token used to fetch <br>changed files from Github's API. |
| 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`. |
@@ -515,7 +516,7 @@ See [outputs](#outputs) for a list of all available outputs.
*.png
!*.md
test_directory
**/*.sql
**.sql
...
```
@@ -538,7 +539,7 @@ See [inputs](#inputs) for more information.
*.png
!*.md
test_directory
**/*.sql
**.sql
- name: Run step if any of the listed files above change
if: steps.changed-files-specific.outputs.any_changed == 'true'

View File

@@ -124,6 +124,10 @@ inputs:
description: "Depth of additional branch history fetched. **NOTE**: This can be adjusted to resolve errors with insufficient history."
required: false
default: "50"
skip_initial_fetch:
description: "Skip the initial fetch to improve performance."
required: false
default: "false"
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."
required: false

67
dist/index.js generated vendored
View File

@@ -724,7 +724,7 @@ const getSHAForPushEvent = (inputs, env, workingDirectory, isShallow, hasSubmodu
let targetBranch = env.GITHUB_REF_NAME;
const currentBranch = targetBranch;
let initialCommit = false;
if (isShallow) {
if (isShallow && !inputs.skipInitialFetch) {
core.info('Repository is shallow, fetching more history...');
if (isTag) {
const sourceBranch = env.GITHUB_EVENT_BASE_REF.replace('refs/heads/', '') ||
@@ -868,7 +868,7 @@ const getSHAForPullRequestEvent = (inputs, env, workingDirectory, isShallow, has
if (inputs.sinceLastRemoteCommit) {
targetBranch = currentBranch;
}
if (isShallow) {
if (isShallow && !inputs.skipInitialFetch) {
core.info('Repository is shallow, fetching more history...');
let prFetchExitCode = yield (0, utils_1.gitFetch)({
cwd: workingDirectory,
@@ -1246,6 +1246,9 @@ const getInputs = () => {
const recoverDeletedFilesToDestination = core.getInput('recover_deleted_files_to_destination', { required: false });
const token = core.getInput('token', { required: false });
const apiUrl = core.getInput('api_url', { required: false });
const skipInitialFetch = core.getBooleanInput('skip_initial_fetch', {
required: false
});
const inputs = {
files,
filesSeparator,
@@ -1285,7 +1288,8 @@ const getInputs = () => {
outputDir,
outputRenamedFilesAsDeletedAndAdded,
token,
apiUrl
apiUrl,
skipInitialFetch
};
if (fetchDepth) {
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 inputs_1 = __nccwpck_require__(6180);
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;
yield (0, utils_1.verifyMinimumGitVersion)();
let quotePathValue = 'on';
@@ -1404,11 +1408,6 @@ const getChangedFilesFromLocalGit = ({ inputs, env, workingDirectory }) => __awa
core.debug(`All diff files: ${JSON.stringify(allDiffFiles)}`);
core.info('All Done!');
core.endGroup();
const filePatterns = yield (0, utils_1.getFilePatterns)({
inputs,
workingDirectory
});
core.debug(`File patterns: ${filePatterns}`);
if (filePatterns.length > 0) {
core.startGroup('changed-files-patterns');
yield (0, changedFilesOutput_1.setChangedFilesOutput)({
@@ -1421,11 +1420,6 @@ const getChangedFilesFromLocalGit = ({ inputs, env, workingDirectory }) => __awa
core.info('All Done!');
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) {
for (const key of Object.keys(yamlFilePatterns)) {
core.startGroup(`changed-files-yaml-${key}`);
@@ -1476,18 +1470,13 @@ const getChangedFilesFromLocalGit = ({ inputs, env, workingDirectory }) => __awa
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)({
inputs,
env
});
core.debug(`All diff files: ${JSON.stringify(allDiffFiles)}`);
core.info('All Done!');
const filePatterns = yield (0, utils_1.getFilePatterns)({
inputs,
workingDirectory
});
core.debug(`File patterns: ${filePatterns}`);
if (filePatterns.length > 0) {
core.startGroup('changed-files-patterns');
yield (0, changedFilesOutput_1.setChangedFilesOutput)({
@@ -1499,11 +1488,6 @@ const getChangedFilesFromRESTAPI = ({ inputs, env, workingDirectory }) => __awai
core.info('All Done!');
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) {
for (const key of Object.keys(yamlFilePatterns)) {
core.startGroup(`changed-files-yaml-${key}`);
@@ -1537,7 +1521,19 @@ function run() {
const inputs = (0, inputs_1.getInputs)();
core.debug(`Inputs: ${JSON.stringify(inputs, null, 2)}`);
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 });
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 &&
env.GITHUB_EVENT_PULL_REQUEST_NUMBER &&
!hasGitDirectory) {
@@ -1557,7 +1553,13 @@ function run() {
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 {
if (!hasGitDirectory) {
@@ -1565,7 +1567,13 @@ function run() {
return;
}
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']) {
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
const hasDataListener = socket.listenerCount('data') > 0;
const hasDataListener = socket && socket.listenerCount('data') > 0;
if (hasDataListener && !hadError) {
const err = new Error('Premature close');

2
dist/index.js.map generated vendored

File diff suppressed because one or more lines are too long

View File

@@ -35,10 +35,10 @@
"@actions/core": "^1.10.0",
"@actions/exec": "^1.1.1",
"@actions/github": "^5.1.1",
"@octokit/rest": "^19.0.13",
"lodash": "^4.17.21",
"micromatch": "^4.0.5",
"yaml": "^2.3.1",
"@octokit/rest": "^19.0.13"
"yaml": "^2.3.1"
},
"devDependencies": {
"@types/jest": "^29.5.2",
@@ -52,9 +52,9 @@
"eslint": "^8.43.0",
"eslint-plugin-github": "^4.8.0",
"eslint-plugin-jest": "^27.2.2",
"eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-prettier": "^5.0.0-alpha.2",
"jest": "^29.5.0",
"prettier": "^2.8.8",
"prettier": "^3.0.0",
"ts-jest": "^29.1.0",
"typescript": "^5.1.3"
}

View File

@@ -3,8 +3,8 @@
"config:base"
],
"enabled": true,
"prHourlyLimit": 30,
"prConcurrentLimit": 10,
"prHourlyLimit": 10,
"prConcurrentLimit": 5,
"rebaseWhen": "behind-base-branch",
"addLabels": [
"dependencies",
@@ -20,13 +20,21 @@
"enabled": true,
"automerge": true
},
"nvm": {
"enabled": false
},
"packageRules": [
{
"matchUpdateTypes": ["minor", "patch", "pin", "digest"],
"matchUpdateTypes": [
"minor",
"patch",
"pin",
"digest"
],
"automerge": true,
"rebaseWhen": "behind-base-branch",
"addLabels": [
"automerge"
"merge when passing"
]
},
{
@@ -34,10 +42,15 @@
"matchLanguages": [
"docker"
],
"matchUpdateTypes": ["minor", "patch", "pin", "digest"],
"matchUpdateTypes": [
"minor",
"patch",
"pin",
"digest"
],
"rebaseWhen": "behind-base-branch",
"addLabels": [
"automerge"
"merge when passing"
],
"automerge": true
}

View File

@@ -92,7 +92,7 @@ export const getSHAForPushEvent = async (
const currentBranch = targetBranch
let initialCommit = false
if (isShallow) {
if (isShallow && !inputs.skipInitialFetch) {
core.info('Repository is shallow, fetching more history...')
if (isTag) {
@@ -271,7 +271,7 @@ export const getSHAForPullRequestEvent = async (
targetBranch = currentBranch
}
if (isShallow) {
if (isShallow && !inputs.skipInitialFetch) {
core.info('Repository is shallow, fetching more history...')
let prFetchExitCode = await gitFetch({

View File

@@ -40,6 +40,7 @@ export type Inputs = {
recoverDeletedFilesToDestination: string
token: string
apiUrl: string
skipInitialFetch: boolean
}
export const getInputs = (): Inputs => {
@@ -154,6 +155,9 @@ export const getInputs = (): Inputs => {
)
const token = core.getInput('token', {required: false})
const apiUrl = core.getInput('api_url', {required: false})
const skipInitialFetch = core.getBooleanInput('skip_initial_fetch', {
required: false
})
const inputs: Inputs = {
files,
@@ -194,7 +198,8 @@ export const getInputs = (): Inputs => {
outputDir,
outputRenamedFilesAsDeletedAndAdded,
token,
apiUrl
apiUrl,
skipInitialFetch
}
if (fetchDepth) {

View File

@@ -28,11 +28,15 @@ import {
const getChangedFilesFromLocalGit = async ({
inputs,
env,
workingDirectory
workingDirectory,
filePatterns,
yamlFilePatterns
}: {
inputs: Inputs
env: Env
workingDirectory: string
filePatterns: string[]
yamlFilePatterns: Record<string, string[]>
}): Promise<void> => {
await verifyMinimumGitVersion()
@@ -120,12 +124,6 @@ const getChangedFilesFromLocalGit = async ({
core.info('All Done!')
core.endGroup()
const filePatterns = await getFilePatterns({
inputs,
workingDirectory
})
core.debug(`File patterns: ${filePatterns}`)
if (filePatterns.length > 0) {
core.startGroup('changed-files-patterns')
await setChangedFilesOutput({
@@ -139,12 +137,6 @@ const getChangedFilesFromLocalGit = async ({
core.endGroup()
}
const yamlFilePatterns = await getYamlFilePatterns({
inputs,
workingDirectory
})
core.debug(`Yaml file patterns: ${JSON.stringify(yamlFilePatterns)}`)
if (Object.keys(yamlFilePatterns).length > 0) {
for (const key of Object.keys(yamlFilePatterns)) {
core.startGroup(`changed-files-yaml-${key}`)
@@ -201,11 +193,15 @@ const getChangedFilesFromLocalGit = async ({
const getChangedFilesFromRESTAPI = async ({
inputs,
env,
workingDirectory
workingDirectory,
filePatterns,
yamlFilePatterns
}: {
inputs: Inputs
env: Env
workingDirectory: string
filePatterns: string[]
yamlFilePatterns: Record<string, string[]>
}): Promise<void> => {
const allDiffFiles = await getChangedFilesFromGithubAPI({
inputs,
@@ -214,12 +210,6 @@ const getChangedFilesFromRESTAPI = async ({
core.debug(`All diff files: ${JSON.stringify(allDiffFiles)}`)
core.info('All Done!')
const filePatterns = await getFilePatterns({
inputs,
workingDirectory
})
core.debug(`File patterns: ${filePatterns}`)
if (filePatterns.length > 0) {
core.startGroup('changed-files-patterns')
await setChangedFilesOutput({
@@ -232,12 +222,6 @@ const getChangedFilesFromRESTAPI = async ({
core.endGroup()
}
const yamlFilePatterns = await getYamlFilePatterns({
inputs,
workingDirectory
})
core.debug(`Yaml file patterns: ${JSON.stringify(yamlFilePatterns)}`)
if (Object.keys(yamlFilePatterns).length > 0) {
for (const key of Object.keys(yamlFilePatterns)) {
core.startGroup(`changed-files-yaml-${key}`)
@@ -270,13 +254,30 @@ export async function run(): Promise<void> {
const env = await getEnv()
core.debug(`Env: ${JSON.stringify(env, null, 2)}`)
const inputs = getInputs()
core.debug(`Inputs: ${JSON.stringify(inputs, null, 2)}`)
const workingDirectory = path.resolve(
env.GITHUB_WORKSPACE || process.cwd(),
inputs.path
)
core.debug(`Working directory: ${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 (
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 {
if (!hasGitDirectory) {
core.setFailed(
@@ -312,7 +319,13 @@ export async function run(): Promise<void> {
}
core.info('Using local .git directory')
await getChangedFilesFromLocalGit({inputs, env, workingDirectory})
await getChangedFilesFromLocalGit({
inputs,
env,
workingDirectory,
filePatterns,
yamlFilePatterns
})
}
}

1159
yarn.lock

File diff suppressed because it is too large Load Diff