From 83b26c215cfd878d182a99bd576e3884234c66b4 Mon Sep 17 00:00:00 2001 From: neverland Date: Thu, 27 Aug 2026 21:50:47 +0800 Subject: [PATCH 1/2] feat: add Rstack CLI ecosystem suites --- .github/workflows/ci.yml | 6 ++++++ .../rsbuild-ecosystem-ci-from-commit.yml | 2 ++ .../workflows/rsbuild-ecosystem-ci-from-pr.yml | 2 ++ .../workflows/rsbuild-ecosystem-ci-selected.yml | 2 ++ .../workflows/rslib-ecosystem-ci-from-commit.yml | 2 ++ .github/workflows/rslib-ecosystem-ci-from-pr.yml | 2 ++ .github/workflows/rslib-ecosystem-ci-selected.yml | 2 ++ .../rspress-ecosystem-ci-from-commit.yml | 2 ++ .../workflows/rspress-ecosystem-ci-from-pr.yml | 2 ++ .../workflows/rspress-ecosystem-ci-selected.yml | 2 ++ .../workflows/rstest-ecosystem-ci-from-commit.yml | 2 ++ .github/workflows/rstest-ecosystem-ci-from-pr.yml | 2 ++ .../workflows/rstest-ecosystem-ci-selected.yml | 2 ++ tests/rsbuild/rstack-cli.ts | 1 + tests/rslib/rstack-cli.ts | 1 + tests/rspress/rstack-cli.ts | 15 +++++++++++++++ tests/rstest/rstack-cli.ts | 1 + tests/shared/rstack-cli.ts | 13 +++++++++++++ 18 files changed, 61 insertions(+) create mode 100644 tests/rsbuild/rstack-cli.ts create mode 100644 tests/rslib/rstack-cli.ts create mode 100644 tests/rspress/rstack-cli.ts create mode 100644 tests/rstest/rstack-cli.ts create mode 100644 tests/shared/rstack-cli.ts diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 89acbc15..f35101d8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,6 +25,8 @@ jobs: os: ubuntu-latest - suite: examples os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest - suite: lynx-stack os: ubuntu-latest fail-fast: false @@ -59,6 +61,8 @@ jobs: os: ubuntu-latest - suite: modernjs os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest - suite: lynx-stack os: ubuntu-latest fail-fast: false @@ -96,6 +100,8 @@ jobs: os: ubuntu-latest - suite: modernjs os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest fail-fast: false runs-on: ${{ matrix.os }} name: rstest (${{ matrix.suite }}) diff --git a/.github/workflows/rsbuild-ecosystem-ci-from-commit.yml b/.github/workflows/rsbuild-ecosystem-ci-from-commit.yml index 58ee2d1f..70e2cbe1 100644 --- a/.github/workflows/rsbuild-ecosystem-ci-from-commit.yml +++ b/.github/workflows/rsbuild-ecosystem-ci-from-commit.yml @@ -104,6 +104,8 @@ jobs: os: ubuntu-latest - suite: examples os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest - suite: lynx-stack os: ubuntu-latest fail-fast: false diff --git a/.github/workflows/rsbuild-ecosystem-ci-from-pr.yml b/.github/workflows/rsbuild-ecosystem-ci-from-pr.yml index 96e914f5..e5f6fce5 100644 --- a/.github/workflows/rsbuild-ecosystem-ci-from-pr.yml +++ b/.github/workflows/rsbuild-ecosystem-ci-from-pr.yml @@ -104,6 +104,8 @@ jobs: os: ubuntu-latest - suite: examples os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest - suite: lynx-stack os: ubuntu-latest fail-fast: false diff --git a/.github/workflows/rsbuild-ecosystem-ci-selected.yml b/.github/workflows/rsbuild-ecosystem-ci-selected.yml index d1cd780c..dca8ddc0 100644 --- a/.github/workflows/rsbuild-ecosystem-ci-selected.yml +++ b/.github/workflows/rsbuild-ecosystem-ci-selected.yml @@ -110,6 +110,8 @@ jobs: os: ubuntu-latest - suite: examples os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest - suite: lynx-stack os: ubuntu-latest fail-fast: false diff --git a/.github/workflows/rslib-ecosystem-ci-from-commit.yml b/.github/workflows/rslib-ecosystem-ci-from-commit.yml index d3b4c8f2..10fcf972 100644 --- a/.github/workflows/rslib-ecosystem-ci-from-commit.yml +++ b/.github/workflows/rslib-ecosystem-ci-from-commit.yml @@ -104,6 +104,8 @@ jobs: os: ubuntu-latest - suite: modernjs os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest - suite: lynx-stack os: ubuntu-latest fail-fast: false diff --git a/.github/workflows/rslib-ecosystem-ci-from-pr.yml b/.github/workflows/rslib-ecosystem-ci-from-pr.yml index e2c69160..ecd9311b 100644 --- a/.github/workflows/rslib-ecosystem-ci-from-pr.yml +++ b/.github/workflows/rslib-ecosystem-ci-from-pr.yml @@ -104,6 +104,8 @@ jobs: os: ubuntu-latest - suite: modernjs os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest - suite: lynx-stack os: ubuntu-latest fail-fast: false diff --git a/.github/workflows/rslib-ecosystem-ci-selected.yml b/.github/workflows/rslib-ecosystem-ci-selected.yml index 0bd1b24e..3c8c9231 100644 --- a/.github/workflows/rslib-ecosystem-ci-selected.yml +++ b/.github/workflows/rslib-ecosystem-ci-selected.yml @@ -110,6 +110,8 @@ jobs: os: ubuntu-latest - suite: modernjs os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest - suite: lynx-stack os: ubuntu-latest fail-fast: false diff --git a/.github/workflows/rspress-ecosystem-ci-from-commit.yml b/.github/workflows/rspress-ecosystem-ci-from-commit.yml index 64433265..e08d8d45 100644 --- a/.github/workflows/rspress-ecosystem-ci-from-commit.yml +++ b/.github/workflows/rspress-ecosystem-ci-from-commit.yml @@ -100,6 +100,8 @@ jobs: os: ubuntu-latest - suite: rstest os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest fail-fast: false runs-on: ${{ matrix.os }} name: execute-all (${{ matrix.suite }}) diff --git a/.github/workflows/rspress-ecosystem-ci-from-pr.yml b/.github/workflows/rspress-ecosystem-ci-from-pr.yml index 7397fa0f..7b984b72 100644 --- a/.github/workflows/rspress-ecosystem-ci-from-pr.yml +++ b/.github/workflows/rspress-ecosystem-ci-from-pr.yml @@ -97,6 +97,8 @@ jobs: os: ubuntu-latest - suite: rstest os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest fail-fast: false runs-on: ${{ matrix.os }} name: execute-all (${{ matrix.suite }}) diff --git a/.github/workflows/rspress-ecosystem-ci-selected.yml b/.github/workflows/rspress-ecosystem-ci-selected.yml index ac68a982..df4f5788 100644 --- a/.github/workflows/rspress-ecosystem-ci-selected.yml +++ b/.github/workflows/rspress-ecosystem-ci-selected.yml @@ -103,6 +103,8 @@ jobs: os: ubuntu-latest - suite: rstest os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest fail-fast: false runs-on: ${{ matrix.os }} name: execute-all (${{ matrix.suite }}) diff --git a/.github/workflows/rstest-ecosystem-ci-from-commit.yml b/.github/workflows/rstest-ecosystem-ci-from-commit.yml index b11391c5..00198cd3 100644 --- a/.github/workflows/rstest-ecosystem-ci-from-commit.yml +++ b/.github/workflows/rstest-ecosystem-ci-from-commit.yml @@ -106,6 +106,8 @@ jobs: os: ubuntu-latest - suite: examples os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest fail-fast: false runs-on: ${{ matrix.os }} name: execute-all (${{ matrix.suite }}) diff --git a/.github/workflows/rstest-ecosystem-ci-from-pr.yml b/.github/workflows/rstest-ecosystem-ci-from-pr.yml index 8ed4a7f9..23dcd8b6 100644 --- a/.github/workflows/rstest-ecosystem-ci-from-pr.yml +++ b/.github/workflows/rstest-ecosystem-ci-from-pr.yml @@ -103,6 +103,8 @@ jobs: os: ubuntu-latest - suite: examples os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest fail-fast: false runs-on: ${{ matrix.os }} name: execute-all (${{ matrix.suite }}) diff --git a/.github/workflows/rstest-ecosystem-ci-selected.yml b/.github/workflows/rstest-ecosystem-ci-selected.yml index e555c2f9..68f41c07 100644 --- a/.github/workflows/rstest-ecosystem-ci-selected.yml +++ b/.github/workflows/rstest-ecosystem-ci-selected.yml @@ -112,6 +112,8 @@ jobs: os: ubuntu-latest - suite: examples os: ubuntu-latest + - suite: rstack-cli + os: ubuntu-latest fail-fast: false runs-on: ${{ matrix.os }} name: execute-all (${{ matrix.suite }}) diff --git a/tests/rsbuild/rstack-cli.ts b/tests/rsbuild/rstack-cli.ts new file mode 100644 index 00000000..25e4324b --- /dev/null +++ b/tests/rsbuild/rstack-cli.ts @@ -0,0 +1 @@ +export { test } from '../shared/rstack-cli'; diff --git a/tests/rslib/rstack-cli.ts b/tests/rslib/rstack-cli.ts new file mode 100644 index 00000000..25e4324b --- /dev/null +++ b/tests/rslib/rstack-cli.ts @@ -0,0 +1 @@ +export { test } from '../shared/rstack-cli'; diff --git a/tests/rspress/rstack-cli.ts b/tests/rspress/rstack-cli.ts new file mode 100644 index 00000000..8823892f --- /dev/null +++ b/tests/rspress/rstack-cli.ts @@ -0,0 +1,15 @@ +import type { RunOptions } from '../../types'; +import { cd, runInRepo } from '../../utils'; + +export async function test(options: RunOptions) { + await runInRepo({ + ...options, + repo: 'rstackjs/rstack-cli', + branch: process.env.RSTACK_CLI_REF ?? 'main', + build: 'node --run build', + beforeTest: async () => { + cd('./website'); + }, + test: ['build'], + }); +} diff --git a/tests/rstest/rstack-cli.ts b/tests/rstest/rstack-cli.ts new file mode 100644 index 00000000..25e4324b --- /dev/null +++ b/tests/rstest/rstack-cli.ts @@ -0,0 +1 @@ +export { test } from '../shared/rstack-cli'; diff --git a/tests/shared/rstack-cli.ts b/tests/shared/rstack-cli.ts new file mode 100644 index 00000000..2b673dbf --- /dev/null +++ b/tests/shared/rstack-cli.ts @@ -0,0 +1,13 @@ +import type { RunOptions } from '../../types'; +import { runInRepo } from '../../utils'; + +export async function test(options: RunOptions) { + await runInRepo({ + ...options, + repo: 'rstackjs/rstack-cli', + branch: process.env.RSTACK_CLI_REF ?? 'main', + build: 'node --run build', + beforeTest: 'pnpm --filter rstack build:native:ci', + test: ['test'], + }); +} From be343a80f4ebc321800fafc5633830a34f542b46 Mon Sep 17 00:00:00 2001 From: neverland Date: Fri, 28 Aug 2026 10:15:34 +0800 Subject: [PATCH 2/2] fix: expose Rstack CLI in workflow inputs --- .github/workflows/rsbuild-ecosystem-ci-from-commit.yml | 1 + .github/workflows/rsbuild-ecosystem-ci-from-pr.yml | 1 + .github/workflows/rsbuild-ecosystem-ci-selected.yml | 1 + .github/workflows/rslib-ecosystem-ci-from-commit.yml | 1 + .github/workflows/rslib-ecosystem-ci-from-pr.yml | 1 + .github/workflows/rslib-ecosystem-ci-selected.yml | 1 + .github/workflows/rspress-ecosystem-ci-from-commit.yml | 1 + .github/workflows/rspress-ecosystem-ci-from-pr.yml | 1 + .github/workflows/rspress-ecosystem-ci-selected.yml | 1 + .github/workflows/rstest-ecosystem-ci-from-commit.yml | 1 + .github/workflows/rstest-ecosystem-ci-from-pr.yml | 1 + .github/workflows/rstest-ecosystem-ci-selected.yml | 1 + 12 files changed, 12 insertions(+) diff --git a/.github/workflows/rsbuild-ecosystem-ci-from-commit.yml b/.github/workflows/rsbuild-ecosystem-ci-from-commit.yml index 70e2cbe1..09252b95 100644 --- a/.github/workflows/rsbuild-ecosystem-ci-from-commit.yml +++ b/.github/workflows/rsbuild-ecosystem-ci-from-commit.yml @@ -30,6 +30,7 @@ on: - plugins - modernjs - examples + - rstack-cli - lynx-stack suiteRefType: description: 'type of suite ref to use' diff --git a/.github/workflows/rsbuild-ecosystem-ci-from-pr.yml b/.github/workflows/rsbuild-ecosystem-ci-from-pr.yml index e5f6fce5..6b86a557 100644 --- a/.github/workflows/rsbuild-ecosystem-ci-from-pr.yml +++ b/.github/workflows/rsbuild-ecosystem-ci-from-pr.yml @@ -35,6 +35,7 @@ on: - plugins - modernjs - examples + - rstack-cli - lynx-stack suiteRefType: description: 'type of suite ref to use' diff --git a/.github/workflows/rsbuild-ecosystem-ci-selected.yml b/.github/workflows/rsbuild-ecosystem-ci-selected.yml index dca8ddc0..6e12aee9 100644 --- a/.github/workflows/rsbuild-ecosystem-ci-selected.yml +++ b/.github/workflows/rsbuild-ecosystem-ci-selected.yml @@ -41,6 +41,7 @@ on: - plugins - modernjs - examples + - rstack-cli - lynx-stack suiteRefType: description: 'type of suite ref to use' diff --git a/.github/workflows/rslib-ecosystem-ci-from-commit.yml b/.github/workflows/rslib-ecosystem-ci-from-commit.yml index 10fcf972..46199026 100644 --- a/.github/workflows/rslib-ecosystem-ci-from-commit.yml +++ b/.github/workflows/rslib-ecosystem-ci-from-commit.yml @@ -30,6 +30,7 @@ on: - rspress - rsdoctor - modernjs + - rstack-cli - lynx-stack suiteRefType: description: 'type of suite ref to use' diff --git a/.github/workflows/rslib-ecosystem-ci-from-pr.yml b/.github/workflows/rslib-ecosystem-ci-from-pr.yml index ecd9311b..8f8732f7 100644 --- a/.github/workflows/rslib-ecosystem-ci-from-pr.yml +++ b/.github/workflows/rslib-ecosystem-ci-from-pr.yml @@ -35,6 +35,7 @@ on: - rspress - rsdoctor - modernjs + - rstack-cli - lynx-stack suiteRefType: description: 'type of suite ref to use' diff --git a/.github/workflows/rslib-ecosystem-ci-selected.yml b/.github/workflows/rslib-ecosystem-ci-selected.yml index 3c8c9231..a78f1992 100644 --- a/.github/workflows/rslib-ecosystem-ci-selected.yml +++ b/.github/workflows/rslib-ecosystem-ci-selected.yml @@ -41,6 +41,7 @@ on: - rspress - rsdoctor - modernjs + - rstack-cli - lynx-stack suiteRefType: description: 'type of suite ref to use' diff --git a/.github/workflows/rspress-ecosystem-ci-from-commit.yml b/.github/workflows/rspress-ecosystem-ci-from-commit.yml index e08d8d45..42eb2376 100644 --- a/.github/workflows/rspress-ecosystem-ci-from-commit.yml +++ b/.github/workflows/rspress-ecosystem-ci-from-commit.yml @@ -28,6 +28,7 @@ on: - rslib - rspack - rstest + - rstack-cli suiteRefType: description: 'type of suite ref to use' required: true diff --git a/.github/workflows/rspress-ecosystem-ci-from-pr.yml b/.github/workflows/rspress-ecosystem-ci-from-pr.yml index 7b984b72..646b88c5 100644 --- a/.github/workflows/rspress-ecosystem-ci-from-pr.yml +++ b/.github/workflows/rspress-ecosystem-ci-from-pr.yml @@ -33,6 +33,7 @@ on: - rslib - rspack - rstest + - rstack-cli suiteRefType: description: 'type of suite ref to use' required: true diff --git a/.github/workflows/rspress-ecosystem-ci-selected.yml b/.github/workflows/rspress-ecosystem-ci-selected.yml index df4f5788..a0ad2312 100644 --- a/.github/workflows/rspress-ecosystem-ci-selected.yml +++ b/.github/workflows/rspress-ecosystem-ci-selected.yml @@ -39,6 +39,7 @@ on: - rslib - rspack - rstest + - rstack-cli suiteRefType: description: 'type of suite ref to use' required: true diff --git a/.github/workflows/rstest-ecosystem-ci-from-commit.yml b/.github/workflows/rstest-ecosystem-ci-from-commit.yml index 00198cd3..9f8975d8 100644 --- a/.github/workflows/rstest-ecosystem-ci-from-commit.yml +++ b/.github/workflows/rstest-ecosystem-ci-from-commit.yml @@ -31,6 +31,7 @@ on: - rsdoctor - modernjs - examples + - rstack-cli suiteRefType: description: 'type of suite ref to use' required: true diff --git a/.github/workflows/rstest-ecosystem-ci-from-pr.yml b/.github/workflows/rstest-ecosystem-ci-from-pr.yml index 23dcd8b6..610af8dc 100644 --- a/.github/workflows/rstest-ecosystem-ci-from-pr.yml +++ b/.github/workflows/rstest-ecosystem-ci-from-pr.yml @@ -35,6 +35,7 @@ on: - rsdoctor - modernjs - examples + - rstack-cli suiteRefType: description: 'type of suite ref to use' required: true diff --git a/.github/workflows/rstest-ecosystem-ci-selected.yml b/.github/workflows/rstest-ecosystem-ci-selected.yml index 68f41c07..1f07c2ae 100644 --- a/.github/workflows/rstest-ecosystem-ci-selected.yml +++ b/.github/workflows/rstest-ecosystem-ci-selected.yml @@ -42,6 +42,7 @@ on: - rsdoctor - modernjs - examples + - rstack-cli suiteRefType: description: 'type of suite ref to use' required: true