mirror of
https://github.com/actions/runner-container-hooks.git
synced 2025-12-16 09:46:43 +00:00
fixing defaulting to docker hub on private registry, and b64 encoding (#25)
This commit is contained in:
@@ -46,7 +46,7 @@ export async function prepareJob(
|
|||||||
}
|
}
|
||||||
let createdPod: k8s.V1Pod | undefined = undefined
|
let createdPod: k8s.V1Pod | undefined = undefined
|
||||||
try {
|
try {
|
||||||
createdPod = await createPod(container, services, args.registry)
|
createdPod = await createPod(container, services, args.container.registry)
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
await prunePods()
|
await prunePods()
|
||||||
throw new Error(`failed to create job pod: ${err}`)
|
throw new Error(`failed to create job pod: ${err}`)
|
||||||
|
|||||||
@@ -233,13 +233,12 @@ export async function createDockerSecret(
|
|||||||
): Promise<k8s.V1Secret> {
|
): Promise<k8s.V1Secret> {
|
||||||
const authContent = {
|
const authContent = {
|
||||||
auths: {
|
auths: {
|
||||||
[registry.serverUrl]: {
|
[registry.serverUrl || 'https://index.docker.io/v1/']: {
|
||||||
username: registry.username,
|
username: registry.username,
|
||||||
password: registry.password,
|
password: registry.password,
|
||||||
auth: Buffer.from(
|
auth: Buffer.from(`${registry.username}:${registry.password}`).toString(
|
||||||
`${registry.username}:${registry.password}`,
|
|
||||||
'base64'
|
'base64'
|
||||||
).toString()
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -252,15 +251,16 @@ export async function createDockerSecret(
|
|||||||
secret.apiVersion = 'v1'
|
secret.apiVersion = 'v1'
|
||||||
secret.metadata = new k8s.V1ObjectMeta()
|
secret.metadata = new k8s.V1ObjectMeta()
|
||||||
secret.metadata.name = secretName
|
secret.metadata.name = secretName
|
||||||
|
secret.metadata.namespace = namespace()
|
||||||
secret.metadata.labels = {
|
secret.metadata.labels = {
|
||||||
[runnerInstanceLabel.key]: runnerInstanceLabel.value
|
[runnerInstanceLabel.key]: runnerInstanceLabel.value
|
||||||
}
|
}
|
||||||
|
secret.type = 'kubernetes.io/dockerconfigjson'
|
||||||
secret.kind = 'Secret'
|
secret.kind = 'Secret'
|
||||||
secret.data = {
|
secret.data = {
|
||||||
'.dockerconfigjson': Buffer.from(
|
'.dockerconfigjson': Buffer.from(JSON.stringify(authContent)).toString(
|
||||||
JSON.stringify(authContent),
|
|
||||||
'base64'
|
'base64'
|
||||||
).toString()
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
const { body } = await k8sApi.createNamespacedSecret(namespace(), secret)
|
const { body } = await k8sApi.createNamespacedSecret(namespace(), secret)
|
||||||
|
|||||||
Reference in New Issue
Block a user