Skip to content

Commit 09aa62f

Browse files
blacksmith.sh: Migrate workflows to Blacksmith (#7148)
Co-authored-by: blacksmith-sh[bot] <157653362+blacksmith-sh[bot]@users.noreply.github.com>
1 parent cbc26a5 commit 09aa62f

13 files changed

+49
-49
lines changed

.github/workflows/clean-up.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ on:
4646

4747
jobs:
4848
del_runs:
49-
runs-on: ubuntu-latest
49+
runs-on: blacksmith-4vcpu-ubuntu-2204
5050
permissions:
5151
actions: write
5252
contents: read

.github/workflows/deploy-docs.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,18 @@ jobs:
2424
build:
2525
if: github.repository == 'All-Hands-AI/OpenHands'
2626
name: Build Docusaurus
27-
runs-on: ubuntu-latest
27+
runs-on: blacksmith-4vcpu-ubuntu-2204
2828
steps:
2929
- uses: actions/checkout@v4
3030
with:
3131
fetch-depth: 0
32-
- uses: actions/setup-node@v4
32+
- uses: useblacksmith/setup-node@v5
3333
with:
3434
node-version: 18
3535
cache: npm
3636
cache-dependency-path: docs/package-lock.json
3737
- name: Set up Python
38-
uses: actions/setup-python@v5
38+
uses: useblacksmith/setup-python@v6
3939
with:
4040
python-version: '3.12'
4141
- name: Install dependencies
@@ -52,7 +52,7 @@ jobs:
5252
deploy:
5353
if: github.ref == 'refs/heads/main' && github.repository == 'All-Hands-AI/OpenHands'
5454
name: Deploy to GitHub Pages
55-
runs-on: ubuntu-latest
55+
runs-on: blacksmith-4vcpu-ubuntu-2204
5656
# This job only runs on "main" so only run one of these jobs at a time
5757
# otherwise it will fail if one is already running
5858
concurrency:

.github/workflows/dummy-agent-test.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ concurrency:
1616

1717
jobs:
1818
test:
19-
runs-on: ubuntu-latest
19+
runs-on: blacksmith-4vcpu-ubuntu-2204
2020
steps:
2121
- uses: actions/checkout@v4
2222
- name: Set up Docker Buildx
@@ -25,13 +25,13 @@ jobs:
2525
- name: Install tmux
2626
run: sudo apt-get update && sudo apt-get install -y tmux
2727
- name: Setup Node.js
28-
uses: actions/setup-node@v4
28+
uses: useblacksmith/setup-node@v5
2929
with:
3030
node-version: '22.x'
3131
- name: Install poetry via pipx
3232
run: pipx install poetry
3333
- name: Set up Python
34-
uses: actions/setup-python@v5
34+
uses: useblacksmith/setup-python@v6
3535
with:
3636
python-version: '3.12'
3737
cache: 'poetry'

.github/workflows/fe-unit-tests.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
# Run frontend unit tests
2222
fe-test:
2323
name: FE Unit Tests
24-
runs-on: ubuntu-latest
24+
runs-on: blacksmith-4vcpu-ubuntu-2204
2525
strategy:
2626
matrix:
2727
node-version: [20, 22]
@@ -30,7 +30,7 @@ jobs:
3030
- name: Checkout
3131
uses: actions/checkout@v4
3232
- name: Set up Node.js
33-
uses: actions/setup-node@v4
33+
uses: useblacksmith/setup-node@v5
3434
with:
3535
node-version: ${{ matrix.node-version }}
3636
- name: Install dependencies

.github/workflows/ghcr-build.yml

+16-16
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
# Builds the OpenHands Docker images
3333
ghcr_build_app:
3434
name: Build App Image
35-
runs-on: ubuntu-latest
35+
runs-on: blacksmith-4vcpu-ubuntu-2204
3636
permissions:
3737
contents: read
3838
packages: write
@@ -80,7 +80,7 @@ jobs:
8080
# Builds the runtime Docker images
8181
ghcr_build_runtime:
8282
name: Build Image
83-
runs-on: ubuntu-latest
83+
runs-on: blacksmith-4vcpu-ubuntu-2204
8484
permissions:
8585
contents: read
8686
packages: write
@@ -108,11 +108,11 @@ jobs:
108108
id: buildx
109109
uses: docker/setup-buildx-action@v3
110110
- name: Set up Python
111-
uses: actions/setup-python@v5
111+
uses: useblacksmith/setup-python@v6
112112
with:
113113
python-version: '3.12'
114114
- name: Cache Poetry dependencies
115-
uses: actions/cache@v4
115+
uses: useblacksmith/cache@v5
116116
with:
117117
path: |
118118
~/.cache/pypoetry
@@ -150,7 +150,7 @@ jobs:
150150

151151
verify_hash_equivalence_in_runtime_and_app:
152152
name: Verify Hash Equivalence in Runtime and Docker images
153-
runs-on: ubuntu-latest
153+
runs-on: blacksmith-4vcpu-ubuntu-2204
154154
needs: [ghcr_build_runtime, ghcr_build_app]
155155
strategy:
156156
fail-fast: false
@@ -161,7 +161,7 @@ jobs:
161161
with:
162162
ref: ${{ github.event.pull_request.head.sha }}
163163
- name: Cache Poetry dependencies
164-
uses: actions/cache@v4
164+
uses: useblacksmith/cache@v5
165165
with:
166166
path: |
167167
~/.cache/pypoetry
@@ -170,7 +170,7 @@ jobs:
170170
restore-keys: |
171171
${{ runner.os }}-poetry-
172172
- name: Set up Python
173-
uses: actions/setup-python@v5
173+
uses: useblacksmith/setup-python@v6
174174
with:
175175
python-version: '3.12'
176176
- name: Install poetry via pipx
@@ -204,7 +204,7 @@ jobs:
204204
test_runtime_root:
205205
name: RT Unit Tests (Root)
206206
needs: [ghcr_build_runtime]
207-
runs-on: ubuntu-latest
207+
runs-on: blacksmith-4vcpu-ubuntu-2204
208208
strategy:
209209
fail-fast: false
210210
matrix:
@@ -226,7 +226,7 @@ jobs:
226226
run: |
227227
docker load --input /tmp/runtime-${{ matrix.base_image }}.tar
228228
- name: Cache Poetry dependencies
229-
uses: actions/cache@v4
229+
uses: useblacksmith/cache@v5
230230
with:
231231
path: |
232232
~/.cache/pypoetry
@@ -235,7 +235,7 @@ jobs:
235235
restore-keys: |
236236
${{ runner.os }}-poetry-
237237
- name: Set up Python
238-
uses: actions/setup-python@v5
238+
uses: useblacksmith/setup-python@v6
239239
with:
240240
python-version: '3.12'
241241
- name: Install poetry via pipx
@@ -269,7 +269,7 @@ jobs:
269269
# Run unit tests with the Docker runtime Docker images as openhands user
270270
test_runtime_oh:
271271
name: RT Unit Tests (openhands)
272-
runs-on: ubuntu-latest
272+
runs-on: blacksmith-4vcpu-ubuntu-2204
273273
needs: [ghcr_build_runtime]
274274
strategy:
275275
matrix:
@@ -291,7 +291,7 @@ jobs:
291291
run: |
292292
docker load --input /tmp/runtime-${{ matrix.base_image }}.tar
293293
- name: Cache Poetry dependencies
294-
uses: actions/cache@v4
294+
uses: useblacksmith/cache@v5
295295
with:
296296
path: |
297297
~/.cache/pypoetry
@@ -300,7 +300,7 @@ jobs:
300300
restore-keys: |
301301
${{ runner.os }}-poetry-
302302
- name: Set up Python
303-
uses: actions/setup-python@v5
303+
uses: useblacksmith/setup-python@v6
304304
with:
305305
python-version: '3.12'
306306
- name: Install poetry via pipx
@@ -338,7 +338,7 @@ jobs:
338338
runtime_tests_check_success:
339339
name: All Runtime Tests Passed
340340
if: ${{ !cancelled() && !contains(needs.*.result, 'failure') && !contains(needs.*.result, 'cancelled') }}
341-
runs-on: ubuntu-latest
341+
runs-on: blacksmith-4vcpu-ubuntu-2204
342342
needs: [test_runtime_root, test_runtime_oh, verify_hash_equivalence_in_runtime_and_app]
343343
steps:
344344
- name: All tests passed
@@ -347,7 +347,7 @@ jobs:
347347
runtime_tests_check_fail:
348348
name: All Runtime Tests Passed
349349
if: ${{ cancelled() || contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }}
350-
runs-on: ubuntu-latest
350+
runs-on: blacksmith-4vcpu-ubuntu-2204
351351
needs: [test_runtime_root, test_runtime_oh, verify_hash_equivalence_in_runtime_and_app]
352352
steps:
353353
- name: Some tests failed
@@ -358,7 +358,7 @@ jobs:
358358
name: Update PR Description
359359
if: github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork && github.actor != 'dependabot[bot]'
360360
needs: [ghcr_build_runtime]
361-
runs-on: ubuntu-latest
361+
runs-on: blacksmith-4vcpu-ubuntu-2204
362362
steps:
363363
- name: Checkout
364364
uses: actions/checkout@v4

.github/workflows/integration-runner.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ env:
1818
jobs:
1919
run-integration-tests:
2020
if: github.event.label.name == 'integration-test' || github.event_name == 'workflow_dispatch' || github.event_name == 'schedule'
21-
runs-on: ubuntu-latest
21+
runs-on: blacksmith-4vcpu-ubuntu-2204
2222
permissions:
2323
contents: "read"
2424
id-token: "write"
@@ -35,13 +35,13 @@ jobs:
3535
run: pipx install poetry
3636

3737
- name: Set up Python
38-
uses: actions/setup-python@v5
38+
uses: useblacksmith/setup-python@v6
3939
with:
4040
python-version: ${{ matrix.python-version }}
4141
cache: "poetry"
4242

4343
- name: Setup Node.js
44-
uses: actions/setup-node@v4
44+
uses: useblacksmith/setup-node@v5
4545
with:
4646
node-version: '22.x'
4747

.github/workflows/lint-fix.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
lint-fix-frontend:
1010
if: github.event.label.name == 'lint-fix'
1111
name: Fix frontend linting issues
12-
runs-on: ubuntu-latest
12+
runs-on: blacksmith-4vcpu-ubuntu-2204
1313
permissions:
1414
contents: write
1515
pull-requests: write
@@ -22,7 +22,7 @@ jobs:
2222
token: ${{ secrets.GITHUB_TOKEN }}
2323

2424
- name: Install Node.js 20
25-
uses: actions/setup-node@v4
25+
uses: useblacksmith/setup-node@v5
2626
with:
2727
node-version: 20
2828
- name: Install frontend dependencies
@@ -52,7 +52,7 @@ jobs:
5252
lint-fix-python:
5353
if: github.event.label.name == 'lint-fix'
5454
name: Fix Python linting issues
55-
runs-on: ubuntu-latest
55+
runs-on: blacksmith-4vcpu-ubuntu-2204
5656
permissions:
5757
contents: write
5858
pull-requests: write
@@ -65,7 +65,7 @@ jobs:
6565
token: ${{ secrets.GITHUB_TOKEN }}
6666

6767
- name: Set up python
68-
uses: actions/setup-python@v5
68+
uses: useblacksmith/setup-python@v6
6969
with:
7070
python-version: 3.12
7171
cache: 'pip'

.github/workflows/lint.yml

+6-6
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ jobs:
1919
# Run lint on the frontend code
2020
lint-frontend:
2121
name: Lint frontend
22-
runs-on: ubuntu-latest
22+
runs-on: blacksmith-4vcpu-ubuntu-2204
2323
steps:
2424
- uses: actions/checkout@v4
2525
- name: Install Node.js 20
26-
uses: actions/setup-node@v4
26+
uses: useblacksmith/setup-node@v5
2727
with:
2828
node-version: 20
2929
- name: Install dependencies
@@ -39,13 +39,13 @@ jobs:
3939
# Run lint on the python code
4040
lint-python:
4141
name: Lint python
42-
runs-on: ubuntu-latest
42+
runs-on: blacksmith-4vcpu-ubuntu-2204
4343
steps:
4444
- uses: actions/checkout@v4
4545
with:
4646
fetch-depth: 0
4747
- name: Set up python
48-
uses: actions/setup-python@v5
48+
uses: useblacksmith/setup-python@v6
4949
with:
5050
python-version: 3.12
5151
cache: 'pip'
@@ -57,11 +57,11 @@ jobs:
5757
# Check version consistency across documentation
5858
check-version-consistency:
5959
name: Check version consistency
60-
runs-on: ubuntu-latest
60+
runs-on: blacksmith-4vcpu-ubuntu-2204
6161
steps:
6262
- uses: actions/checkout@v4
6363
- name: Set up python
64-
uses: actions/setup-python@v5
64+
uses: useblacksmith/setup-python@v6
6565
with:
6666
python-version: 3.12
6767
- name: Run version consistency check

.github/workflows/openhands-resolver.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -74,13 +74,13 @@ jobs:
7474
(github.event.review.author_association == 'OWNER' || github.event.review.author_association == 'COLLABORATOR' || github.event.review.author_association == 'MEMBER')
7575
)
7676
)
77-
runs-on: ubuntu-latest
77+
runs-on: blacksmith-4vcpu-ubuntu-2204
7878
steps:
7979
- name: Checkout repository
8080
uses: actions/checkout@v4
8181

