MCPcopy Index your code
hub / github.com/devcontainers/cli / getPodmanArgs

Function getPodmanArgs

src/spec-node/singleContainer.ts:438–451  ·  view source on GitHub ↗
(params: DockerResolverParameters, config: DevContainerFromDockerfileConfig | DevContainerFromImageConfig, mergedConfig: MergedDevContainerConfig, imageDetails: () => Promise<ImageDetails>)

Source from the content-addressed store, hash-verified

436}
437
438async function getPodmanArgs(params: DockerResolverParameters, config: DevContainerFromDockerfileConfig | DevContainerFromImageConfig, mergedConfig: MergedDevContainerConfig, imageDetails: () => Promise<ImageDetails>): Promise<string[]> {
439 if (params.cliVariant === CLIVariant.Podman && params.common.cliHost.platform === 'linux') {
440 const args = ['--security-opt', 'label=disable'];
441 const hasIdMapping = (config.runArgs || []).some(arg => /--[ug]idmap(=|$)/.test(arg));
442 if (!hasIdMapping) {
443 const remoteUser = mergedConfig.remoteUser || findUserArg(config.runArgs) || (await imageDetails()).Config.User || 'root';
444 if (remoteUser !== 'root' && remoteUser !== '0') {
445 args.push('--userns=keep-id');
446 }
447 }
448 return args;
449 }
450 return [];
451}
452
453// Convert a --mount string (e.g., "type=bind,source=/a,target=/b,consistency=cached") to -v syntax for wslc.
454function convertMountToVolume(mountStr: string): string[] {

Callers 1

spawnDevContainerFunction · 0.85

Calls 2

findUserArgFunction · 0.85
imageDetailsFunction · 0.70

Tested by

no test coverage detected