Build Windows #5
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build Windows | ||
on: | ||
workflow_dispatch: | ||
inputs: | ||
commitHash: | ||
description: 'Enter the commit hash to build (empty = the main branch or the branch that triggered the workflow)' | ||
required: false | ||
type: string | ||
signing-policy-slug: | ||
description: 'signing-policy-slug ("" for no signing, "test-signing", "release-signing" for valid signing)' | ||
required: false | ||
default: 'test-signing' | ||
build: | ||
description: 'Build Exe' | ||
required: false | ||
type: boolean | ||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v3 | ||
with: | ||
fetch-depth: 0 # Fetch all history for all branches and tags | ||
ref: ${{ github.event.inputs.commitHash || github.sha }} | ||
- name: Set up Python environment | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: '3.10' | ||
- name: Setup xvfb (Linux) | ||
if: runner.os == 'Linux' | ||
run: | | ||
sudo apt-get update | ||
sudo apt-get install -y xvfb \ | ||
libxkbcommon-x11-0 \ | ||
libxcb-icccm4 \ | ||
libxcb-image0 \ | ||
libxcb-keysyms1 \ | ||
libxcb-randr0 \ | ||
libxcb-render-util0 \ | ||
libxcb-xinerama0 \ | ||
libxcb-xinput0 \ | ||
libxcb-xfixes0 \ | ||
libxcb-shape0 \ | ||
libglib2.0-0 \ | ||
libgl1-mesa-dev \ | ||
'^libxcb.*-dev' \ | ||
libx11-xcb-dev \ | ||
libglu1-mesa-dev \ | ||
libxrender-dev \ | ||
libxi-dev \ | ||
libxkbcommon-dev \ | ||
libxkbcommon-x11-dev \ | ||
libsecp256k1-0 | ||
- name: Install Python dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install poetry | ||
poetry install | ||
- name: Run build script | ||
run: poetry run python tools/build.py --targets windows --commit None | ||
- name: Check for portable EXE file | ||
run: | | ||
if [ -z "$(find dist -type f -name '*portable.exe')" ]; then | ||
echo "Portable EXE file is missing" | ||
exit 1 | ||
fi | ||
- name: Check for setup EXE file | ||
run: | | ||
if [ -z "$(find dist -type f -name '*setup.exe')" ]; then | ||
echo "Setup EXE file is missing" | ||
exit 1 | ||
fi | ||
- name: Upload EXE Files from dist/ | ||
id: upload-unsigned-artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: dist | ||
path: dist/* # zip everything in the folder | ||
- id: signpath.io | ||
Check failure on line 92 in .github/workflows/build-windows.yml
|
||
if: ${{ github.event.inputs.signing-policy-slug != '' }} | ||
uses: signpath/[email protected] | ||
with: | ||
api-token: '${{ secrets.SIGNPATH_API_TOKEN }}' | ||
organization-id: '0981059c-bbd4-461c-abcf-b99bd074a723' | ||
project-slug: 'bitcoin-safe' | ||
signing-policy-slug: '${{ github.event.inputs.signing-policy-slug }}' | ||
github-artifact-id: '${{ steps.upload-unsigned-artifact.outputs.artifact-id }}' | ||
artifact-configuration-slug: 'Win' | ||
wait-for-completion: true | ||
output-artifact-directory: 'signpath-signed' | ||
- name: Upload Signed EXE Files from signpath-signed/ | ||
if: ${{ github.event.inputs.signing-policy-slug != '' }} | ||
id: upload-signed-artifact | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: signpath-signed | ||
path: signpath-signed/* # zip everything in the folder | ||