Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions .github/workflows/check-platform.yml
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ jobs:

- name: Set up mold (Linux host link)
if: inputs.os == 'linux'
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0

- name: Build msb
run: |
Expand Down Expand Up @@ -164,7 +164,7 @@ jobs:

- name: Set up mold (Linux host link)
if: inputs.os == 'linux'
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0

- name: Check workspace
run: cargo +stable check --workspace --exclude microsandbox-agentd
Expand Down Expand Up @@ -196,12 +196,12 @@ jobs:
path: build/
- name: Set up mold (Linux host link)
if: inputs.os == 'linux'
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0
- name: Build Node SDK
working-directory: sdk/node-ts
run: |
node scripts/prune-platform-optional-deps.mjs
npm install --package-lock=false
npm ci --ignore-scripts
npm run build:ci

python-build:
Expand Down Expand Up @@ -232,7 +232,7 @@ jobs:
path: build/
- name: Set up mold (Linux host link)
if: inputs.os == 'linux'
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0
- name: Stage runtime bundle
run: |
mkdir -p sdk/python/microsandbox/_bundled/bin sdk/python/microsandbox/_bundled/lib
Expand Down
56 changes: 43 additions & 13 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -305,7 +305,7 @@ jobs:

# mold keeps uncached workspace links fast.
- name: Set up mold
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0

- name: Build msb
run: |
Expand Down Expand Up @@ -348,7 +348,7 @@ jobs:
path: build/

- name: Set up mold
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0

- name: Build Go FFI
run: cargo build --profile ci -p microsandbox-go
Expand Down Expand Up @@ -380,12 +380,12 @@ jobs:
cache-bin: false
cache-targets: true

- uses: taiki-e/install-action@b6b84cf49ebfe0176417bdce007c624f0db37f20 # v2
- uses: taiki-e/install-action@1ed6d7be6168f6c9046541087ff549b6bc581fdf # v2
with:
tool: cargo-nextest@0.9.143

- name: Set up mold
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0

- name: Install build dependencies
run: scripts/ci/install-apt-packages.sh libcap-ng-dev
Expand Down Expand Up @@ -753,7 +753,7 @@ jobs:
cargo +stable clippy --manifest-path crates/agentd/Cargo.toml --target x86_64-unknown-linux-musl -- -D warnings

- name: Set up mold
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0

- name: Clippy
run: cargo +stable clippy --workspace --exclude microsandbox-agentd -- -D warnings
Expand Down Expand Up @@ -788,7 +788,7 @@ jobs:
cache-targets: true

- name: Set up mold
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0

- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
Expand All @@ -815,7 +815,7 @@ jobs:
working-directory: sdk/node-ts
run: |
node scripts/prune-platform-optional-deps.mjs
npm install --package-lock=false
npm ci --ignore-scripts
npm run build:ci

- name: Build MCP server
Expand Down Expand Up @@ -868,7 +868,7 @@ jobs:
cache-targets: true

- name: Set up mold
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0

- uses: astral-sh/setup-uv@20cfd1bf945f4377ade1205e4dbc17946fc9a30d # v10.0.1
with:
Expand Down Expand Up @@ -979,7 +979,7 @@ jobs:
cache-targets: true

- name: Set up mold
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0

- name: Install system dependencies
run: sudo apt-get update && sudo apt-get install -y libcap-ng-dev
Expand Down Expand Up @@ -1038,7 +1038,7 @@ jobs:
cache-targets: true

- name: Set up mold
uses: rui314/setup-mold@9c9c13bf4c3f1adef0cc596abc155580bcb04444 # 2.41.0
uses: rui314/setup-mold@7e4f20ad28a2e8ca6fd0892ccf72e2abb706b9c3 # 2.41.0

- name: Install system dependencies
run: sudo apt-get update && sudo apt-get install -y libcap-ng-dev
Expand All @@ -1059,7 +1059,7 @@ jobs:
run: |
gem build microsandbox.gemspec
mold -run gem install --local microsandbox-*.gem --no-document
ruby --disable-gems -e 'require "rubygems"; require "microsandbox"; abort unless Microsandbox.version == "0.6.16"'
ruby --disable-gems -e 'require "rubygems"; require "microsandbox"; abort unless Microsandbox.version == "0.6.17"'

- name: Restore standalone Ruby lockfile
if: always()
Expand Down Expand Up @@ -1364,6 +1364,35 @@ jobs:
go test -count=1 .
go test -tags "smoke microsandbox_ffi_path" -count=1 -timeout 2m .

# ---------------------------------------------------------------------------
# Previous-release upgrade smoke test
#
# Creates databases with the two latest released CLIs, then opens them with
# the candidate binary. This catches migration-order and compatibility gaps
# without requiring KVM.
# ---------------------------------------------------------------------------
previous-release-upgrade-smoke:
name: Previous Release Upgrade Smoke
needs: [build-linux-x86_64, changes]
if: needs.changes.outputs.code == 'true'
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- name: Download candidate runtime
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: msb-linux-x86_64
path: build/

- name: Test released database upgrades
env:
GH_TOKEN: ${{ github.token }}
run: |
chmod +x build/msb
python3 scripts/smoke/cli/previous_release_upgrade.py

# ---------------------------------------------------------------------------
# CLI smoke tests (requires KVM)
#
Expand Down Expand Up @@ -1430,7 +1459,7 @@ jobs:
- name: Clean runner disk
run: scripts/ci/clean-runner-disk.sh

- uses: taiki-e/install-action@b6b84cf49ebfe0176417bdce007c624f0db37f20 # v2
- uses: taiki-e/install-action@1ed6d7be6168f6c9046541087ff549b6bc581fdf # v2
with:
tool: cargo-nextest@0.9.143

Expand Down Expand Up @@ -1558,7 +1587,7 @@ jobs:
working-directory: sdk/node-ts
run: |
node scripts/prune-platform-optional-deps.mjs
npm install --package-lock=false --ignore-scripts
npm ci --ignore-scripts

# The published platform-pkg msb may lag the SDK; replace it with the
# freshly-built binaries so the smoke test runs against current code.
Expand Down Expand Up @@ -1925,6 +1954,7 @@ jobs:
- ruby-platform-smoke
- ruby-platform-smoke-clean
- go-quality
- previous-release-upgrade-smoke
- cli-smoke-test
- integration-test
- node-sdk-test
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/fuzz.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
with:
toolchain: nightly

- uses: taiki-e/install-action@b6b84cf49ebfe0176417bdce007c624f0db37f20 # v2
- uses: taiki-e/install-action@1ed6d7be6168f6c9046541087ff549b6bc581fdf # v2
with:
tool: cargo-fuzz

Expand Down
Loading
Loading