name: check-secrets on: push: jobs: check-secrets: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Check all required secrets run: | echo "=== Checking availability of required secrets ===" # List of all secrets used in the original workflow SECRETS=( "GPGSIGN_KEY" "GPGSIGN_PASSPHRASE" "DOCKER_CHARTS_PASSWORD" "DOCKER_CHARTS_USERNAME" "AWS_KEY_ID" "AWS_SECRET_ACCESS_KEY" "AWS_REGION" "AWS_S3_BUCKET" ) MISSING_SECRETS=() AVAILABLE_SECRETS=() for secret in "${SECRETS[@]}"; do # Check if secret is set (not empty) if [ -z "${!secret:-}" ]; then echo "❌ Secret '$secret' is NOT available or empty" MISSING_SECRETS+=("$secret") else echo "✅ Secret '$secret' is available" AVAILABLE_SECRETS+=("$secret") fi done echo "" echo "=== Summary ===" echo "Available secrets: ${#AVAILABLE_SECRETS[@]}" echo "Missing secrets: ${#MISSING_SECRETS[@]}" if [ ${#MISSING_SECRETS[@]} -gt 0 ]; then echo "" echo "Missing secrets:" for secret in "${MISSING_SECRETS[@]}"; do echo " - $secret" done echo "" echo "❌ Some secrets are missing. Please configure them in repository settings." exit 1 else echo "" echo "✅ All required secrets are available!" fi env: GPGSIGN_KEY: ${{ secrets.GPGSIGN_KEY }} GPGSIGN_PASSPHRASE: ${{ secrets.GPGSIGN_PASSPHRASE }} DOCKER_CHARTS_PASSWORD: ${{ secrets.DOCKER_CHARTS_PASSWORD }} DOCKER_CHARTS_USERNAME: ${{ secrets.DOCKER_CHARTS_USERNAME }} AWS_KEY_ID: ${{ secrets.AWS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} AWS_REGION: ${{ secrets.AWS_REGION }} AWS_S3_BUCKET: ${{ secrets.AWS_S3_BUCKET }}