Skip to content

Commit 3ac612e

Browse files
committed
ci: fix GitHub Actions workflows for Bun/TypeScript build
- Bump Bun version from 1.1 to 1.3.5 across all workflows - Replace pkg-action with bun build --compile for native binaries - Convert workflows from npm to bun for dependency installation - Add package-lock.json for actions that require npm cache - Rename bin/lando.ts to bin/lando (file is JS despite .ts extension)
1 parent 234dbf6 commit 3ac612e

15 files changed

+11332
-76
lines changed

.github/workflows/deploy-npm.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
workflow_call:
55
inputs:
66
bun-version:
7-
default: "1.1"
7+
default: "1.3.5"
88
description: The bun version to use
99
required: false
1010
type: string

.github/workflows/pkg-binary.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ jobs:
4242
- name: Install bun
4343
uses: oven-sh/setup-bun@v2
4444
with:
45-
bun-version: "1.1"
45+
bun-version: "1.3.5"
4646
- name: Install dependencies
4747
run: bun install --frozen-lockfile
4848
- name: Install plugins

.github/workflows/pr-core-protected-tests.yml

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ jobs:
1919
- yaml
2020
node-version:
2121
- "20"
22+
bun-version:
23+
- "1.3.5"
2224
os:
2325
# - macos-14
2426
- ubuntu-24.04
@@ -34,31 +36,27 @@ jobs:
3436
with:
3537
node-version: ${{ matrix.node-version }}
3638
registry-url: https://registry.npmjs.org
37-
cache: npm
39+
- name: Install bun ${{ matrix.bun-version }}
40+
uses: oven-sh/setup-bun@v2
41+
with:
42+
bun-version: ${{ matrix.bun-version }}
3843
- name: Bundle Deps
3944
uses: lando/prepare-release-action@v3
4045
with:
4146
lando-plugin: true
4247
version: dev
4348
sync: false
44-
- name: Install pkg dependencies
45-
run: npm clean-install --prefer-offline --frozen-lockfile --production
46-
- name: Package into node binary
47-
uses: lando/pkg-action@v6
48-
id: pkg-action
49-
with:
50-
entrypoint: bin/lando
51-
filename: lando
52-
node-version: ${{ matrix.node-version }}
53-
options: --options dns-result-order=ipv4first
54-
upload: false
55-
pkg: "@yao-pkg/pkg@5.16.1"
56-
- name: Install full deps
57-
run: npm clean-install --prefer-offline --frozen-lockfile
58-
- name: Setup lando ${{ steps.pkg-action.outputs.file }}
49+
- name: Install dependencies
50+
run: bun install --frozen-lockfile
51+
- name: Build Bun binary
52+
id: build-binary
53+
run: |
54+
bun build ./bin/lando --compile --outfile dist/lando
55+
echo "file=$(pwd)/dist/lando" >> $GITHUB_OUTPUT
56+
- name: Setup lando ${{ steps.build-binary.outputs.file }}
5957
uses: lando/setup-lando@v3
6058
with:
61-
lando-version: ${{ steps.pkg-action.outputs.file }}
59+
lando-version: ${{ steps.build-binary.outputs.file }}
6260
telemetry: false
6361
config: |
6462
setup.skipCommonPlugins=true

.github/workflows/pr-core-tests.yml

Lines changed: 10 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ jobs:
6363
node-version:
6464
- "20"
6565
bun-version:
66-
- "1.1"
66+
- "1.3.5"
6767
os:
6868
# - macos-14
6969
- ubuntu-24.04
@@ -89,24 +89,18 @@ jobs:
8989
lando-plugin: true
9090
version: dev
9191
sync: false
92-
- name: Install pkg dependencies
93-
run: bun install --frozen-lockfile --production
94-
- name: Package into node binary
95-
uses: lando/pkg-action@v6
96-
id: pkg-action
97-
with:
98-
entrypoint: bin/lando
99-
filename: lando
100-
node-version: ${{ matrix.node-version }}
101-
options: --options dns-result-order=ipv4first
102-
upload: false
103-
pkg: "@yao-pkg/pkg@5.16.1"
104-
- name: Install full deps
92+
- name: Install dependencies
10593
run: bun install --frozen-lockfile
106-
- name: Setup lando ${{ steps.pkg-action.outputs.file }}
94+
- name: Build lando binary
95+
run: |
96+
bun build ./bin/lando --compile --outfile=dist/lando
97+
chmod +x dist/lando
98+
echo "file=$(pwd)/dist/lando" >> $GITHUB_OUTPUT
99+
id: build-binary
100+
- name: Setup lando ${{ steps.build-binary.outputs.file }}
107101
uses: lando/setup-lando@v3
108102
with:
109-
lando-version: ${{ steps.pkg-action.outputs.file }}
103+
lando-version: ${{ steps.build-binary.outputs.file }}
110104
telemetry: false
111105
config: |
112106
setup.skipCommonPlugins=true

