Commit Graph
481 Commits
Author SHA1 Message Date
jwhur 6fba624647 Remove PLUGINS section from help message (#2309) 2026-09-28 13:14:07 -07:00
Raj 2e23485f62 Better error message for unknown commands (#2311) 2026-09-28 12:09:51 -07:00
Kathryn Baldauf 4a7d861524 Update to latest containerization@0.47.0 (#2301)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-09-24 17:14:52 -07:00
Andrey Maltsev eafe6b8b31 fix(k8s): use the node's configured iptables backend for node prep (#2145) 2026-09-24 11:16:24 -07:00
Daniel Syauqi dc276ee5f3 Run commands when image entrypoint is empty (#2296) 2026-09-22 16:36:20 -07:00
Kathryn Baldauf be974a3ea3 Remove k8s start command for now (#2290)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-09-21 16:54:06 -07:00
jwhur 09d8e6aeea Fix Globber dropping directory contents under a symlinked ancestor (#2252) 2026-09-21 14:01:26 -07:00
Di Warachet S. 4e7dce66ad fix(k8s): correct k8s control plane components version using the user specified node image version (#2271) 2026-09-18 12:45:06 -07:00
Kathryn Baldauf 57f0b9392b K8s plugin: Support custom CNI manifest (#2254)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-09-15 09:36:17 -07:00
Eric Ernst 33ebc8ae67 forwarder: close backend channel immediately if frontend closes (#2260)
Signed-off-by: Eric Ernst <eric_ernst@apple.com>
2026-09-11 12:08:27 -07:00
Raj b61450b6e8 Fix container egress loss after localhost DNS changes (#2256) 2026-09-10 19:00:07 -07:00
Dmitry Kovba 57ddcb34dc Fix compilation warnings (#2235) 2026-09-08 12:41:11 -07:00
Dmitry Kovba eee7ad0970 Fix a compilation error (#2234) 2026-09-04 13:09:24 -07:00
Di Warachet S. c82fe3c4be fix: handle container clean failing on read-only named volume mounts (#2228)
- Skips the rootfs when the container was created with
  `--read-only`, and skips block mounts whose options
  include `ro`.
- Keeps trimming the remaining targets after a failure,
  then throws one error listing each failed path with its
  underlying error.
2026-09-02 15:46:16 -07:00
Saehej Kang b8ffd38c73 [container]: add clean command (#1949)
- Closes #1763
- `container clean` marks deallocated filesystem blocks
  in the container VM so that the host can reclaim the
  unused capacity.
2026-09-01 11:32:31 -07:00
muk2andClaude Opus 4.8 d925dab865 Enhance container system status command output (#1769)
- Fixes #815.
- Relocates the API server info received from the health check
  XPC to a `server` property.
- Fixes the server `version` property in the health check result
  to contain only the version; previously it included text that was
  already in sibling properties. 
- Adds properties for host, client, paths, and resources.
- Adds these properties to the output of `container system status`,
  in a table or as JSON (`--format json`). Daemon-sourced fields
  populate only when the API server responds, so the command
  degrades gracefully to a "server not running" view when the
  daemon is stopped. System configuration values are not repeated
 here — `container system property ls` already reports them.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-30 12:56:09 -07:00
Talandtaljeon d65874da36 Avoid escaping slashes in JSON output (#2205)
Fixes #2204.

Swift's default JSONEncoder output escapes forward slashes, which makes CLI JSON paths and URLs harder to read and copy. This change makes the shared CLI JSON renderer always use .withoutEscapingSlashes and routes machine list --format json through that renderer while preserving its ISO-8601 date encoding.

OpenAI Codex assisted with investigation, implementation, and verification. The final change is limited to JSON rendering behavior and focused regression coverage.

Co-authored-by: taljeon <169621860+taljeon@users.noreply.github.com>
2026-08-28 16:37:33 -07:00
Kathryn Baldauf a9a62e28f6 Update to containerization 0.42.0 (#2207)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-08-28 15:38:56 -07:00
Siva Sathwik Kommi 388d964f38 Fix tmpfs mount source field left empty for --mount type=tmpfs (#2138) 2026-08-26 20:53:28 -07:00
Agam Dua d6de569420 Update default kernel to Kata Containers 3.32.0 debug build (#2143)
- Switch the default guest kernel from vmlinux-6.18.15-186
  (kata-static-3.28.0) to the newer version and variant
  vmlinux-6.18.35-197-debug (kata-static-3.32.0).
- The debug variant enables eBPF, kprobes, uprobes, ftrace
  and BTF (kata-containers/kata-containers#12567).

Signed-off-by: Agam Dua <agam_dua@apple.com>
2026-08-20 15:41:02 -07:00
Noah Thornton 434fda5332 Remove AsyncParsableCommand conformance from ContainerCLI (#2140)
This removes the AsyncParsableCommand protocol from ContainerCLI since
it does not leverage the features that the protocol provides and the
extension main can cause confusion.

Bump to latest containerization version.
2026-08-19 10:28:19 -07:00
Kathryn Baldauf 44374a237b Do not set default maskedPaths and readonlyPaths for container machines (#2137)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-08-19 09:44:25 -07:00
jshi991andJohn Logan b3357fdb2e Split K8sHelper, add WorkerProvisioner protocol, and add LinuxWorker … (#2110)
- Closes #2102.
- LinuxWorkerProvisioner sets up a kind-based node.
- Includes some test cleanups.

Co-authored-by: John Logan <john_logan@apple.com>
2026-08-18 13:12:06 -07:00
Dmitry Kovba 7d4ffb6cb1 Fix a compilation error (#2119) 2026-08-13 20:03:09 -07:00
J Logan 5fcbeab570 Extracts createPluginLoader() for use by container k8s. (#2115) 2026-08-12 21:00:44 -07:00
Kathryn Baldauf ff5aa8a03b Validate volume name in volume disk usage call (#2107)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-08-10 13:42:16 -07:00
J Logan 497465635a Remove auto registry scheme. (#2100) 2026-08-10 09:55:53 -07:00
Pradeep BiswasandJohn Logan f13b7238d5 Refactor tmpfsMounts() to process tmpfs path correctly (#2103)
Co-authored-by: John Logan <john_logan@apple.com>
2026-08-10 09:49:58 -07:00
Thomas Danielsson af405ffd5a Update sudoers file to not include dots (#2080)
- Closes #1713.
- Files under /etc/sudoers.d/ must not contain dots as these
  will be ignored as "backup-files". When writing the sudoers
  file, replace `.` with `_` in the username to form the filename.
2026-08-07 18:36:01 -07:00
J Logan 0925ff6298 Refactor container k8s to use plugin resource management. (#2097) 2026-08-07 14:43:56 -07:00
jshi991 cec124f207 refactor: extract K8s logic into ContainerK8s library target (#2079)
- Closes #2078.
- Move all K8s sources from the container-k8s executable
  into a new ContainerK8s library target. Sources/Plugins/K8s/
  becomes a thin entry point (K8sMain.swift) that calls
  K8sCommand.main().
2026-08-07 10:08:16 -07:00
jshi991 0d111be4c6 K8s plugin (#2044)
- closes #2043 
- introduces the k8s plugin, allowing users to make single
  node clusters with the kind base image 
- other functionality is included as well such as creation,
  deletion, and loading custom images
2026-08-05 19:25:27 -07:00
J Logan 60612eef51 Integration test: cache warmup image tarfiles. (#2074)
- When pulling warmup images for concurrent tests, save
  the images to a cache directory under the application root.
- Serial tests that aren't testing pull can save time by restoring
  a cached warmup image.
2026-08-05 11:17:20 -07:00
J Logan bc50fcb593 Simplify correlation of test prefix to test ID. (#2071) 2026-08-05 09:32:02 -07:00
Aditya Ramani ddaf2ca5ac Add --read-only-path and --masked-path option to container run / create (#2069) 2026-08-04 19:04:50 -07:00
J Logan cb8cad4562 Add readiness signal to DirectoryWatcher, fix DirectoryWatcherTest. (#2066) 2026-08-04 12:17:58 -07:00
Saehej Kang e87d3a030b [builder]: enable ssh forwarding for container build (#1508) 2026-08-03 08:34:48 -07:00
adityabagchi24 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 Kang 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
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
divyansh 13e976f88e fix: Increase XPC timeout for Machine API operations (#2006)
- Fixes #2003.
2026-07-27 13:49:18 -07:00
Ari RubinsteinandAri Rubinstein 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 Logan 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
adityabagchi24 78e2cb4417 Use log instead of print for system start status messages (#1889) 2026-07-22 21:40:43 -07:00
J Logan 9af6e0e5e5 Integration test - miscellaneous fixture and test refinements. (#1993) 2026-07-22 17:19:14 -07:00
J Logan 72431b0458 Add OCI maskedPaths and readonlyPaths support to Container API. (#1996) 2026-07-22 16:28:26 -07:00
J Logan 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
Kathryn Baldauf a51d54b553 Container test fixture package (#1887)
Signed-off-by: Kathryn Baldauf <k_baldauf@apple.com>
2026-07-21 18:15:47 -07:00
J Logan b130babb15 Use ordered journal mode for unpacked images. (#1974) 2026-07-21 17:12:01 -07:00
J Logan a6813ed66f Periodic dependency updates. (#1981) 2026-07-21 16:42:33 -07:00