diff --git a/.woodpecker.yml b/.woodpecker.yml index 7dd86e0..9484edf 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -40,7 +40,7 @@ steps: branch: master event: push - # 3. Notification (Cara pemetaan Secret yang benar) +# 3. Notification Debugging Stage notify-telegram: image: alpine environment: @@ -49,9 +49,37 @@ steps: TELEGRAM_CHAT_ID: from_secret: telegram_chat_id commands: - - apk add --no-cache curl + - apk add --no-cache curl > /dev/null 2>&1 - | - if [ "$CI_STATUS" = "success" ]; then + echo "=== DEBUGGING WOODPECKER ENV ===" + echo "1. Menampilkan semua variabel CI yang tersedia:" + env | grep CI_ | sort + + echo "" + echo "2. Mengecek apakah Secret terpetakan ke Env OS:" + if [ -z "$TELEGRAM_TOKEN" ]; then + echo "❌ ERROR: TELEGRAM_TOKEN kosong di environment shell!" + else + echo "✅ TELEGRAM_TOKEN terdeteksi (Awalan: $(echo $TELEGRAM_TOKEN | cut -c 1-3)...)" + fi + + if [ -z "$TELEGRAM_CHAT_ID" ]; then + echo "❌ ERROR: TELEGRAM_CHAT_ID kosong di environment shell!" + else + echo "✅ TELEGRAM_CHAT_ID terdeteksi: $TELEGRAM_CHAT_ID" + fi + + echo "" + echo "3. Mencoba koneksi dasar ke API Telegram:" + # Hanya mengecek apakah API merespons, bukan mengirim pesan + curl -s -I https://api.telegram.org | grep "HTTP/" + + echo "" + echo "4. Menjalankan perintah utama..." + # Menentukan status (Woodpecker versi terbaru biasanya pakai CI_PIPELINE_STATUS) + STATUS="${CI_STATUS:-${CI_PIPELINE_STATUS}}" + + if [ "$STATUS" = "success" ]; then ICON="✅" TEXT="SUCCESS" else @@ -59,11 +87,12 @@ steps: TEXT="FAILED" fi - curl -s -X POST "https://api.telegram.org/bot${TELEGRAM_TOKEN}/sendMessage" \ + # Eksekusi dengan verbose (-v) untuk melihat header transmisi (tanpa membocorkan token) + curl -v -X POST "https://api.telegram.org/bot${TELEGRAM_TOKEN}/sendMessage" \ -d "chat_id=${TELEGRAM_CHAT_ID}" \ -d "message_thread_id=8" \ -d "parse_mode=HTML" \ - -d "text=${ICON} Deployment ${TEXT}!%0A%0A📦 Project: ${CI_REPO_NAME}%0A🌿 Branch: ${CI_COMMIT_BRANCH}%0A📝 Commit: ${CI_COMMIT_MESSAGE}%0A%0A🔗 Lihat Detail Log" + -d "text=${ICON} Deployment ${TEXT}!" when: branch: master event: push