name: Generate Base64 Blueprints Table on: pull_request: branches: - main push: branches: - main jobs: encode-and-comment: runs-on: ubuntu-latest steps: - name: Checkout repo uses: actions/checkout@v4 - name: Generate base64 table id: generate run: | echo "### 📝 Blueprints Base64 Table" > comment.md echo '' >> comment.md echo '| Template | Base64 (short) |' >> comment.md echo '|----------|----------------|' >> comment.md for dir in blueprints/*; do if [ -d "$dir" ]; then TEMPLATE_NAME=$(basename "$dir") COMPOSE_FILE="$dir/docker-compose.yml" TEMPLATE_FILE="$dir/template.yml" if [ -f "$COMPOSE_FILE" ] && [ -f "$TEMPLATE_FILE" ]; then CONTENT=$(cat "$COMPOSE_FILE" "$TEMPLATE_FILE" | base64 -w 0) SHORT_CONTENT="${CONTENT:0:50}..." # Add table row with short base64 preview echo "| $TEMPLATE_NAME | \`$SHORT_CONTENT\` |" >> comment.md # Add collapsible full base64 section echo '' >> comment.md echo "
" >> comment.md echo "🔍 $TEMPLATE_NAME Full Base64" >> comment.md echo '' >> comment.md echo '```' >> comment.md echo "$CONTENT" >> comment.md echo '```' >> comment.md echo '
' >> comment.md echo '' fi fi done - name: Post comment to PR uses: marocchino/sticky-pull-request-comment@v2 if: github.event_name == 'pull_request' with: path: comment.md - name: Post comment to commit (fallback) uses: peter-evans/commit-comment@v3 if: github.event_name != 'pull_request' with: body-path: comment.md