.github/workflows/pr-docs-tests.yml

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
os:
1414
- ubuntu-24.04
1515
bun-version:
16-
- "1.1"
16+
- "1.3.5"
1717
steps:
1818
- name: Checkout code
1919
uses: actions/checkout@v6
@@ -49,7 +49,7 @@ jobs:
4949
node-version:
5050
- "20"
5151
bun-version:
52-
- "1.1"
52+
- "1.3.5"
5353
steps:
5454
- name: Checkout code
5555
uses: actions/checkout@v6
@@ -67,24 +67,17 @@ jobs:
6767
lando-plugin: true
6868
version: dev
6969
sync: false
70-
- name: Install pkg dependencies
71-
run: bun install --frozen-lockfile --production
72-
- name: Package into node binary
73-
uses: lando/pkg-action@v6
74-
id: pkg-action
75-
with:
76-
entrypoint: bin/lando
77-
filename: lando
78-
node-version: ${{ matrix.node-version }}
79-
options: --options dns-result-order=ipv4first
80-
upload: false
81-
pkg: "@yao-pkg/pkg@5.16.1"
82-
- name: Install full deps
70+
- name: Install dependencies
8371
run: bun install --frozen-lockfile
84-
- name: Setup lando ${{ steps.pkg-action.outputs.file }}
72+
- name: Build Bun binary
73+
id: build-binary
74+
run: |
75+
bun build ./bin/lando --compile --outfile dist/lando
76+
echo "file=$(pwd)/dist/lando" >> $GITHUB_OUTPUT
77+
- name: Setup lando ${{ steps.build-binary.outputs.file }}
8578
uses: lando/setup-lando@v3
8679
with:
87-
lando-version: ${{ steps.pkg-action.outputs.file }}
80+
lando-version: ${{ steps.build-binary.outputs.file }}
8881
telemetry: false
8982
config: |
9083
setup.skipCommonPlugins=true

.github/workflows/pr-license-check.yml

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,18 @@ jobs:
1010
matrix:
1111
os:
1212
- ubuntu-24.04
13-
node-version:
14-
- "20"
13+
bun-version:
14+
- "1.3.5"
1515
steps:
1616
- name: Checkout code
1717
uses: actions/checkout@v6
18-
- name: Install node ${{ matrix.node-version }}
19-
uses: actions/setup-node@v6
18+
- name: Install Bun ${{ matrix.bun-version }}
19+
uses: oven-sh/setup-bun@v2
2020
with:
21-
node-version: ${{ matrix.node-version }}
22-
cache: npm
21+
bun-version: ${{ matrix.bun-version }}
2322
- name: Install dependencies
24-
run: npm clean-install --prefer-offline --frozen-lockfile
25-
- name: Run license cehck
23+
run: bun install --frozen-lockfile
24+
- name: Run license check
2625
run: |
27-
npm install --global license-checker
28-
npx license-checker --production --summary
26+
bun add -g license-checker
27+
bunx license-checker --production --summary

.github/workflows/pr-linter.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
os:
1212
- ubuntu-24.04
1313
bun-version:
14-
- "1.1"
14+
- "1.3.5"
1515
steps:
1616
# Install deps and cache
1717
- name: Checkout code

.github/workflows/pr-release-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ jobs:
6161
strategy:
6262
matrix:
6363
bun-version:
64-
- "1.1"
64+
- "1.3.5"
6565
steps:
6666
- name: Checkout code
6767
uses: actions/checkout@v6

.github/workflows/pr-setup-linux-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
node-version:
1717
- "20"
1818
bun-version:
19-
- "1.1"
19+
- "1.3.5"
2020
os:
2121
- ubuntu-24.04
2222

.github/workflows/pr-setup-macos-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
node-version:
2020
- "20"
2121
bun-version:
22-
- "1.1"
22+
- "1.3.5"
2323
os:
2424
- macos-15
2525

0 commit comments

Comments
 (0)