podman
1package shim
2
3import (
4"github.com/containers/podman/v5/pkg/machine"
5"github.com/containers/podman/v5/pkg/machine/vmconfigs"
6)
7
8func CmdLineVolumesToMounts(volumes []string, volumeType vmconfigs.VolumeMountType) []*vmconfigs.Mount {
9mounts := []*vmconfigs.Mount{}
10for i, volume := range volumes {
11var mount vmconfigs.Mount
12tag, source, target, readOnly, _ := vmconfigs.SplitVolume(i, volume)
13switch volumeType {
14case vmconfigs.VirtIOFS:
15virtioMount := machine.NewVirtIoFsMount(source, target, readOnly)
16mount = virtioMount.ToMount()
17default:
18mount = vmconfigs.Mount{
19Type: volumeType.String(),
20Tag: tag,
21Source: source,
22Target: target,
23ReadOnly: readOnly,
24OriginalInput: volume,
25}
26}
27mounts = append(mounts, &mount)
28}
29return mounts
30}
31