8282
- name: Set up Python
83-
uses: actions/setup-python@v5
83+
uses: useblacksmith/setup-python@v6
8484
with:
8585
python-version: "3.12"
8686

@@ -106,7 +106,7 @@ jobs:
106106
contains(github.event.review.body, '@openhands-agent-exp')
107107
)
108108
)
109-
uses: actions/cache@v4
109+
uses: useblacksmith/cache@v5
110110
with:
111111
path: ${{ env.pythonLocation }}/lib/python3.12/site-packages/*
112112
key: ${{ runner.os }}-pip-openhands-resolver-${{ hashFiles('/tmp/requirements.txt') }}

.github/workflows/py-unit-tests.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
# Run python unit tests on Linux
2020
test-on-linux:
2121
name: Python Unit Tests on Linux
22-
runs-on: ubuntu-latest
22+
runs-on: blacksmith-4vcpu-ubuntu-2204
2323
env:
2424
INSTALL_DOCKER: '0' # Set to '0' to skip Docker installation
2525
strategy:
@@ -33,13 +33,13 @@ jobs:
3333
- name: Install tmux
3434
run: sudo apt-get update && sudo apt-get install -y tmux
3535
- name: Setup Node.js
36-
uses: actions/setup-node@v4
36+
uses: useblacksmith/setup-node@v5
3737
with:
3838
node-version: '22.x'
3939
- name: Install poetry via pipx
4040
run: pipx install poetry
4141
- name: Set up Python
42-
uses: actions/setup-python@v5
42+
uses: useblacksmith/setup-python@v6
4343
with:
4444
python-version: ${{ matrix.python-version }}
4545
cache: 'poetry'

.github/workflows/pypi-release.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ on:
1212

1313
jobs:
1414
release:
15-
runs-on: ubuntu-latest
15+
runs-on: blacksmith-4vcpu-ubuntu-2204
1616
steps:
1717
- uses: actions/checkout@v4
18-
- uses: actions/setup-python@v5
18+
- uses: useblacksmith/setup-python@v6
1919
with:
2020
python-version: 3.12
2121
- name: Install Poetry

.github/workflows/run-eval.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
trigger-job:
1111
name: Trigger remote eval job
1212
if: ${{ github.event.label.name == 'run-eval-xs' || github.event.label.name == 'run-eval-s' || github.event.label.name == 'run-eval-m' }}
13-
runs-on: ubuntu-latest
13+
runs-on: blacksmith-4vcpu-ubuntu-2204
1414

1515
steps:
1616
- name: Checkout PR branch

0 commit comments

Comments
 (0)