mirror of
https://github.com/actions/runner-container-hooks.git
synced 2025-12-17 10:16:44 +00:00
Docker and K8s: Fix shell arguments when split by the runner (#115)
* Docker: Fix shell arguments when split by the runner * Add shlex to k8s hook as well
This commit is contained in:
@@ -23,7 +23,8 @@ import {
|
||||
generateContainerName,
|
||||
mergeContainerWithOptions,
|
||||
readExtensionFromFile,
|
||||
PodPhase
|
||||
PodPhase,
|
||||
fixArgs
|
||||
} from '../k8s/utils'
|
||||
import { JOB_CONTAINER_EXTENSION_NAME, JOB_CONTAINER_NAME } from './constants'
|
||||
|
||||
@@ -206,7 +207,7 @@ export function createContainerSpec(
|
||||
}
|
||||
|
||||
if (container.entryPointArgs?.length > 0) {
|
||||
podContainer.args = container.entryPointArgs
|
||||
podContainer.args = fixArgs(container.entryPointArgs)
|
||||
}
|
||||
|
||||
podContainer.env = []
|
||||
|
||||
@@ -14,7 +14,8 @@ import {
|
||||
containerVolumes,
|
||||
PodPhase,
|
||||
mergeContainerWithOptions,
|
||||
readExtensionFromFile
|
||||
readExtensionFromFile,
|
||||
fixArgs
|
||||
} from '../k8s/utils'
|
||||
import { JOB_CONTAINER_EXTENSION_NAME, JOB_CONTAINER_NAME } from './constants'
|
||||
|
||||
@@ -89,7 +90,7 @@ function createContainerSpec(
|
||||
? [container.entryPoint]
|
||||
: undefined
|
||||
podContainer.args = container.entryPointArgs?.length
|
||||
? container.entryPointArgs
|
||||
? fixArgs(container.entryPointArgs)
|
||||
: undefined
|
||||
|
||||
if (secretName) {
|
||||
|
||||
@@ -511,7 +511,7 @@ export async function isPodContainerAlpine(
|
||||
[
|
||||
'sh',
|
||||
'-c',
|
||||
"[ $(cat /etc/*release* | grep -i -e '^ID=*alpine*' -c) != 0 ] || exit 1"
|
||||
`'[ $(cat /etc/*release* | grep -i -e "^ID=*alpine*" -c) != 0 ] || exit 1'`
|
||||
],
|
||||
podName,
|
||||
containerName
|
||||
|
||||
@@ -7,6 +7,7 @@ import * as path from 'path'
|
||||
import { v1 as uuidv4 } from 'uuid'
|
||||
import { POD_VOLUME_NAME } from './index'
|
||||
import { JOB_CONTAINER_EXTENSION_NAME } from '../hooks/constants'
|
||||
import * as shlex from 'shlex'
|
||||
|
||||
export const DEFAULT_CONTAINER_ENTRY_POINT_ARGS = [`-f`, `/dev/null`]
|
||||
export const DEFAULT_CONTAINER_ENTRY_POINT = 'tail'
|
||||
@@ -282,3 +283,7 @@ function mergeLists<T>(base?: T[], from?: T[]): T[] {
|
||||
b.push(...from)
|
||||
return b
|
||||
}
|
||||
|
||||
export function fixArgs(args: string[]): string[] {
|
||||
return shlex.split(args.join(' '))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user