From f12a8ed81e15d06e2cc34f8285faab2e95cdaf83 Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Sun, 9 Mar 2025 17:14:57 -0600 Subject: [PATCH] Add GitHub Actions workflow for generating Base64 blueprints table --- .github/workflows/base64-templates.yml | 62 ++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 .github/workflows/base64-templates.yml diff --git a/.github/workflows/base64-templates.yml b/.github/workflows/base64-templates.yml new file mode 100644 index 00000000..98f2e221 --- /dev/null +++ b/.github/workflows/base64-templates.yml @@ -0,0 +1,62 @@ +name: Generate Base64 Blueprints Table + +on: + pull_request: + paths: + - 'blueprints/**' + push: + branches: + - main + paths: + - 'blueprints/**' + +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 |' >> 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}..." # Primera parte para la tabla + echo "| $TEMPLATE_NAME | \`$SHORT_CONTENT\` |" >> comment.md + + # Detalle completo + echo '' >> comment.md + echo "#### $TEMPLATE_NAME Full Base64" >> comment.md + echo '' >> comment.md + echo '```' >> comment.md + echo "$CONTENT" >> comment.md + echo '```' >> comment.md + 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