Skip to content

Commit edf5de1

Browse files
committed
feat: add input options for build configurations in workflows
1 parent f5eb1be commit edf5de1

File tree

3 files changed

+61
-0
lines changed

3 files changed

+61
-0
lines changed

.github/workflows/build-core.yml

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,31 @@ name: Reusable Build
33
on:
44
workflow_dispatch:
55
inputs:
6+
run_tests:
7+
description: "Run test job"
8+
type: boolean
9+
required: false
10+
default: true
11+
build_macos_arm64:
12+
description: "Build macOS ARM64"
13+
type: boolean
14+
required: false
15+
default: true
16+
build_macos_amd64:
17+
description: "Build macOS AMD64"
18+
type: boolean
19+
required: false
20+
default: true
21+
build_windows_amd64:
22+
description: "Build Windows AMD64"
23+
type: boolean
24+
required: false
25+
default: true
26+
build_linux_amd64:
27+
description: "Build Linux AMD64"
28+
type: boolean
29+
required: false
30+
default: true
631
require_macos_notarize:
732
description: "Require macOS signing + notarization (needs MACOS_* and APPLE_API_* secrets)"
833
type: boolean
@@ -20,6 +45,26 @@ on:
2045
default: 10
2146
workflow_call:
2247
inputs:
48+
run_tests:
49+
type: boolean
50+
required: false
51+
default: true
52+
build_macos_arm64:
53+
type: boolean
54+
required: false
55+
default: true
56+
build_macos_amd64:
57+
type: boolean
58+
required: false
59+
default: true
60+
build_windows_amd64:
61+
type: boolean
62+
required: false
63+
default: true
64+
build_linux_amd64:
65+
type: boolean
66+
required: false
67+
default: true
2368
require_macos_notarize:
2469
type: boolean
2570
required: false
@@ -59,6 +104,7 @@ permissions:
59104

60105
jobs:
61106
test:
107+
if: ${{ inputs.run_tests }}
62108
runs-on: ubuntu-latest
63109
steps:
64110
- uses: actions/checkout@v3
@@ -89,6 +135,7 @@ jobs:
89135
libxtst-dev \
90136
libayatana-appindicator3-dev \
91137
libkeybinder-3.0-dev \
138+
libfuse2 \
92139
xvfb
93140
- name: Setup Go
94141
uses: actions/setup-go@v5
@@ -101,6 +148,7 @@ jobs:
101148
build_macos_arm64:
102149
name: Build macOS ARM64
103150
needs: test
151+
if: ${{ always() && inputs.build_macos_arm64 && (!inputs.run_tests || needs.test.result == 'success') }}
104152
runs-on: macos-latest
105153
steps:
106154
- uses: actions/checkout@v3
@@ -223,6 +271,7 @@ jobs:
223271
build_macos_amd64:
224272
name: Build macOS AMD64
225273
needs: test
274+
if: ${{ always() && inputs.build_macos_amd64 && (!inputs.run_tests || needs.test.result == 'success') }}
226275
runs-on: macos-15-intel
227276
steps:
228277
- uses: actions/checkout@v3
@@ -345,6 +394,7 @@ jobs:
345394
build_windows_amd64:
346395
name: Build Windows AMD64
347396
needs: test
397+
if: ${{ always() && inputs.build_windows_amd64 && (!inputs.run_tests || needs.test.result == 'success') }}
348398
runs-on: windows-latest
349399
steps:
350400
- uses: actions/checkout@v3
@@ -448,6 +498,7 @@ jobs:
448498
build_linux_amd64:
449499
name: Build Linux AMD64
450500
needs: test
501+
if: ${{ always() && inputs.build_linux_amd64 && (!inputs.run_tests || needs.test.result == 'success') }}
451502
runs-on: ubuntu-latest
452503
steps:
453504
- uses: actions/checkout@v3

.github/workflows/build.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@ jobs:
1414
build:
1515
uses: ./.github/workflows/build-core.yml
1616
with:
17+
run_tests: false
18+
build_macos_arm64: false
19+
build_macos_amd64: true
20+
build_windows_amd64: false
21+
build_linux_amd64: true
1722
require_macos_notarize: true
1823
require_windows_signpath: true
1924
artifact_retention_days: 10

.github/workflows/release.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@ jobs:
1414
build:
1515
uses: ./.github/workflows/build-core.yml
1616
with:
17+
run_tests: true
18+
build_macos_arm64: true
19+
build_macos_amd64: true
20+
build_windows_amd64: true
21+
build_linux_amd64: true
1722
require_macos_notarize: true
1823
require_windows_signpath: true
1924
artifact_retention_days: 10

0 commit comments

Comments
 (0)