Skip to content

Commit

Permalink
chore: improve error handling (#533)
Browse files Browse the repository at this point in the history
* chore: improve error handling

* Update test.yml

* Update test.yml

* Update test.yml

* Update test.yml

* Update test.yml

* Update diff-sha.sh

* Update diff-sha.sh

* updated command.

* Updated message level.

* Updated message.

* Updated message.
  • Loading branch information
jackton1 committed Jun 24, 2022
1 parent 3fac642 commit 3df9c18
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 8 deletions.
10 changes: 10 additions & 0 deletions .github/workflows/test.yml
Expand Up @@ -19,6 +19,16 @@ jobs:
uses: actions/checkout@v3
- name: shellcheck
uses: reviewdog/action-shellcheck@v1.15

test-missing-git:
name: Test changed-files without git.
runs-on: self-hosted

steps:
- name: Run changed-files with defaults
id: changed-files
continue-on-error: true
uses: ./

test-pull-requests-from-forks:
name: Test changed-files diff on pull_requests from forks
Expand Down
22 changes: 15 additions & 7 deletions diff-sha.sh
Expand Up @@ -9,12 +9,19 @@ if [[ -n $INPUT_PATH ]]; then

echo "::debug::Resolving repository path: $REPO_DIR"
if [[ ! -d "$REPO_DIR" ]]; then
echo "::warning::Invalid repository path: $REPO_DIR"
echo "::error::Invalid repository path: $REPO_DIR"
exit 1
fi
cd "$REPO_DIR"
fi

git --version 1>/dev/null 2>&1 && exit_status=$? || exit_status=$?

if [[ $exit_status -ne 0 ]]; then
echo "::error::git not installed"
exit 1
fi

echo "::debug::Getting HEAD SHA..."

if [[ -z $INPUT_SHA ]]; then
Expand All @@ -26,8 +33,9 @@ fi
git rev-parse --quiet --verify "$CURRENT_SHA^{commit}" 1>/dev/null 2>&1 && exit_status=$? || exit_status=$?

if [[ $exit_status -ne 0 ]]; then
echo "::warning::Unable to locate the current sha: $CURRENT_SHA"
echo "::warning::You seem to be missing 'fetch-depth: 0' or 'fetch-depth: 2'. See https://github.com/tj-actions/changed-files#usage"
echo "::error::Unable to locate the current sha: $CURRENT_SHA"
git --version
echo "::error::You seem to be missing 'fetch-depth: 0' or 'fetch-depth: 2'. See https://github.com/tj-actions/changed-files#usage"
exit 1
fi

Expand All @@ -53,8 +61,8 @@ if [[ -z $GITHUB_BASE_REF ]]; then
git rev-parse --quiet --verify "$PREVIOUS_SHA^{commit}" 1>/dev/null 2>&1 && exit_status=$? || exit_status=$?

if [[ $exit_status -ne 0 ]]; then
echo "::warning::Unable to locate the previous sha: $PREVIOUS_SHA"
echo "::warning::You seem to be missing 'fetch-depth: 0' or 'fetch-depth: 2'. See https://github.com/tj-actions/changed-files#usage"
echo "::error::Unable to locate the previous sha: $PREVIOUS_SHA"
echo "::error::You seem to be missing 'fetch-depth: 0' or 'fetch-depth: 2'. See https://github.com/tj-actions/changed-files#usage"
exit 1
fi
else
Expand All @@ -80,8 +88,8 @@ else
git rev-parse --quiet --verify "$PREVIOUS_SHA^{commit}" 1>/dev/null 2>&1 && exit_status=$? || exit_status=$?

if [[ $exit_status -ne 0 ]]; then
echo "::warning::Unable to locate the previous sha: $PREVIOUS_SHA"
echo "::warning::You seem to be missing 'fetch-depth: 0' or 'fetch-depth: 2'. See https://github.com/tj-actions/changed-files#usage"
echo "::error::Unable to locate the previous sha: $PREVIOUS_SHA"
echo "::error::You seem to be missing 'fetch-depth: 0' or 'fetch-depth: 2'. See https://github.com/tj-actions/changed-files#usage"
exit 1
fi
fi
Expand Down
2 changes: 1 addition & 1 deletion entrypoint.sh
Expand Up @@ -71,7 +71,7 @@ if [[ -n $INPUT_PATH ]]; then

echo "::debug::Resolving repository path: $REPO_DIR"
if [[ ! -d "$REPO_DIR" ]]; then
echo "::warning::Invalid repository path: $REPO_DIR"
echo "::error::Invalid repository path: $REPO_DIR"
exit 1
fi
cd "$REPO_DIR"
Expand Down

0 comments on commit 3df9c18

Please sign in to comment.