71b6a4fa91
REQ-214: Restore the S&P Global Energy Marp style: block (from commit
ae0cb58 / v1.9.2 P45) to the unified deck. Colors: H1/H2 #D6002A (red-core),
title-slide bg #1B1B1B (grey-90) + 8px #D6002A top accent, body #1B1B1B,
blockquote border #D6002A, table headers #F0F0F0, font 'Akkurat Pro' with
web-safe fallbacks. Nova header/footer text preserved (rebrand not touched).
HTML re-rendered (229 S&P color refs confirmed).
REQ-228: scripts/render_deck.sh (HTML + PPTX render + git add) +
scripts/attach_release_asset.py (Gitea release asset upload via API). PPTX
is now a first-class committed binary (D-141, no LFS). README updated:
'PPTX not committed' → 'PPTX committed + attached'. PPTX committed (3.6 MiB,
19 slides).
---ci---
project: acdl
phase: 1
milestone: v1.18
status: execute
requirements:
covered: [REQ-214, REQ-228]
partial: []
---/ci---
56 lines
2.0 KiB
Bash
Executable File
56 lines
2.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# scripts/render_deck.sh — render a Marp deck to HTML + PPTX, commit both to git.
|
|
# REQ-228 (v1.18): PPTX is now a first-class committed artifact + release attachment.
|
|
#
|
|
# Usage:
|
|
# bash scripts/render_deck.sh <deck-name>
|
|
# bash scripts/render_deck.sh nova-no-humans-platform
|
|
#
|
|
# Renders:
|
|
# docs/presentations/<deck-name>-marp.md → docs/presentations/<deck-name>.html (committed)
|
|
# → docs/presentations/<deck-name>.pptx (committed, binary)
|
|
#
|
|
# The PPTX is also attached to the current phase's Gitea release via
|
|
# scripts/attach_release_asset.py (call separately after ship, or this script
|
|
# will invoke it if NOVA_GITEA_RELEASE_ID is set).
|
|
set -euo pipefail
|
|
|
|
DECK="${1:?Usage: render_deck.sh <deck-name>}"
|
|
cd "$(git rev-parse --show-toplevel)"
|
|
|
|
SRC="docs/presentations/${DECK}-marp.md"
|
|
HTML="docs/presentations/${DECK}.html"
|
|
PPTX="docs/presentations/${DECK}.pptx"
|
|
|
|
if [ ! -f "$SRC" ]; then
|
|
echo "ERROR: source deck $SRC not found" >&2; exit 1
|
|
fi
|
|
|
|
CHROME=""
|
|
for c in \
|
|
/root/.cache/ms-playwright/chromium-1217/chrome-linux64/chrome \
|
|
/usr/bin/chromium \
|
|
/usr/bin/chromium-browser \
|
|
/usr/bin/google-chrome; do
|
|
if [ -x "$c" ]; then CHROME="$c"; break; fi
|
|
done
|
|
if [ -z "$CHROME" ]; then
|
|
echo "WARNING: no Chrome/Chromium found — skipping render (HTML/PPTX will need manual re-render)" >&2
|
|
exit 0
|
|
fi
|
|
export CHROME_PATH="$CHROME"
|
|
|
|
echo "Rendering HTML → $HTML"
|
|
npx --yes @marp-team/marp-cli@latest --allow-local-files "$SRC" -o "$HTML" 2>&1 | tail -3
|
|
|
|
echo "Rendering PPTX → $PPTX"
|
|
npx --yes @marp-team/marp-cli@latest --allow-local-files "$SRC" -o "$PPTX" 2>&1 | tail -3
|
|
|
|
git add "$HTML" "$PPTX"
|
|
echo "Staged $HTML + $PPTX for commit."
|
|
|
|
if [ -n "${NOVA_GITEA_RELEASE_ID:-}" ]; then
|
|
echo "Attaching PPTX to Gitea release $NOVA_GITEA_RELEASE_ID..."
|
|
python3 scripts/attach_release_asset.py "$PPTX" "$NOVA_GITEA_RELEASE_ID" || \
|
|
echo "WARNING: attach failed — PPTX is still committed; attach manually."
|
|
fi |