ci: retain FigCraft package and metadata checks

This commit is contained in:
skylartaylor
2026-10-16 05:24:23 +02:00
parent 3489e01a22
commit d9584410af
3 changed files with 29 additions and 0 deletions
+3
View File
@@ -10,6 +10,8 @@ name: FreeBSD
on:
schedule:
- cron: "17 2 * * *"
push:
branches: [release]
pull_request:
paths:
- .github/workflows/freebsd.yml
@@ -30,4 +32,5 @@ jobs:
uses: storytold/craft-common-actions/.github/workflows/freebsd.yml@main
with:
freebsd-release: "14.3"
run-package-check: true
craft-fonts-ref: 43913056ce82a3fdad0ef69f6b88d1dc922a8104
+2
View File
@@ -21,3 +21,5 @@ jobs:
lint:
# Intentionally tracked at @main (not SHA-pinned) so org-wide CI improvements, security fixes, and build optimizations propagate without PR churn across all craftapp repos.
uses: storytold/craft-common-actions/.github/workflows/packaging-lint.yml@main
with:
extra-checks-script: packaging/check-app-specific.sh
+24
View File
@@ -0,0 +1,24 @@
#!/usr/bin/env bash
# App-specific checks retained alongside shared packaging lint.
set -euo pipefail
cd "$(dirname "${BASH_SOURCE[0]}")/.."
bash packaging/server/install-test.sh
if grep -rniE 'photoshop|psd|photocraft|vectorcraft|illustrator|adobe|figma' packaging/ .github/ \
--exclude=packaging-lint.yml --exclude=check-app-specific.sh; then
echo "::error::package metadata mentions another product (see above)"
exit 1
fi
python3 - <<'PYEOF'
import yaml
manifests = []
for name in ("ai.storyteller.figcraft.yml", "ai.storyteller.figcraft.bundle.yml"):
with open("packaging/linux/flatpak/" + name) as source:
manifest = yaml.safe_load(source)
assert manifest["id"] == "ai.storyteller.figcraft" and manifest["command"] == "figcraft", name
manifests.append(manifest)
for key in ("runtime", "runtime-version", "sdk", "finish-args"):
assert manifests[0][key] == manifests[1][key], f"Flatpak manifests disagree on {key}"
print("FigCraft package identity ok")
PYEOF