Skip to content

Commit 6a6ebf2

Browse files
authored
Merge pull request #25 from mrubyedge/introduce-runn
Introduce runn
2 parents fe629b6 + c418365 commit 6a6ebf2

23 files changed

Lines changed: 870 additions & 45 deletions

File tree

Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
name: CLI Integration Tests (runn)
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
paths:
8+
- '**'
9+
pull_request:
10+
paths:
11+
- 'uzumibi-cli/**'
12+
- '.github/workflows/runn-cli-tests.yml'
13+
workflow_dispatch:
14+
15+
env:
16+
CARGO_TERM_COLOR: always
17+
18+
jobs:
19+
basic-tests:
20+
name: Basic CLI tests (help, error_cases)
21+
runs-on: ubuntu-latest
22+
steps:
23+
- uses: actions/checkout@v4
24+
25+
- name: Install Rust toolchain
26+
uses: dtolnay/rust-toolchain@stable
27+
28+
- name: Cache cargo registry and build
29+
uses: actions/cache@v4
30+
with:
31+
path: |
32+
~/.cargo/registry
33+
~/.cargo/git
34+
target
35+
key: ${{ runner.os }}-cargo-cli-${{ hashFiles('**/Cargo.lock') }}
36+
restore-keys: |
37+
${{ runner.os }}-cargo-cli-
38+
39+
- name: Install runn
40+
uses: k1LoW/gh-setup@v1
41+
with:
42+
repo: k1LoW/runn
43+
bin-match: runn
44+
45+
- name: Run help tests
46+
working-directory: uzumibi-cli/tests/runn
47+
env:
48+
RUNN_SCOPES: "read:parent,run:exec"
49+
UZUMIBI_TEST_BINARY: ${{ github.workspace }}/target/release/uzumibi
50+
UZUMIBI_TEST_TMPDIR: ${{ runner.temp }}
51+
run: runn run help.yml --verbose
52+
53+
- name: Run error_cases tests
54+
working-directory: uzumibi-cli/tests/runn
55+
env:
56+
RUNN_SCOPES: "read:parent,run:exec"
57+
UZUMIBI_TEST_BINARY: ${{ github.workspace }}/target/release/uzumibi
58+
UZUMIBI_TEST_TMPDIR: ${{ runner.temp }}
59+
run: runn run error_cases.yml --verbose
60+
61+
cloudflare-test:
62+
name: Cloudflare template test
63+
runs-on: ubuntu-latest
64+
steps:
65+
- uses: actions/checkout@v4
66+
67+
- name: Install Rust toolchain
68+
uses: dtolnay/rust-toolchain@stable
69+
with:
70+
targets: wasm32-unknown-unknown
71+
72+
- name: Cache cargo registry and build
73+
uses: actions/cache@v4
74+
with:
75+
path: |
76+
~/.cargo/registry
77+
~/.cargo/git
78+
target
79+
key: ${{ runner.os }}-cargo-cloudflare-${{ hashFiles('**/Cargo.lock') }}
80+
restore-keys: |
81+
${{ runner.os }}-cargo-cloudflare-
82+
83+
- name: Setup Node.js
84+
uses: actions/setup-node@v4
85+
with:
86+
node-version: '22'
87+
88+
- name: Install pnpm
89+
uses: pnpm/action-setup@v4
90+
with:
91+
version: 10
92+
93+
- name: Install runn
94+
uses: k1LoW/gh-setup@v1
95+
with:
96+
repo: k1LoW/runn
97+
bin-match: runn
98+
99+
- name: Run cloudflare tests
100+
working-directory: uzumibi-cli/tests/runn
101+
env:
102+
RUNN_SCOPES: "read:parent,run:exec"
103+
UZUMIBI_TEST_BINARY: ${{ github.workspace }}/target/release/uzumibi
104+
UZUMIBI_TEST_TMPDIR: ${{ runner.temp }}
105+
run: runn run new_cloudflare.yml --verbose
106+
107+
cloudrun-test:
108+
name: Cloud Run template test
109+
runs-on: ubuntu-latest
110+
steps:
111+
- uses: actions/checkout@v4
112+
113+
- name: Install Rust toolchain
114+
uses: dtolnay/rust-toolchain@stable
115+
116+
- name: Cache cargo registry and build
117+
uses: actions/cache@v4
118+
with:
119+
path: |
120+
~/.cargo/registry
121+
~/.cargo/git
122+
target
123+
key: ${{ runner.os }}-cargo-cloudrun-${{ hashFiles('**/Cargo.lock') }}
124+
restore-keys: |
125+
${{ runner.os }}-cargo-cloudrun-
126+
127+
- name: Install runn
128+
uses: k1LoW/gh-setup@v1
129+
with:
130+
repo: k1LoW/runn
131+
bin-match: runn
132+
133+
- name: Run cloudrun tests
134+
working-directory: uzumibi-cli/tests/runn
135+
env:
136+
RUNN_SCOPES: "read:parent,run:exec"
137+
UZUMIBI_TEST_BINARY: ${{ github.workspace }}/target/release/uzumibi
138+
UZUMIBI_TEST_TMPDIR: ${{ runner.temp }}
139+
run: runn run new_cloudrun.yml --verbose
140+
141+
webworker-test:
142+
name: WebWorker template test
143+
runs-on: ubuntu-latest
144+
steps:
145+
- uses: actions/checkout@v4
146+
147+
- name: Install Rust toolchain
148+
uses: dtolnay/rust-toolchain@stable
149+
with:
150+
targets: wasm32-unknown-unknown
151+
152+
- name: Cache cargo registry and build
153+
uses: actions/cache@v4
154+
with:
155+
path: |
156+
~/.cargo/registry
157+
~/.cargo/git
158+
target
159+
key: ${{ runner.os }}-cargo-webworker-${{ hashFiles('**/Cargo.lock') }}
160+
restore-keys: |
161+
${{ runner.os }}-cargo-webworker-
162+
163+
- name: Install runn
164+
uses: k1LoW/gh-setup@v1
165+
with:
166+
repo: k1LoW/runn
167+
bin-match: runn
168+
169+
- name: Run webworker tests
170+
working-directory: uzumibi-cli/tests/runn
171+
env:
172+
RUNN_SCOPES: "read:parent,run:exec"
173+
UZUMIBI_TEST_BINARY: ${{ github.workspace }}/target/release/uzumibi
174+
UZUMIBI_TEST_TMPDIR: ${{ runner.temp }}
175+
run: runn run new_webworker.yml --verbose

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
node_modules/*
22
/target
3+
/tmp
4+
/.claude
35

46
*.out
57
*.wasm
8+
9+
.node-version

Cargo.lock

Lines changed: 28 additions & 39 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

uzumibi-art-router/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "uzumibi-art-router"
3-
version = "0.3.0"
3+
version = "0.3.1"
44
edition = "2024"
55
authors = ["Uchio Kondo <udzura@udzura.jp>"]
66
description = "Adaptive Radix Tree based http router for Uzumibi"

0 commit comments

Comments
 (0)