Skip to content

Commit a24b3f4

Browse files
committed
ci: add smoke test
1 parent b6754b2 commit a24b3f4

2 files changed

Lines changed: 66 additions & 3 deletions

File tree

.github/workflows/check-build.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ jobs:
66
check-build:
77
runs-on: ubuntu-latest
88
steps:
9-
- uses: actions/checkout@v2
10-
- uses: actions/setup-node@v2
9+
- uses: actions/checkout@v6
10+
- uses: actions/setup-node@v6
1111
with:
12-
node-version: "16"
12+
node-version: "24"
1313
- run: npm install
1414
- run: npm run build
1515
- run: git diff --exit-code

.github/workflows/smoke-test.yaml

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
name: Smoke test
2+
3+
on:
4+
push:
5+
pull_request:
6+
workflow_dispatch:
7+
8+
jobs:
9+
smoke-test:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: actions/checkout@v6
13+
14+
- uses: actions/setup-python@v6
15+
with:
16+
python-version: "3.x"
17+
18+
- name: Run basic script
19+
id: basic
20+
uses: ./
21+
with:
22+
util: false
23+
script: |
24+
print("smoke-ok")
25+
26+
- name: Verify basic script outputs
27+
run: |
28+
test "${{ steps.basic.outputs.error }}" = "false"
29+
test "${{ steps.basic.outputs.stderr }}" = ""
30+
grep -F "smoke-ok" <<< '${{ steps.basic.outputs.stdout }}'
31+
32+
- name: Run script with utility functions
33+
id: utility
34+
uses: ./
35+
with:
36+
util: true
37+
script: |
38+
set_output("utility_result", "utility-ok")
39+
print("utility-stdout")
40+
41+
- name: Verify utility script outputs
42+
run: |
43+
test "${{ steps.utility.outputs.error }}" = "false"
44+
grep -F "utility-ok" <<< '${{ steps.utility.outputs.utility_result }}'
45+
grep -F "utility-stdout" <<< '${{ steps.utility.outputs.stdout }}'
46+
47+
- name: Run non-fatal failing script
48+
id: failure
49+
uses: ./
50+
with:
51+
fail-on-error: false
52+
util: false
53+
script: |
54+
import sys
55+
print("failure-stdout")
56+
print("failure-stderr", file=sys.stderr)
57+
sys.exit(7)
58+
59+
- name: Verify non-fatal failure outputs
60+
run: |
61+
test "${{ steps.failure.outputs.error }}" = "true"
62+
grep -F "failure-stdout" <<< '${{ steps.failure.outputs.stdout }}'
63+
grep -F "failure-stderr" <<< '${{ steps.failure.outputs.stderr }}'

0 commit comments

Comments
 (0)