Skip to content

Add macOS runner to CI workflow #1

Description

@hbrodin

The CI check job runs on Ubuntu, so macOS-only code paths (including src/lima.rs and macOS #[cfg] blocks) do not receive the same host checks before merge.

Add a macOS CI job that runs every host check from the Ubuntu job that is meaningful on macOS. This includes formatting, workspace Clippy with warnings denied, workspace unit tests, portable Python regression tests, and the installer, update, and uninstall integration scripts. Keep the macOS job in sync as portable host checks are added to Ubuntu CI. Install any macOS prerequisites those checks need, and fix portability failures exposed by the runner.

Keep Linux-specific checks on Ubuntu: bridge isolation and proxy reverse forwarding require Linux network namespaces. Do not include their macOS SKIP results as passing coverage. Likewise, only run tests explicitly tied to Linux behavior on Ubuntu.

Success means the macOS checks run and pass on pull requests. This adds native macOS compilation, lint, and host-test coverage; the full Lima VM lifecycle suite remains a separate manual gate. PR #557 adds a macOS Nix build/test job, which overlaps with some compilation and unit-test coverage but does not run the full set of portable Cargo and host checks requested here.

Runner cost should be evaluated using actual job duration; the previous 30-second estimate is outdated.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions