Skip to content

fix: escape invitation message #39

fix: escape invitation message

fix: escape invitation message #39

Workflow file for this run

name: Deploy TripTogether
on:
push:
branches:
- main
- staging
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: πŸ“¦ Checkout repository
uses: actions/checkout@v3
- name: πŸ” Setup SSH agent
uses: webfactory/ssh-agent@v0.9.0
with:
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
- name: 🧾 Setup known_hosts
run: |
mkdir -p ~/.ssh
echo "${{ secrets.VPS_KNOWN_HOST }}" > ~/.ssh/known_hosts
chmod 644 ~/.ssh/known_hosts
- name: πŸš€ Deploy to VPS
run: |
if [ "${{ github.ref }}" = "refs/heads/main" ]; then
echo "ENVIRONMENT=PRODUCTION" >> $GITHUB_ENV
echo "πŸš€ Deploying PRODUCTION"
ssh -o StrictHostKeyChecking=yes \
${{ secrets.VPS_USER }}@${{ secrets.VPS_HOST }} \
"bash /home/ubuntu/deploy-triptogether.sh"
else
echo "ENVIRONMENT=STAGING" >> $GITHUB_ENV
echo "πŸ§ͺ Deploying STAGING"
ssh -o StrictHostKeyChecking=yes \
${{ secrets.VPS_USER }}@${{ secrets.VPS_HOST }} \
"bash /home/ubuntu/deploy-triptogether-staging.sh"
fi
############################################################
# βœ… SUCCESS NOTIFICATION (FULLY SECURED)
############################################################
- name: βœ… Telegram Success Notification
if: success()
env:
TELEGRAM_TOKEN: ${{ secrets.TELEGRAM_TOKEN }}
TELEGRAM_CHAT_ID: ${{ secrets.TELEGRAM_CHAT_ID }}
COMMIT_MESSAGE: ${{ github.event.head_commit.message }}
run: |
SAFE_COMMIT=$(printf "%s" "$COMMIT_MESSAGE" \
| sed -e 's/&/\&/g' \
-e 's/</\&lt;/g' \
-e 's/>/\&gt;/g')
curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_TOKEN}/sendMessage" \
--data-urlencode "chat_id=${TELEGRAM_CHAT_ID}" \
--data-urlencode "parse_mode=HTML" \
--data-urlencode "text=βœ… <b>${ENVIRONMENT} Deploy SUCCESS</b>
πŸ“¦ <b>Repo:</b> ${{ github.repository }}
🌿 <b>Branch:</b> ${{ github.ref_name }}
πŸ‘€ <b>Author:</b> ${{ github.actor }}
πŸ“ <b>Commit:</b> ${SAFE_COMMIT}
πŸ•’ <b>Date:</b> $(date -u '+%Y-%m-%d %H:%M:%S UTC')
πŸ”Ž <a href='https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}'>View Logs</a>"
############################################################
# ❌ FAILURE NOTIFICATION (FULLY SECURED)
############################################################
- name: ❌ Telegram Failure Notification
if: failure()
env:
TELEGRAM_TOKEN: ${{ secrets.TELEGRAM_TOKEN }}
TELEGRAM_CHAT_ID: ${{ secrets.TELEGRAM_CHAT_ID }}
COMMIT_MESSAGE: ${{ github.event.head_commit.message }}
run: |
SAFE_COMMIT=$(printf "%s" "$COMMIT_MESSAGE" \
| sed -e 's/&/\&amp;/g' \
-e 's/</\&lt;/g' \
-e 's/>/\&gt;/g')
curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_TOKEN}/sendMessage" \
--data-urlencode "chat_id=${TELEGRAM_CHAT_ID}" \
--data-urlencode "parse_mode=HTML" \
--data-urlencode "text=❌ <b>${ENVIRONMENT} Deploy FAILED</b>
πŸ“¦ <b>Repo:</b> ${{ github.repository }}
🌿 <b>Branch:</b> ${{ github.ref_name }}
πŸ‘€ <b>Author:</b> ${{ github.actor }}
πŸ“ <b>Commit:</b> ${SAFE_COMMIT}
πŸ•’ <b>Date:</b> $(date -u '+%Y-%m-%d %H:%M:%S UTC')
⚠️ <b>Check immediately.</b>
πŸ”Ž <a href='https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}'>View Logs</a>"