mirror of
https://github.com/pezkuwichain/pezkuwi-apps.git
synced 2026-04-21 23:37:57 +00:00
87854ee7a1
- Replace pezkuwi.js.org with pezkuwichain.app domain - Replace jacogr/pezkuwi-js-apps with pezkuwichain/pezkuwi-apps Docker image - Fix GH_PAT_BOT secret issue by using GITHUB_TOKEN - Update GitHub org references from pezkuwi-js to pezkuwichain - Update issue template to point to docs.pezkuwichain.io Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
106 lines
3.8 KiB
YAML
106 lines
3.8 KiB
YAML
name: Main
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
# publish to gh-pages (& IPFS when a release is detected)
|
|
www:
|
|
if: "! startsWith(github.event.head_commit.message, '[CI Skip]')"
|
|
strategy:
|
|
matrix:
|
|
step: ['build:release:www']
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 'lts/*'
|
|
- name: Set Execute Permissions
|
|
run: chmod +x ./scripts/*
|
|
- name: ${{ matrix.step }}
|
|
env:
|
|
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
|
|
CF_API_TOKEN: ${{ secrets.CF_API_TOKEN }}
|
|
CRUST_SEEDS: ${{ secrets.CRUST_SEEDS }}
|
|
GH_PAGES_SRC: packages/apps/build
|
|
GH_PAT: ${{ secrets.GITHUB_TOKEN }}
|
|
GH_RELEASE_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
PINATA_API_KEY: ${{ secrets.PINATA_API_KEY }}
|
|
PINATA_SECRET_KEY: ${{ secrets.PINATA_SECRET_KEY }}
|
|
run: |
|
|
yarn install --immutable
|
|
yarn ${{ matrix.step }}
|
|
|
|
# only run on "CI skip", i.e. when the actual version has been bumped to release/stable
|
|
docker:
|
|
if: "startsWith(github.event.head_commit.message, '[CI Skip] release/stable')"
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 'lts/*'
|
|
- name: Set Execute Permissions
|
|
run: chmod +x ./docker/*
|
|
- name: docker
|
|
env:
|
|
DOCKER_PASS: ${{ secrets.DOCKER_PASS }}
|
|
run: |
|
|
./docker/build.sh
|
|
|
|
# only run on "CI skip", i.e. when the actual version has been bumped to release/stable
|
|
electron:
|
|
if: "startsWith(github.event.head_commit.message, '[CI Skip] release/stable')"
|
|
strategy:
|
|
matrix:
|
|
# Removed `macos-latest` since notarization errors.
|
|
# ref: https://github.com/pezkuwichain/pezkuwi-apps/issues/10486
|
|
os: [ubuntu-latest, windows-latest]
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 'lts/*'
|
|
# Removed `macos-latest` since notarization errors.
|
|
# ref: https://github.com/pezkuwichain/pezkuwi-apps/issues/10486
|
|
# - name: Prepare for app notarization (macOS)
|
|
# if: startsWith(matrix.os, 'macos')
|
|
# # Import Apple API key for app notarization on macOS
|
|
# run: |
|
|
# mkdir -p ~/private_keys/
|
|
# echo '${{ secrets.API_KEY }}' > ~/private_keys/AuthKey_${{ secrets.API_KEY_ID }}.p8
|
|
- name: Set Execute Permissions
|
|
run: chmod +x ./scripts/*
|
|
- name: Build/release Electron app
|
|
uses: samuelmeuli/action-electron-builder@v1
|
|
with:
|
|
# Base64-encoded code signing certificate for macOS
|
|
mac_certs: ${{ secrets.MAC_CERTS }}
|
|
# Password for decrypting `mac_certs`
|
|
mac_certs_password: ${{ secrets.MAC_CERTS_PASSWORD }}
|
|
# Base64-encoded code signing certificate for Windows
|
|
windows_certs: ${{ secrets.WINDOWS_CERTS }}
|
|
# Password for decrypting `windows_certs`
|
|
windows_certs_password: ${{ secrets.WINDOWS_CERTS_PASSWORD }}
|
|
# GitHub token, automatically provided to the action
|
|
# (No need to define this secret in the repo settings)
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
args: '--project packages/apps-electron'
|
|
build_script_name: build:release:electron
|
|
# If the commit is tagged with a version (e.g. "v1.0.0"),
|
|
# release the app after building
|
|
release: ${{ startsWith(github.ref, 'refs/tags/v') }}
|
|
env:
|
|
# macOS notarization API key
|
|
API_KEY_ID: ${{ secrets.API_KEY_ID }}
|
|
API_KEY_ISSUER_ID: ${{ secrets.API_KEY_ISSUER_ID }}
|