Commit Graph
716 Commits
Author SHA1 Message Date
J LoganandGitHub 520371cb38 Increase testExecDetachProcessRunning sleep margin to avoid CI flake (#2063) 2026-08-03 15:27:58 -07:00
jwhurandGitHub 4ed47cbe33 Move SSH builder test to Serialized tests (#2061) 2026-08-03 12:16:23 -07:00
Saehej KangandGitHub e87d3a030b [builder]: enable ssh forwarding for container build (#1508) 2026-08-03 08:34:48 -07:00
Saehej KangandGitHub 39f12cabed [package]: bump container-builder-shim to 0.13.1 (#2056) 2026-08-02 17:35:08 -07:00
adityabagchi24andGitHub a58c5fe66c Adjust overcommit and max_map_count vm defaults in guest VMs (#2055)
Each container runs in its own guest VM sized to
`--memory` with no swap, so the guest kernel's
stock `vm` sysctl defaults are hit far too easily:

- `vm.overcommit_memory=0` (heuristic overcommit)
  rejects an oversized `mmap()` upfront whenever the
  reservation exceeds the small, swap-less VM's free
  RAM — even if the memory is never touched —
  returning `ENOMEM`.
- `vm.max_map_count=65530` caps per-process
  mapping count, which mapping-heavy applications
  (e.g. Elasticsearch, many JVMs) can exceed.
2026-08-02 15:33:52 -07:00
Saehej KangandGitHub da8bec6223 [container]: add container export for live containers (#1630)
- When container is not running, the runtime helper
  traverses the container's root fs and writes it to the
  specified tar archive or stdout.
- When the container is running, the helper performs
  the same operation but wraps it in freeze/thaw
  to ensure data integrity for the resulting archive.
2026-08-02 14:55:01 -07:00
Kathryn BaldaufandGitHub 6e65319fe4 Update containerization import to 0.40.1 (#2038)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
1.2.0
2026-07-28 14:53:23 -07:00
48145ac7fb Fix image env vars, build context checks, TCP/UDP port forward buffer, and validate plugin name (#2027)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
Co-authored-by: John Logan <john_logan@apple.com>
Co-authored-by: Raj Aryan Singh <rajaryan_singh@apple.com>
2026-07-28 10:13:10 -07:00
Kathryn BaldaufandGitHub 27e5043165 Update containerization import to latest 0.40.0 (#2028)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-27 15:18:53 -07:00
divyanshandGitHub 13e976f88e fix: Increase XPC timeout for Machine API operations (#2006)
- Fixes #2003.
2026-07-27 13:49:18 -07:00
b229cecb53 Allow custom kernel boot args via --kernel-arg (#1744)
Signed-off-by: Ari Rubinstein <22369+arirubinstein@users.noreply.github.com>
Co-authored-by: Ari Rubinstein <22369+arirubinstein@users.noreply.github.com>
2026-07-27 13:44:51 -04:00
J LoganandGitHub d1d763530d Fix BuilderStart race, parallelize container build tests. (#2002)
- Closes #2001.
- Handle "container exists" error gracefully instead
  of failing, when trying to start the buildkit container.
- Move build tests to parallel suites, while the builder
  lifecycle tests remain serial. Parallel builds don't
  use the fixture lock that deletes and restarts the
  builder and runs a build block in isolation.
2026-07-23 15:50:59 -07:00
adityabagchi24andGitHub 78e2cb4417 Use log instead of print for system start status messages (#1889) 2026-07-22 21:40:43 -07:00
J LoganandGitHub 9af6e0e5e5 Integration test - miscellaneous fixture and test refinements. (#1993) 2026-07-22 17:19:14 -07:00
J LoganandGitHub 72431b0458 Add OCI maskedPaths and readonlyPaths support to Container API. (#1996) 2026-07-22 16:28:26 -07:00
Kathryn BaldaufandGitHub 9be73ed6bd Add missing dependencies to new ContainerTestSupport package (#1994)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-22 16:01:09 -07:00
J LoganandGitHub f0b2b96a26 Use enum for warmup images. (#1990)
- Closes #1982.
- Makes warmup image code more readable in tests.
2026-07-22 09:45:33 -07:00
J LoganandGitHub 968dbe49c1 Downgrade swift-collections to 1.5.1. (#1984) 2026-07-22 08:21:50 -07:00
Kathryn BaldaufandGitHub a51d54b553 Container test fixture package (#1887)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-21 18:15:47 -07:00
Kathryn BaldaufandGitHub f4757afa43 Pass build config in when building protoc dependencies (#1972)
- The protobuf makefile relies on being able to find
  the built protoc dependencies under the build
  directory. Since we were not passing the build
  configuration to the swift command to build those
  dependencies, the built binaries were going into
  the debug build folder. If make protos was run
  when `BUILD_CONFIGURATION=release`, then
  we'd fail to find the dependencies since the build
  folder should now be the release build folder.
  This PR fixes that.

Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-21 17:48:11 -07:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
0c0d3c6ff1 ci: bump the github-actions group across 1 directory with 3 updates (#1983)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-21 17:46:37 -07:00
Kathryn BaldaufandGitHub ec448129da Reword DNS container name resolution doc information (#1960)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-21 17:43:02 -07:00
J LoganandGitHub b130babb15 Use ordered journal mode for unpacked images. (#1974) 2026-07-21 17:12:01 -07:00
J LoganandGitHub a6813ed66f Periodic dependency updates. (#1981) 2026-07-21 16:42:33 -07:00
Kathryn BaldaufandGitHub 06127de1cd Update containerization dependency with new EXT4Unpacker func definition (#1973)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-21 13:52:31 -07:00
Saehej KangandGitHub 90be1878d8 [gitignore]: ignore vscode workspace files (#1966) 2026-07-21 11:23:08 -07:00
J LoganandGitHub 1e6f78255e Address flaky TestCLIKernelSetSerial suite. (#1976) 2026-07-21 10:40:49 -07:00
J LoganandGitHub e34b1b7fc8 Fix machine ID length test. (#1971) 2026-07-20 16:29:05 -07:00
Kathryn BaldaufandGitHub 3310f342e8 Do not follow destination symlink when copying user configuration (#1957)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-20 15:46:42 -07:00
Kathryn BaldaufandGitHub 3f543ba12f Remove force unwraps on XPC error set/get (#1958)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-20 15:14:05 -07:00
Kathryn BaldaufandGitHub 9e1d6e8b6e Validate container ID from XPC requests (#1956)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-20 10:42:37 -07:00
Saehej KangandGitHub 14233cee65 [package]: bump container-builder-shim to 0.13.0 (#1953) 2026-07-17 08:15:19 -07:00
J LoganandGitHub 07ff3c0a72 Restore --skip-build, enable import testable for release builds. (#1955) 2026-07-16 20:44:37 +05:30
J LoganandGitHub 4dfa3d49d9 Remove --skip-build from test Makefile target. (#1951) 2026-07-15 17:48:12 -07:00
J LoganandGitHub 608902412d Add commit/issue alert to PR template. (#1945) 2026-07-13 13:36:49 -07:00
0x4C33andGitHub 57b07fa2ac Verify kernel archive integrity (#1703)
Closes https://github.com/apple/container/issues/1687

The default kernel archive is downloaded from a remote release URL
during first-run setup and via `container system kernel set
--recommended`. Previously, the archive contents were not verified after
download, so integrity depended on HTTPS and the release artifact
remaining unchanged.

This change adds digest verification for kernel archives. The
recommended/default kernel now has pinned digest metadata using an
algorithm-prefixed value such as `sha256:<hex>`. `container system
kernel set --tar` accepts `--digest`; remote tar URLs require it, and
local tar archives can also be verified before unpacking and
installation.

The system config also supports `kernel.digest`, and a custom
`kernel.url` must provide a digest for that archive.
2026-07-13 13:04:39 -07:00
Aditya RamaniandGitHub 5f277a9cbf Use containerization version 0.37.0 (#1932)
Update the containerization dependency to 0.37.0 to pick up bug fixes
2026-07-10 20:44:39 -07:00
J LoganandGitHub e1a5cfdc70 Updates containerization to 0.36.0. (#1912)
- Picks up the workaround removal for grpc-swift in Vminitd.
2026-07-07 13:52:19 -07:00
adityabagchi24andGitHub 36dc063902 Upgrade grpc-swift-nio-transport to 2.9.0 and remove HTTP2ConnectBuff… (#1790)
- Fixes #1789.
- Release 2.9.0 of `grpc-swift-nio-transport` fixes
  an HTTP/2 initialization race where the server could
  send SETTINGS before gRPC handlers are added to
  the pipeline, causing the client to hang. The new
  `WrappedChannel.wrapping(config:serviceConfig:makeChannel:)`
  API calls `configure(channel)` inside the channel
  initializer, ensuring the pipeline is set up before any inbound
  bytes arrive. This eliminates the need for the custom
  `HTTP2ConnectBufferingHandler` workaround.
2026-07-07 10:23:50 -07:00
Noah ThorntonandGitHub edd6dee2db Integration coverage xpc helpers (#1551)
- This fixes the LLVM coverage data not properly being emitted for XPC
  services. It requires piping the `LLVM_PROFILE_FILE` environment
  variable through to all the services and plugins. The variable itself
  also required the "%c" formatter to ensure that it continuously emits
  coverage data, otherwise when XPC services are killed via "bootout" they
  do not emit coverage.
2026-07-06 15:43:30 -07:00
J LoganandGitHub 3ad6e9b8ba Removes obsolete CLITests directory. (#1886)
- Closes #1833.
2026-07-02 17:30:31 -07:00
J LoganandGitHub 76f387e3be Restore reverted migrations, migrate last tests. (#1880)
- Part of #1833.
- CLI progress and registry test migrations were inadventently reverted
by #1857.
- Migrate TestCLINoParallelCases to TestCLIImagePruneSerial and
TestCLINetworkPruneSerial.
- Clean up test selection patterns in Makefile.
- Remove all legacy CLITests files.
- Use swift-testing `withKnownIssue` to run but ignore failures on flaky
`testCreateNameLongestValid` and `testIsolatedNetwork`.
- Extracts a fixture helper for tests requiring a retry loop.
2026-07-02 15:34:46 -07:00
Kathryn BaldaufandGitHub d9fdf39af6 Add TestCLISystemLogs and TestCLITermIO integration tests in new integration test suite (#1879)
This PR adds two test suites that were missing from the new integration
test suite

Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-01 20:18:31 -07:00
J LoganandGitHub 5973b9cc62 Finalize Makefile for integration test rework. (#1878)
- Part of #1833.
- Replace old targets with new ones.
- Try increased parallelism after test tweaks in #1857.
- Exclude test files from coverage analysis.
1.1.0
2026-07-01 18:25:34 -07:00
Kathryn BaldaufandGitHub 4a79060595 Ensure test filenames match test suite names and each file has a single suite defined (#1877)
This PR cleans up some of the new IntegrationTests files to ensure that
each file has a single test suite defined within it and the name of the
file matches the name of the test suite.

Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-01 16:03:03 -07:00
J LoganandGitHub 69a2505aeb Migrates container run integration tests. (#1857)
- Part of #1833.
2026-07-01 13:23:16 -07:00
J LoganandGitHub 9bd3c47345 Migrates container create, run-lifecycle, exec, remove, copy. (#1844)
- Part of #1833.
2026-06-30 17:37:51 -07:00
J LoganandGitHub 88ab3192f9 Migrate image, volume and miscellaneous system tests. (#1868)
- Part of #1833.
- Distributes fixture extensions for images and containers added as part
of previous builder PR to more sensible locations.
2026-06-30 15:25:16 -07:00
Kathryn BaldaufandGitHub 811abf75bf Add checksum validation to hawkeye installation (#1869)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-06-30 11:08:49 -07:00
J LoganandGitHub 586fa07d2a Migrate registry tests to new test support types. (#1845)
- Part of #1833.
2026-06-30 10:40:26 -07:00