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
26 changes: 4 additions & 22 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ jobs:
- name: Unit tests
run: make test-unit

l4-group-a:
l4:
needs: gate-tests
runs-on: macos-14
timeout-minutes: 60
Expand All @@ -76,32 +76,14 @@ jobs:
cache: true
- name: Build binary
run: make build
- name: Run group-a tests
- name: Run L4 vm tests
run: |
go test -v -timeout 55m -tags="e2e,vm" \
-run 'TestVM_Journey_FirstTimeUser|TestVM_Journey_DryRunIsCompletelySafe|TestVM_Interactive_InstallScript' \
./test/e2e/...

l4-group-b:
needs: gate-tests
runs-on: macos-14
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version-file: go.mod
cache: true
- name: Build binary
run: make build
- name: Run group-b tests
run: |
go test -v -timeout 55m -tags="e2e,vm" \
-run 'TestVM_Journey_Dotfiles|TestVM_Journey_MacOS|TestVM_Journey_FullSetupConfiguresEverything|TestVM_Edge_|TestSmoke_|TestE2E_' \
-run 'TestVM_' \
./test/e2e/...

build:
needs: [detect-release-type, gate-tests, l4-group-a, l4-group-b]
needs: [detect-release-type, gate-tests, l4]
runs-on: ubuntu-latest
strategy:
matrix:
Expand Down
28 changes: 3 additions & 25 deletions .github/workflows/vm-e2e-spike.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@ on:
workflow_dispatch:

jobs:
# Group A: long-running journey tests that install packages and modify system state.
group-a:
l4:
runs-on: macos-14
timeout-minutes: 60
steps:
Expand All @@ -21,29 +20,8 @@ jobs:
- name: Build binary
run: make build

- name: Run group-a tests
- name: Run L4 vm tests
run: |
go test -v -timeout 55m -tags="e2e,vm" \
-run 'TestVM_Journey_FirstTimeUser|TestVM_Journey_DryRunIsCompletelySafe|TestVM_Interactive_InstallScript' \
./test/e2e/...

# Group B: dotfiles, macOS defaults, edge cases, sync, and non-destructive e2e.
group-b:
runs-on: macos-14
timeout-minutes: 60
steps:
- uses: actions/checkout@v4

- uses: actions/setup-go@v5
with:
go-version-file: go.mod
cache: true

- name: Build binary
run: make build

- name: Run group-b tests
run: |
go test -v -timeout 55m -tags="e2e,vm" \
-run 'TestVM_Journey_Dotfiles|TestVM_Journey_MacOS|TestVM_Journey_FullSetupConfiguresEverything|TestVM_Edge_|TestSmoke_|TestE2E_' \
-run 'TestVM_' \
./test/e2e/...
2 changes: 1 addition & 1 deletion test/e2e/publish_import_e2e_test.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
//go:build e2e
//go:build e2e && !vm

package e2e

Expand Down
8 changes: 4 additions & 4 deletions test/e2e/sync_shell_e2e_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ import (
"github.com/openbootdotdev/openboot/testutil"
)

// TestE2E_Sync_Shell_CaptureShell verifies that CaptureShell works correctly
// TestVM_Sync_Shell_CaptureShell verifies that CaptureShell works correctly
// in a real macOS environment: detects Oh-My-Zsh and reads theme/plugins from .zshrc.
func TestE2E_Sync_Shell_CaptureShell(t *testing.T) {
func TestVM_Sync_Shell_CaptureShell(t *testing.T) {
if testing.Short() {
t.Skip("skipping VM test in short mode")
}
Expand Down Expand Up @@ -43,9 +43,9 @@ func TestE2E_Sync_Shell_CaptureShell(t *testing.T) {
assert.NoError(t, err, "~/.oh-my-zsh should exist after install")
}

// TestE2E_Sync_Shell_NoPanic verifies that the binary handles a remote config
// TestVM_Sync_Shell_NoPanic verifies that the binary handles a remote config
// with shell settings without panicking.
func TestE2E_Sync_Shell_NoPanic(t *testing.T) {
func TestVM_Sync_Shell_NoPanic(t *testing.T) {
if testing.Short() {
t.Skip("skipping VM test in short mode")
}
Expand Down
Loading