mirror of
https://github.com/wavetermdev/waveterm
synced 2026-05-24 09:18:27 +00:00
I'm making steps to simplify our build dependencies, consolidating our C compiler requirements so we only depend on Zig. Before, we used Zig for x64 but not for arm64. This meant that users using an ARM dev machine would need to install `build-essentials` and Zig. We also required MinGW-w64 on Windows, which is a pain to install since it can be provided by a bunch of different tools, the smallest of which is like a 2GB install.
76 lines
2.3 KiB
YAML
76 lines
2.3 KiB
YAML
name: TestDriver.ai Build
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
tags:
|
|
- "v[0-9]+.[0-9]+.[0-9]+*"
|
|
pull_request:
|
|
# branches:
|
|
# - main
|
|
# paths-ignore:
|
|
# - "docs/**"
|
|
# - ".storybook/**"
|
|
# - ".vscode/**"
|
|
# - ".editorconfig"
|
|
# - ".gitignore"
|
|
# - ".prettierrc"
|
|
# - ".eslintrc.js"
|
|
# - "**/*.md"
|
|
schedule:
|
|
- cron: 0 21 * * *
|
|
workflow_dispatch: null
|
|
|
|
env:
|
|
GO_VERSION: "1.23"
|
|
NODE_VERSION: 22
|
|
|
|
permissions:
|
|
contents: read # To allow the action to read repository contents
|
|
pull-requests: write # To allow the action to create/update pull request comments
|
|
|
|
jobs:
|
|
build_and_upload:
|
|
name: Build for TestDriver.ai
|
|
runs-on: windows-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
# General build dependencies
|
|
- uses: actions/setup-go@v5
|
|
with:
|
|
go-version: ${{env.GO_VERSION}}
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: ${{env.NODE_VERSION}}
|
|
- name: Install Yarn
|
|
uses: nick-fields/retry@v3
|
|
with:
|
|
command: |
|
|
corepack enable
|
|
yarn install
|
|
timeout_minutes: 5
|
|
max_attempts: 3
|
|
- name: Install Task
|
|
uses: arduino/setup-task@v2
|
|
with:
|
|
version: 3.x
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
- name: Install Zig
|
|
uses: mlugg/setup-zig@v1
|
|
|
|
- name: Build
|
|
run: task package
|
|
env:
|
|
USE_SYSTEM_FPM: true # Ensure that the installed version of FPM is used rather than the bundled one.
|
|
CSC_IDENTITY_AUTO_DISCOVERY: false # disable codesign
|
|
shell: powershell # electron-builder's Windows code signing package has some compatibility issues with pwsh, so we need to use Windows Powershell
|
|
|
|
# Upload .exe as an artifact
|
|
- name: Upload .exe artifact
|
|
id: upload
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: windows-exe
|
|
path: make/*.exe
|