diff --git a/.github/workflows/docker-image-ci.yml b/.github/workflows/docker-image-ci.yml index 2c7858808..59ac36d2c 100644 --- a/.github/workflows/docker-image-ci.yml +++ b/.github/workflows/docker-image-ci.yml @@ -1,9 +1,12 @@ name: docker image ci on: + pull_request: + types: [opened, synchronize] push: paths: - '**' + - '.**' - '!LICENSE' - '!README.md' - '!images' @@ -14,6 +17,8 @@ jobs: steps: - uses: actions/checkout@master + with: + fetch-depth: 1 - name: build env: @@ -26,6 +31,8 @@ jobs: runs-on: ubuntu-18.04 steps: - uses: actions/checkout@master + with: + fetch-depth: 1 - name: shellcheck run: shellcheck ./entrypoint.sh @@ -33,6 +40,8 @@ jobs: runs-on: macOS-10.14 steps: - uses: actions/checkout@master + with: + fetch-depth: 1 - name: hadolint run: | brew install hadolint diff --git a/entrypoint.sh b/entrypoint.sh index 71ccd9ec4..9dc514ef6 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -11,6 +11,11 @@ function print_info() { echo -e "\e[36mINFO: ${1}\e[m" } +function skip() { + print_info "No changes detected, skipping deployment" + exit 0 +} + # check values if [ -n "${ACTIONS_DEPLOY_KEY}" ]; then @@ -32,6 +37,7 @@ elif [ -n "${PERSONAL_TOKEN}" ]; then elif [ -n "${GITHUB_TOKEN}" ]; then print_info "setup with GITHUB_TOKEN" + print_error "Do not use GITHUB_TOKEN, See #9" remote_repo="https://x-access-token:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git" @@ -74,12 +80,10 @@ git add --all print_info "Allowing empty commits: ${INPUT_EMPTYCOMMITS}" COMMIT_MESSAGE="Automated deployment: $(date -u) ${GITHUB_SHA}" -if [[ ${INPUT_EMPTYCOMMITS} == "true" ]]; then - git commit --allow-empty -m "${COMMIT_MESSAGE}" +if [[ ${INPUT_EMPTYCOMMITS} == "false" ]]; then + git commit -m "${COMMIT_MESSAGE}" || skip else - git commit -m "${COMMIT_MESSAGE}" || \ - print_info "No changes detected, skipping deployment" && \ - exit 0 + git commit --allow-empty -m "${COMMIT_MESSAGE}" fi git push origin "${remote_branch}"