Skip to content

Conversation

ktock
Copy link
Member

@ktock ktock commented Dec 17, 2024

Following up #1892

This PR enables tests for the FUSE manager. Some changes were needed to pass them.

@ktock ktock marked this pull request as draft December 17, 2024 15:47
@ktock ktock force-pushed the fuse-manager-tests branch 5 times, most recently from 2146b95 to 4e7f00b Compare December 19, 2024 03:27
@ktock ktock force-pushed the fuse-manager-tests branch 2 times, most recently from 0d9e1bf to 2fe7581 Compare January 7, 2025 07:01
@ktock ktock force-pushed the fuse-manager-tests branch from 2fe7581 to ce664b9 Compare February 13, 2025 13:12
@ktock ktock force-pushed the fuse-manager-tests branch 8 times, most recently from 0b800ae to b77d58f Compare July 10, 2025 06:29
@ktock ktock marked this pull request as ready for review July 10, 2025 13:36
@ktock ktock force-pushed the fuse-manager-tests branch 3 times, most recently from f3591fa to 9233823 Compare July 11, 2025 08:14
@ktock ktock marked this pull request as draft July 11, 2025 08:18
@ktock ktock force-pushed the fuse-manager-tests branch 3 times, most recently from 0745e35 to 5fdaed7 Compare July 11, 2025 09:00
@ktock ktock marked this pull request as ready for review July 11, 2025 10:31
@ktock ktock added this to the v0.17 milestone Jul 16, 2025
docs/overview.md Outdated
You can enable the fuse manager by adding the following configuration.

```toml
[fusemanager]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: s/fusermanager/fuse_manager/ ?

FuseManagerAddress string `toml:"fusemanager_address" json:"fusemanager_address"`

// FuseManagerPath is path to the fusemanager's executable (default: looking for a binary "stargz-fuse-manager")
FuseManagerPath string `toml:"fusemanager_path" json:"fusemanager_path"`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
FuseManagerPath string `toml:"fusemanager_path" json:"fusemanager_path"`
Path string `toml:"path" json:"path"`

Same for other fields too

@ktock ktock marked this pull request as draft July 16, 2025 04:32
@ktock ktock force-pushed the fuse-manager-tests branch 2 times, most recently from f127a08 to 3921db5 Compare July 16, 2025 06:20
ktock added 8 commits July 16, 2025 15:21
Signed-off-by: Kohei Tokunaga <[email protected]>
Add JSON tag to configuration fields. This is needed to send configuration
to the fuse manager in JSON format. Without this change, some configuration
struct passed to the FUSE manager were incorrectly unmarshalled and caused
the test failure.

Signed-off-by: Kohei Tokunaga <[email protected]>
Add "listen_path" field to the CRI Keychain config to specify a custom socket
path for the CRI image service.

When the FUSE manager is disabled, this defaults to the containerd-stargz-grpc
path (`/run/containerd-stargz-grpc/containerd-stargz-grpc.sock`).

When the FUSE manager is enabled with CRI-based authentication, `listen_path` is
a mandatory field with some caveats:

- This path must be different from the FUSE manager's socket path
  (`/run/containerd-stargz-grpc/fuse-manager.sock`) because they have different
  lifecycle. Specifically, the CRI socket is recreted on each reload of the
  configuration to the FUSE manager.

- containerd-stargz-grpc's socket path
  (`/run/containerd-stargz-grpc/containerd-stargz-grpc.sock`) can't be used as
  `listen_path` because the CRI socket is served by the FUSE manager process
  (not containerd-stargz-grpc process).

Signed-off-by: Kohei Tokunaga <[email protected]>
@ktock ktock force-pushed the fuse-manager-tests branch from 3921db5 to 020d347 Compare July 16, 2025 06:22
@ktock ktock marked this pull request as ready for review July 16, 2025 06:30
@ktock ktock merged commit 0aab392 into containerd:main Jul 16, 2025
44 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants