Compare commits

...

33 Commits

Author SHA1 Message Date
16c0bc4a6e Merge pull request #242 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.6.0
Bump @docker/actions-toolkit from 0.5.0 to 0.6.0
2023-06-28 17:24:42 +02:00
ebcacb9c21 update generated content
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-06-28 17:22:25 +02:00
496a823b8b Bump @docker/actions-toolkit from 0.5.0 to 0.6.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.5.0 to 0.6.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.5.0...v0.6.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-28 15:16:58 +00:00
a56031a493 Merge pull request #241 from nicks/nicks/driver
context: only append flags if we know the driver supports them
2023-06-28 15:46:28 +02:00
922550f064 context: only append flags if we know the driver supports them
Background: before this change, if i tried to use GHA with an experimental
driver, it would automatically append the flags

``
--allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host
```

even if the underlying driver did not support them.

Signed-off-by: Nick Santos <nick.santos@docker.com>
2023-06-28 09:30:10 -04:00
ecf95283f0 Merge pull request #238 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.5.0
Bump @docker/actions-toolkit from 0.4.0 to 0.5.0
2023-06-13 11:55:02 +02:00
b2a38ee0c6 update generated content
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-06-13 11:51:23 +02:00
7f79690cac Bump @docker/actions-toolkit from 0.4.0 to 0.5.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.4.0 to 0.5.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.4.0...v0.5.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-13 09:45:06 +00:00
bdd549bec0 Merge pull request #237 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.4.0
Bump @docker/actions-toolkit from 0.3.0 to 0.4.0
2023-06-10 02:08:25 +02:00
be4a3855af update generated content
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-06-10 02:05:18 +02:00
6c4dbb29f6 Bump @docker/actions-toolkit from 0.3.0 to 0.4.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.3.0 to 0.4.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.3.0...v0.4.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-10 00:03:39 +00:00
6a58db7e0d Merge pull request #236 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.3.0
Bump @docker/actions-toolkit from 0.2.0 to 0.3.0
2023-06-07 15:29:48 +02:00
d56292e348 update generated content
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-06-07 15:26:35 +02:00
790eb2db47 Bump @docker/actions-toolkit from 0.2.0 to 0.3.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.2.0 to 0.3.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.2.0...v0.3.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-07 13:25:22 +00:00
2a81c53912 Merge pull request #231 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.2.0
Bump @docker/actions-toolkit from 0.1.0 to 0.2.0
2023-06-06 14:20:23 +02:00
00b2400aad update generated content
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-06-06 14:13:56 +02:00
484614d7a1 Bump @docker/actions-toolkit from 0.1.0 to 0.2.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.1.0 to 0.2.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.1.0...v0.2.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-06 12:05:07 +00:00
d95759405f Merge pull request #219 from crazy-max/ci-k3s-append
set node name for k8s driver when appending nodes
2023-06-06 13:38:48 +02:00
5bb6d36be0 ci: set up and build with k3s
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-06-02 14:27:38 +02:00
a99c5e53ef update generated content
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-06-02 14:03:28 +02:00
fc1a41d2e5 set node name for k8s driver when appending nodes
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-06-02 14:03:26 +02:00
95cefc3c57 Merge pull request #230 from docker/dependabot/github_actions/docker/bake-action-3
Bump docker/bake-action from 2 to 3
2023-06-02 13:50:38 +02:00
8ec3610541 Bump docker/bake-action from 2 to 3
Bumps [docker/bake-action](https://github.com/docker/bake-action) from 2 to 3.
- [Release notes](https://github.com/docker/bake-action/releases)
- [Commits](https://github.com/docker/bake-action/compare/v2...v3)

---
updated-dependencies:
- dependency-name: docker/bake-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-19 04:57:04 +00:00
a946f06b5d Merge pull request #229 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.1.0
Bump @docker/actions-toolkit from 0.1.0-beta.19 to 0.1.0
2023-04-17 06:43:00 +02:00
ce223e774e update generated content
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-04-17 02:59:38 +02:00
d267e74486 use new implementation from toolkit
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-04-17 02:59:25 +02:00
d350de3bba update dev dependencies
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-04-17 02:56:56 +02:00
45a8690f10 Bump @docker/actions-toolkit from 0.1.0-beta.19 to 0.1.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.1.0-beta.19 to 0.1.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.1.0-beta.19...v0.1.0)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-12 04:57:20 +00:00
b167a89702 Merge pull request #221 from crazy-max/update-workflows
ci: split validate and test workflow
2023-03-15 15:20:34 +00:00
81d4866861 ci: split validate and test workflow
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-03-12 13:58:14 +01:00
07aea5fc9c Merge pull request #220 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.1.0-beta.19
Bump @docker/actions-toolkit from 0.1.0-beta.18 to 0.1.0-beta.19
2023-03-11 21:09:01 +00:00
1d91983c26 update generated content
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-03-11 22:04:18 +01:00
496312bcb8 Bump @docker/actions-toolkit from 0.1.0-beta.18 to 0.1.0-beta.19
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.1.0-beta.18 to 0.1.0-beta.19.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.1.0-beta.18...v0.1.0-beta.19)

---
updated-dependencies:
- dependency-name: "@docker/actions-toolkit"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-11 21:02:49 +00:00
11 changed files with 1210 additions and 1274 deletions

View File

@ -2,7 +2,7 @@ name: ci
on:
schedule:
- cron: '0 10 * * *' # everyday at 10am
- cron: '0 10 * * *'
push:
branches:
- 'master'
@ -10,9 +10,6 @@ on:
tags:
- 'v*'
pull_request:
branches:
- 'master'
- 'releases/v*'
jobs:
main:
@ -499,3 +496,53 @@ jobs:
uses: ./
with:
cleanup: ${{ matrix.cleanup }}
k3s:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
version:
- v0.11.0-rc1
- v0.10.5
steps:
-
name: Checkout
uses: actions/checkout@v3
-
name: Install k3s
uses: crazy-max/.github/.github/actions/install-k3s@605d30d5ae97f6680578ace4b56645af79343e60
with:
version: "v1.21.2-k3s1"
-
name: Set up Docker Buildx
id: buildx
uses: ./
with:
version: ${{ matrix.version }}
driver: kubernetes
platforms: linux/amd64
driver-opts: |
image=moby/buildkit:buildx-stable-1
qemu.install=true
append: |
- platforms: linux/arm64
driver-opts:
- image=moby/buildkit:buildx-stable-1
- qemu.install=true
- platforms: linux/s390x
driver-opts:
- image=moby/buildkit:buildx-stable-1
- qemu.install=true
-
name: Create Dockerfile
run: |
cat > ./Dockerfile <<EOL
FROM alpine
RUN uname -a
EOL
-
name: Build
uses: docker/build-push-action@master
with:
context: .

View File

@ -6,9 +6,6 @@ on:
- 'master'
- 'releases/v*'
pull_request:
branches:
- 'master'
- 'releases/v*'
jobs:
test:
@ -17,17 +14,12 @@ jobs:
-
name: Checkout
uses: actions/checkout@v3
-
name: Validate
uses: docker/bake-action@v2
with:
targets: validate
-
name: Set up Docker Buildx
uses: ./
-
name: Test
uses: docker/bake-action@v2
uses: docker/bake-action@v3
with:
targets: test
-

41
.github/workflows/validate.yml vendored Normal file
View File

@ -0,0 +1,41 @@
name: validate
on:
push:
branches:
- 'master'
- 'releases/v*'
pull_request:
jobs:
prepare:
runs-on: ubuntu-latest
outputs:
targets: ${{ steps.targets.outputs.matrix }}
steps:
-
name: Checkout
uses: actions/checkout@v3
-
name: Targets matrix
id: targets
run: |
echo "matrix=$(docker buildx bake validate --print | jq -cr '.group.validate.targets')" >> $GITHUB_OUTPUT
validate:
runs-on: ubuntu-latest
needs:
- prepare
strategy:
fail-fast: false
matrix:
target: ${{ fromJson(needs.prepare.outputs.targets) }}
steps:
-
name: Checkout
uses: actions/checkout@v3
-
name: Validate
uses: docker/bake-action@v3
with:
targets: ${{ matrix.target }}

View File

@ -148,6 +148,21 @@ describe('getCreateArgs', () => {
'--buildkitd-flags', '--allow-insecure-entitlement security.insecure --allow-insecure-entitlement network.host',
'--platform', 'linux/amd64,linux/arm64,linux/arm/v7'
]
],
[
7,
'v0.10.3',
new Map<string, string>([
['install', 'false'],
['use', 'false'],
['driver', 'unknown'],
['cleanup', 'true'],
]),
[
'create',
'--name', 'builder-9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d',
'--driver', 'unknown',
]
]
])(
'[%d] given buildx %s and %p as inputs, returns %p',

6
dist/index.js generated vendored

File diff suppressed because one or more lines are too long

2
dist/index.js.map generated vendored

File diff suppressed because one or more lines are too long

2
dist/sourcemap-register.js generated vendored

File diff suppressed because one or more lines are too long

View File

@ -29,23 +29,23 @@
"dependencies": {
"@actions/core": "^1.10.0",
"@actions/exec": "^1.1.1",
"@docker/actions-toolkit": "^0.1.0-beta.18",
"@docker/actions-toolkit": "^0.6.0",
"js-yaml": "^4.1.0",
"uuid": "^9.0.0"
},
"devDependencies": {
"@types/node": "^16.11.26",
"@typescript-eslint/eslint-plugin": "^5.14.0",
"@typescript-eslint/parser": "^5.14.0",
"@vercel/ncc": "^0.33.3",
"eslint": "^8.11.0",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-jest": "^26.1.1",
"eslint-plugin-prettier": "^4.0.0",
"jest": "^27.2.5",
"prettier": "^2.3.1",
"ts-jest": "^27.1.2",
"ts-node": "^10.7.0",
"typescript": "^4.4.4"
"@types/node": "^16.18.21",
"@typescript-eslint/eslint-plugin": "^5.56.0",
"@typescript-eslint/parser": "^5.56.0",
"@vercel/ncc": "^0.36.1",
"eslint": "^8.36.0",
"eslint-config-prettier": "^8.8.0",
"eslint-plugin-jest": "^27.2.1",
"eslint-plugin-prettier": "^4.2.1",
"jest": "^29.5.0",
"prettier": "^2.8.7",
"ts-jest": "^29.0.5",
"ts-node": "^10.9.1",
"typescript": "^4.9.5"
}
}

View File

@ -51,7 +51,7 @@ export async function getCreateArgs(inputs: Inputs, toolkit: Toolkit): Promise<A
await Util.asyncForEach(inputs.driverOpts, async driverOpt => {
args.push('--driver-opt', driverOpt);
});
if (inputs.driver != 'remote' && inputs.buildkitdFlags) {
if (driverSupportsFlags(inputs.driver) && inputs.buildkitdFlags) {
args.push('--buildkitd-flags', inputs.buildkitdFlags);
}
}
@ -61,7 +61,7 @@ export async function getCreateArgs(inputs: Inputs, toolkit: Toolkit): Promise<A
if (inputs.use) {
args.push('--use');
}
if (inputs.driver != 'remote') {
if (driverSupportsFlags(inputs.driver)) {
if (inputs.config) {
args.push('--config', toolkit.buildkit.config.resolveFromFile(inputs.config));
} else if (inputs.configInline) {
@ -78,12 +78,14 @@ export async function getAppendArgs(inputs: Inputs, node: Node, toolkit: Toolkit
const args: Array<string> = ['create', '--name', inputs.name, '--append'];
if (node.name) {
args.push('--node', node.name);
} else if (inputs.driver == 'kubernetes' && (await toolkit.buildx.versionSatisfies('<0.11.0'))) {
args.push('--node', `node-${uuid.v4()}`);
}
if (node['driver-opts'] && (await toolkit.buildx.versionSatisfies('>=0.3.0'))) {
await Util.asyncForEach(node['driver-opts'], async driverOpt => {
args.push('--driver-opt', driverOpt);
});
if (inputs.driver != 'remote' && node['buildkitd-flags']) {
if (driverSupportsFlags(inputs.driver) && node['buildkitd-flags']) {
args.push('--buildkitd-flags', node['buildkitd-flags']);
}
}
@ -103,3 +105,7 @@ export async function getInspectArgs(inputs: Inputs, toolkit: Toolkit): Promise<
}
return args;
}
function driverSupportsFlags(driver: string): boolean {
return driver == '' || driver == 'docker-container' || driver == 'docker' || driver == 'kubernetes';
}

View File

@ -33,7 +33,7 @@ actionsToolkit.run(
});
let toolPath;
if (Util.isValidUrl(inputs.version)) {
if (Util.isValidRef(inputs.version)) {
if (standalone) {
throw new Error(`Cannot build from source without the Docker CLI`);
}

2311
yarn.lock

File diff suppressed because it is too large Load Diff