From c7a87c12455768f81c613dc8caf10a02e2c23fc5 Mon Sep 17 00:00:00 2001 From: qiaofeng1227 <76487013@qq.com> Date: Thu, 6 Jul 2023 10:10:39 +0800 Subject: [PATCH] check changes --- .github/workflows/develop_ci.yml | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/.github/workflows/develop_ci.yml b/.github/workflows/develop_ci.yml index a86cb26d..a98de8f9 100644 --- a/.github/workflows/develop_ci.yml +++ b/.github/workflows/develop_ci.yml @@ -16,15 +16,23 @@ jobs: name: Check out code - name: Check for appmanage changes - id: appmanage + id: check_changes run: | - changed_files=$(git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }}) - appmanage_changed=$(echo $changed_files | grep -c "appmanage") - echo ::set-output name=changed::${appmanage_changed} + PR_NUMBER=$(echo "${{ github.event.pull_request.url }}" | awk -F/ '{print $NF}') + PR_FILES=$(curl -s -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \ + "https://api.github.com/repos/${{ github.repository }}/pulls/${PR_NUMBER}/files") + + if echo "${PR_FILES}" | jq -e '.[] | select(.filename | contains("appmanage/"))' >/dev/null; then + echo "appmanage directory changed" + echo "::set-output name=appmanage_changed::true" + else + echo "appmanage no change" + echo "::set-output name=appmanage_changed::false" + fi - uses: mr-smithers-excellent/docker-build-push@v5 name: Build & push Docker image - if: steps.appmanage.outputs.changed > 0 + if: ${{ steps.check_changes.outputs.appmanage_changed == 'true' }} with: image: websoft9dev/appmanage tags: 0.7.2 @@ -35,7 +43,7 @@ jobs: password: ${{ secrets.DOCKER_PASSWORD }} - name: add readme file - if: steps.appmanage.outputs.changed > 0 + if: ${{ steps.check_changes.outputs.appmanage_changed == 'true' }} run: | cd appmanage touch myread.md @@ -46,7 +54,7 @@ jobs: ```' > myread.md - name: Docker Hub Description - if: steps.appmanage.outputs.changed > 0 + if: ${{ steps.check_changes.outputs.appmanage_changed == 'true' }} uses: peter-evans/dockerhub-description@v3 with: username: ${{ secrets.DOCKER_USERNAME }}