diff --git a/.github/workflows/backend_pr_decorator.yml b/.github/workflows/backend_pr_decorator.yml index e63306202..cf0c76797 100644 --- a/.github/workflows/backend_pr_decorator.yml +++ b/.github/workflows/backend_pr_decorator.yml @@ -9,7 +9,7 @@ permissions: write-all jobs: build: - if: contains(github.event.pull_request.labels.*.name, 'backend') + if: contains(github.event.pull_request.labels.*.name, 'backend') && !contains(github.event.pull_request.labels.*.name, 'suggestion') runs-on: ubuntu-latest steps: diff --git a/.github/workflows/backend_suggestion_pr_decorator.yml b/.github/workflows/backend_suggestion_pr_decorator.yml new file mode 100644 index 000000000..a53ed346c --- /dev/null +++ b/.github/workflows/backend_suggestion_pr_decorator.yml @@ -0,0 +1,51 @@ +name: 제안 PR 슬랙 메시지 + +on: + pull_request: + types: [ opened, reopened, synchronize ] + branches: [ main, develop, develop-be ] + +permissions: write-all + +jobs: + build: + if: contains(github.event.pull_request.labels.*.name, 'backend') && contains(github.event.pull_request.labels.*.name, 'suggestion') + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + + - name: set author slack id + id: author-slack + run: | + GIT_ID=${{ github.event.pull_request.user.login }} + + if [ "$GIT_ID" == "apptie" ]; then + AUTHOR_NAME="${{ secrets.apptie_slack_display_name }}" + elif [ "$GIT_ID" == "swonny" ]; then + AUTHOR_NAME="${{ secrets.swonny_slack_display_name }}" + elif [ "$GIT_ID" == "JJ503" ]; then + AUTHOR_NAME="${{ secrets.JJ503_slack_display_name }}" + elif [ "$GIT_ID" == "kwonyj1022" ]; then + AUTHOR_NAME="${{ secrets.kwonyj1022_slack_display_name }}" + fi + + echo "AUTHOR_NAME=${AUTHOR_NAME}" >> $GITHUB_OUTPUT + + - name: slack suggestion notification + if: github.event.action != 'synchronize' + run: | + SLACK_MESSAGE='{"text":"제안 PR","blocks":[{"type":"section","text":{"type":"mrkdwn","text":">*제안 PR* \n>\n>*PR Author*\n>' + SLACK_MESSAGE+="${{ steps.author-slack.outputs.AUTHOR_NAME }}" + SLACK_MESSAGE+="\n>\n>*PR 링크*\n><" + SLACK_MESSAGE+="${{ github.event.pull_request.html_url }} " + SLACK_MESSAGE+="> \n>\n>*PR 제목*\n>" + SLACK_MESSAGE+="${{ github.event.pull_request.title }}" + SLACK_MESSAGE+="\n>\n>*리뷰어*\n>" + SLACK_MESSAGE+="" + SLACK_MESSAGE+='"}}]}' + + curl -X POST ${{ secrets.SLACK_WEBHOOK }} -d "${SLACK_MESSAGE}" + + - name: Force failure + run: exit 1