mirror of
https://github.com/bitsocialnet/5chan.git
synced 2026-08-03 07:41:04 +02:00
Sign web release manifests (#1128)
* feat(release): sign web release manifests * ci(doctor): skip non-ui pull requests
This commit is contained in:
@@ -76,9 +76,26 @@ jobs:
|
||||
- name: Verify forge config
|
||||
run: node -e "import('./forge.config.js').then(c => console.log('Config loaded, makers:', c.default.makers?.length || 0)).catch(e => { console.error(e); process.exit(1); })"
|
||||
|
||||
- name: Detect React UI changes
|
||||
id: react-ui-changes
|
||||
if: github.event_name == 'pull_request'
|
||||
run: |
|
||||
git diff --name-only "${{ github.event.pull_request.base.sha }}" HEAD > changed-files.txt
|
||||
cat changed-files.txt
|
||||
if grep -Eq '^(src/(components|views|hooks|stores)/|src/app\.tsx|src/main\.tsx)' changed-files.txt; then
|
||||
echo "changed=true" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "changed=false" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
- name: Run React Doctor
|
||||
if: github.event_name != 'pull_request' || steps.react-ui-changes.outputs.changed == 'true'
|
||||
run: yarn doctor
|
||||
|
||||
- name: Skip React Doctor
|
||||
if: github.event_name == 'pull_request' && steps.react-ui-changes.outputs.changed != 'true'
|
||||
run: echo "Skipping React Doctor because this pull request did not change React UI source."
|
||||
|
||||
- name: Install Chromium for smoke tests
|
||||
run: npx playwright install --with-deps chromium
|
||||
|
||||
|
||||
@@ -95,11 +95,17 @@ jobs:
|
||||
cp "$APPIMAGE_PATH" "release-assets/5chan-${VERSION}-${{ matrix.arch }}.AppImage"
|
||||
- name: Create static HTML release archive
|
||||
if: matrix.arch == 'x64'
|
||||
env:
|
||||
RELEASE_MANIFEST_PRIVATE_KEY_PEM: ${{ secrets.RELEASE_MANIFEST_PRIVATE_KEY_PEM }}
|
||||
RELEASE_MANIFEST_KEY_ID: 5chan-release-p256-2026-05
|
||||
run: |
|
||||
VERSION=$(node -e "console.log(require('./package.json').version)")
|
||||
HTML_ARCHIVE_DIR="5chan-$VERSION-html"
|
||||
rm -rf "$HTML_ARCHIVE_DIR"
|
||||
yarn release:manifest --build-dir build --out-dir release-assets
|
||||
cp -R build "$HTML_ARCHIVE_DIR"
|
||||
cp release-assets/5chan-release-manifest.json "$HTML_ARCHIVE_DIR/5chan-release-manifest.json"
|
||||
cp release-assets/5chan-release-manifest.sig.json "$HTML_ARCHIVE_DIR/5chan-release-manifest.sig.json"
|
||||
zip -r "release-assets/${HTML_ARCHIVE_DIR}.zip" "$HTML_ARCHIVE_DIR"
|
||||
rm -rf "$HTML_ARCHIVE_DIR"
|
||||
- name: List release assets
|
||||
|
||||
Reference in New Issue
Block a user