Add context input (#16)

Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
This commit is contained in:
CrazyMax 2020-09-06 16:37:52 +02:00
parent 54edbcd840
commit 1b18b1078f
No known key found for this signature in database
GPG key ID: 3248E46B6BB8C7F7
5 changed files with 19 additions and 6 deletions

View file

@ -128,12 +128,13 @@ Following inputs can be used as `step.with` keys
| Name | Type | Description |
|--------------------|---------|-----------------------------------|
| `version` | String | [Buildx](https://github.com/docker/buildx) version. (e.g. `v0.3.0`, `latest`) |
| `version` | String | [Buildx](https://github.com/docker/buildx) version. (eg. `v0.3.0`, `latest`) |
| `driver` | String | Sets the [builder driver](https://github.com/docker/buildx#--driver-driver) to be used (default `docker-container`) |
| `driver-opts` | CSV | List of additional [driver-specific options](https://github.com/docker/buildx#--driver-opt-options) |
| `driver-opts` | CSV | List of additional [driver-specific options](https://github.com/docker/buildx#--driver-opt-options) (eg. `image=moby/buildkit:master`) |
| `buildkitd-flags` | String | [Flags for buildkitd](https://github.com/moby/buildkit/blob/master/docs/buildkitd.toml.md) daemon (since [buildx v0.3.0](https://github.com/docker/buildx/releases/tag/v0.3.0)) |
| `install` | Bool | Sets up `docker build` command as an alias to `docker buildx` (default `false`) |
| `use` | Bool | Switch to this builder instance (default `true`) |
| `context` | String | [Name of a context](https://github.com/docker/buildx#buildx-create-options-contextendpoint) from `docker context ls` or an endpoint as the address for docker socket (eg. `DOCKER_HOST` value) |
> `CSV` type must be a newline-delimited string
> ```yaml

View file

@ -8,14 +8,14 @@ branding:
inputs:
version:
description: 'Buildx version. e.g. v0.3.0'
description: 'Buildx version. (eg. v0.3.0)'
required: false
driver:
description: 'Sets the builder driver to be used'
default: 'docker-container'
required: false
driver-opts:
description: 'List of additional driver-specific options. Eg. image=moby/buildkit:master'
description: 'List of additional driver-specific options. (eg. image=moby/buildkit:master)'
required: false
buildkitd-flags:
description: 'Flags for buildkitd daemon'
@ -29,6 +29,9 @@ inputs:
description: 'Switch to this builder instance'
default: 'true'
required: false
context:
description: 'Name of a context from docker context ls or an endpoint as the address for docker socket (eg. DOCKER_HOST value)'
required: false
outputs:
name:

6
dist/index.js generated vendored
View file

@ -534,6 +534,9 @@ function run() {
if (inputs.use) {
createArgs.push('--use');
}
if (inputs.context) {
createArgs.push(inputs.context);
}
yield exec.exec('docker', createArgs);
core.info('🏃 Booting builder...');
yield exec.exec('docker', ['buildx', 'inspect', '--bootstrap']);
@ -6553,7 +6556,8 @@ function getInputs() {
buildkitdFlags: core.getInput('buildkitd-flags') ||
'--allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host',
install: /true/i.test(core.getInput('install')),
use: /true/i.test(core.getInput('use'))
use: /true/i.test(core.getInput('use')),
context: core.getInput('context')
};
});
}

View file

@ -10,6 +10,7 @@ export interface Inputs {
buildkitdFlags: string;
install: boolean;
use: boolean;
context: string;
}
export async function getInputs(): Promise<Inputs> {
@ -21,7 +22,8 @@ export async function getInputs(): Promise<Inputs> {
core.getInput('buildkitd-flags') ||
'--allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host',
install: /true/i.test(core.getInput('install')),
use: /true/i.test(core.getInput('use'))
use: /true/i.test(core.getInput('use')),
context: core.getInput('context')
};
}

View file

@ -42,6 +42,9 @@ async function run(): Promise<void> {
if (inputs.use) {
createArgs.push('--use');
}
if (inputs.context) {
createArgs.push(inputs.context);
}
await exec.exec('docker', createArgs);
core.info('🏃 Booting builder...');