Skip to content

learn-sonarqube: Create a free Sonarqube account and create your firs… #30

learn-sonarqube: Create a free Sonarqube account and create your firs…

learn-sonarqube: Create a free Sonarqube account and create your firs… #30

name: Post Slack message
on:
push:
branches:
- main
paths:
- 'data/scorecards/**'
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Get changed files
id: changed-files
uses: step-security/changed-files@3dbe17c78367e7d60f00d78ae6781a35be47b4a1 # v45.0.1
- name: Post Slack Message
env:
ALL_CHANGED_FILES: ${{ steps.changed-files.outputs.all_changed_files }}
run: |
set +e
message="Updated content has been published to <https://github.com/${GITHUB_REPOSITORY}|Learn Cortex>\n"
message="${message}*Description*: ${{ github.event.head_commit.message }}\n"
message="${message}*Submitted by*: ${GITHUB_ACTOR}\n"
for file in ${ALL_CHANGED_FILES}; do
message="${message}*Scorecard:* <https://github.com/${GITHUB_REPOSITORY}/blob/main/$file|$file>\n"
done
grep "Unwritten" ${file} >/dev/null 2>&1
if [ $? -eq 0 ]; then
message="${message}\n*Status:* This is an unwritten Scorecard.\n"
grep "Author: None" ${file} >/dev/null 2>&1
if [ $? -eq 0 ]; then
message="${message}\n*Author:* This scorecard needs an author.\n"
else
message="${message}\n*Author:* The submitter will be the author.\n"
fi
fi
echo "message = ${message}"
curl -X POST -H 'Content-type: application/json' --data "{\"text\":\"${message}\"}" ${{ env.SLACK_WEBHOOK_URL }}