68 Commits

Author SHA1 Message Date
CrazyMax
efe9e3891a Merge pull request #182 from crazy-max/releases-gh-token
set github token to list releases and download assets
2025-11-04 11:46:09 +01:00
Paweł Gronowski
78e4df2bef Merge pull request #180 from crazy-max/macos-15
ci: update to macos-15-intel
2025-11-04 10:57:59 +01:00
CrazyMax
9321b687cf chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-11-03 23:28:53 +01:00
CrazyMax
276a2f38a4 set github token to list releases and download assets
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-11-03 23:28:52 +01:00
CrazyMax
4160483120 ci: update to macos-15-intel
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-11-03 16:31:39 +01:00
CrazyMax
b71d5ee00d Merge pull request #179 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.65.0
build(deps): bump @docker/actions-toolkit from 0.64.0 to 0.65.0
2025-11-03 16:31:26 +01:00
CrazyMax
d3f310eaa3 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-11-03 16:20:03 +01:00
dependabot[bot]
c8283cc2af build(deps): bump @docker/actions-toolkit from 0.64.0 to 0.65.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.64.0 to 0.65.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.64.0...v0.65.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 14:01:14 +00:00
CrazyMax
3fb92d6d9c Merge pull request #177 from docker/dependabot/npm_and_yarn/npm_and_yarn-9eb7991974
build(deps): bump the npm_and_yarn group across 1 directory with 2 updates
2025-10-16 14:18:45 +02:00
CrazyMax
138843162e chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-10-16 14:17:13 +02:00
dependabot[bot]
4d8e316444 build(deps): bump the npm_and_yarn group across 1 directory with 2 updates
Bumps the npm_and_yarn group with 2 updates in the / directory: [brace-expansion](https://github.com/juliangruber/brace-expansion) and [undici](https://github.com/nodejs/undici).


Updates `brace-expansion` from 1.1.11 to 1.1.12
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](https://github.com/juliangruber/brace-expansion/compare/1.1.11...v1.1.12)

Updates `undici` from 5.28.4 to 5.29.0
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.28.4...v5.29.0)

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 1.1.12
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: undici
  dependency-version: 5.29.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-16 12:10:45 +00:00
CrazyMax
13bc64bf22 Merge pull request #175 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.64.0
build(deps): bump @docker/actions-toolkit from 0.62.1 to 0.64.0
2025-10-16 14:07:57 +02:00
CrazyMax
9b44f456e3 ci: test docker 29 release
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-10-16 12:42:50 +02:00
CrazyMax
db9988d080 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-10-16 12:37:54 +02:00
dependabot[bot]
80ba8d8f5f build(deps): bump @docker/actions-toolkit from 0.62.1 to 0.64.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.62.1 to 0.64.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.62.1...v0.64.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-16 10:35:32 +00:00
CrazyMax
48f9dddab2 Merge pull request #173 from docker/dependabot/github_actions/actions/checkout-5
build(deps): bump actions/checkout from 4 to 5
2025-10-16 12:33:51 +02:00
dependabot[bot]
746efa2ccb build(deps): bump actions/checkout from 4 to 5
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-08-12 18:02:20 +00:00
CrazyMax
46897a6289 Merge pull request #167 from docker/dependabot/npm_and_yarn/form-data-2.5.5
build(deps): bump form-data from 2.5.1 to 2.5.5
2025-08-06 22:04:03 +02:00
CrazyMax
74ac62f5d7 Merge pull request #168 from ArunKumarT1995/feature/rundirinput
Add input for runtime basedir
2025-08-06 22:03:44 +02:00
CrazyMax
a4da7e5ab9 readme: fix inputs table
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-06 21:43:43 +02:00
CrazyMax
8f22df35b2 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-06 21:43:42 +02:00
CrazyMax
d2d8fc9bf5 move runtime-basedir default to context
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-06 21:43:42 +02:00
ArunKumarT1995
de8d0f39ec add runtime-basedir input
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-08-06 21:36:25 +02:00
dependabot[bot]
0d6d6d60ff build(deps): bump form-data from 2.5.1 to 2.5.5
Bumps [form-data](https://github.com/form-data/form-data) from 2.5.1 to 2.5.5.
- [Release notes](https://github.com/form-data/form-data/releases)
- [Changelog](https://github.com/form-data/form-data/blob/v2.5.5/CHANGELOG.md)
- [Commits](https://github.com/form-data/form-data/compare/v2.5.1...v2.5.5)

---
updated-dependencies:
- dependency-name: form-data
  dependency-version: 2.5.5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-21 23:11:51 +00:00
CrazyMax
29412e2cf6 Merge pull request #165 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.62.1
build(deps): bump @docker/actions-toolkit from 0.61.0 to 0.62.1
2025-06-16 14:57:58 +02:00
CrazyMax
59de7d6072 chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-06-16 14:43:08 +02:00
CrazyMax
7fa26c3c14 update since docker install constructor changes
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-06-16 14:40:11 +02:00
dependabot[bot]
3072e160e1 build(deps): bump @docker/actions-toolkit from 0.61.0 to 0.62.1
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.61.0 to 0.62.1.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.61.0...v0.62.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-28 10:32:21 +00:00
CrazyMax
efe6ba76e3 Merge pull request #163 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.61.0
build(deps): bump @docker/actions-toolkit from 0.57.0 to 0.61.0
2025-05-13 13:57:16 +02:00
CrazyMax
1211ebfa1f chore: update generated content
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-05-12 14:12:41 +02:00
CrazyMax
63f2e57f85 setup regctl and undock
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2025-05-12 14:06:55 +02:00
dependabot[bot]
b7bb1d4426 build(deps): bump @docker/actions-toolkit from 0.57.0 to 0.61.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.57.0 to 0.61.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.57.0...v0.61.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-24 09:33:30 +00:00
CrazyMax
7db77378a9 Merge pull request #162 from crazy-max/pr-assign-author
pr-assign-author workflow
2025-04-23 16:09:53 +02:00
CrazyMax
2d89c571bd pr-assign-author workflow 2025-04-23 14:20:59 +02:00
CrazyMax
f27261ca18 Merge pull request #160 from crazy-max/fix-codecov
ci: fix missing source for codecov
2025-04-22 14:53:31 +02:00
CrazyMax
a39f563e16 ci: fix missing source for codecov 2025-04-22 14:36:35 +02:00
CrazyMax
54c51f4ee8 Merge pull request #156 from crazy-max/ci-test-latest
ci: test latest docker version
2025-03-18 12:23:39 +01:00
CrazyMax
364f5e215c ci: test latest docker version 2025-03-18 11:49:03 +01:00
CrazyMax
b60f85385d Merge pull request #154 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.57.0
build(deps): bump @docker/actions-toolkit from 0.56.0 to 0.57.0
2025-03-12 10:10:05 +01:00
CrazyMax
643c69a8cb chore: update generated content 2025-03-12 09:56:06 +01:00
dependabot[bot]
5c724e91b0 build(deps): bump @docker/actions-toolkit from 0.56.0 to 0.57.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.56.0 to 0.57.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.56.0...v0.57.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>
2025-03-11 11:36:06 +00:00
CrazyMax
c2d73c1a11 Merge pull request #153 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.56.0
build(deps): bump @docker/actions-toolkit from 0.53.0 to 0.56.0
2025-02-26 16:38:52 +01:00
CrazyMax
bb512e8cb4 chore: update generated content 2025-02-26 16:16:11 +01:00
dependabot[bot]
36de8cc80a build(deps): bump @docker/actions-toolkit from 0.53.0 to 0.56.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.53.0 to 0.56.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.53.0...v0.56.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>
2025-02-26 14:27:04 +00:00
CrazyMax
f96ea45537 Merge pull request #149 from crazy-max/ci-arm64
ci: test ubuntu arm64 runners
2025-01-28 11:42:33 +01:00
CrazyMax
6b291a174a Merge pull request #147 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.53.0
build(deps): bump @docker/actions-toolkit from 0.49.0 to 0.53.0
2025-01-28 10:48:44 +01:00
CrazyMax
d44b774c56 ci: test ubuntu arm64 runners 2025-01-28 10:40:04 +01:00
CrazyMax
057bfa9666 chore: update generated content 2025-01-28 10:23:13 +01:00
CrazyMax
0f738e9bf9 Merge pull request #148 from crazy-max/publish-immutable-action
ci: publish as immutable action workflow
2025-01-28 10:05:34 +01:00
CrazyMax
a329cfc112 ci: publish as immutable action workflow 2025-01-28 09:49:05 +01:00
dependabot[bot]
979ffe9e09 build(deps): bump @docker/actions-toolkit from 0.49.0 to 0.53.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.49.0 to 0.53.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.49.0...v0.53.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>
2025-01-23 10:48:18 +00:00
CrazyMax
847482916a Merge pull request #143 from crazy-max/bake-v6
update bake-action to v6
2025-01-08 18:53:23 +01:00
CrazyMax
d6e275d4ff update bake-action to v6 2025-01-08 13:04:17 +01:00
CrazyMax
370a7dad4b Merge pull request #139 from vvoland/docs-version-csv
docs: Document `version` csv format
2024-12-16 12:53:19 +01:00
Paweł Gronowski
23c3839175 docs: Document version csv format
Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
2024-12-16 12:03:55 +01:00
CrazyMax
b814c39737 Merge pull request #138 from crazy-max/expose-tcp-input
tcp-port opt to expose Docker API to a local TCP address
2024-12-16 11:58:33 +01:00
CrazyMax
75153b5b5e chore: update generated content 2024-12-16 11:22:38 +01:00
CrazyMax
3a56725668 tcp-port opt to expose Docker API to a local TCP address 2024-12-16 11:22:38 +01:00
CrazyMax
fde3095c59 Merge pull request #140 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.49.0
build(deps): bump @docker/actions-toolkit from 0.48.0 to 0.49.0
2024-12-16 11:17:40 +01:00
CrazyMax
d22c57e6c4 chore: update generated content 2024-12-16 11:06:49 +01:00
dependabot[bot]
6172ee107f build(deps): bump @docker/actions-toolkit from 0.48.0 to 0.49.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.48.0 to 0.49.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.48.0...v0.49.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>
2024-12-16 09:58:50 +00:00
CrazyMax
2a248d822c Merge pull request #137 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.48.0
build(deps): bump @docker/actions-toolkit from 0.47.0 to 0.48.0
2024-12-12 16:00:49 +01:00
CrazyMax
6dbd87054b chore: update generated content 2024-12-12 15:51:25 +01:00
dependabot[bot]
68b1efda1d build(deps): bump @docker/actions-toolkit from 0.47.0 to 0.48.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.47.0 to 0.48.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.47.0...v0.48.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>
2024-12-12 14:07:23 +00:00
CrazyMax
7188e7a998 Merge pull request #135 from crazy-max/ci-disable-summary
ci: disable build summary
2024-12-06 15:35:19 +01:00
CrazyMax
927974f719 Merge pull request #134 from crazy-max/update-readme
readme: update action to latest stable
2024-12-06 15:35:06 +01:00
CrazyMax
1439ace8f2 ci: disable build summary 2024-12-06 14:52:34 +01:00
CrazyMax
b86a7cc004 readme: update action to latest stable 2024-12-06 14:44:50 +01:00
16 changed files with 984 additions and 383 deletions

View File

@@ -18,6 +18,7 @@ on:
env:
DOCKER_VERSION: v27.3.1
DOCKER_BUILD_SUMMARY: false
jobs:
main:
@@ -27,16 +28,17 @@ jobs:
matrix:
os:
- ubuntu-latest
#- macos-14 # no virt: https://github.com/docker/actions-toolkit/issues/317
- macos-13
- ubuntu-24.04-arm
- macos-15-intel
- windows-latest
version:
- ""
- v27.3.1
- type=image,tag=27.3.1
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Set up Docker
uses: ./
@@ -50,13 +52,13 @@ jobs:
matrix:
os:
- ubuntu-latest
#- macos-14 # no virt: https://github.com/docker/actions-toolkit/issues/317
- macos-13
- ubuntu-24.04-arm
- macos-15-intel
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Set up Docker
uses: ./
@@ -71,13 +73,13 @@ jobs:
matrix:
os:
- ubuntu-latest
#- macos-14 # no virt: https://github.com/docker/actions-toolkit/issues/317
- macos-13
- ubuntu-24.04-arm
- macos-15-intel
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Set up Docker
uses: ./
@@ -98,13 +100,13 @@ jobs:
matrix:
os:
- ubuntu-latest
#- macos-14 # no virt: https://github.com/docker/actions-toolkit/issues/317
- macos-13
- ubuntu-24.04-arm
- macos-15-intel
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Set up Docker
uses: ./
@@ -117,12 +119,11 @@ jobs:
docker context inspect foo
lima-start-args:
#runs-on: macos-14 # no virt: https://github.com/docker/actions-toolkit/issues/317
runs-on: macos-13
runs-on: macos-15-intel
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Set up Docker
uses: ./
@@ -142,7 +143,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Uninstall containerd
if: matrix.containerd == 'containerd-tarball'
@@ -182,12 +183,11 @@ jobs:
fail-fast: false
matrix:
os:
#- macos-14 # no virt: https://github.com/docker/actions-toolkit/issues/317
- macos-13
- macos-15-intel
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Set up Docker
uses: ./
@@ -221,7 +221,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Set up Docker
uses: ./
@@ -242,7 +242,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Set up Docker
uses: ./
@@ -259,7 +259,7 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Set up Docker
uses: ./
@@ -270,3 +270,75 @@ jobs:
name: List contexts
run: |
docker context ls
tcp:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- ubuntu-24.04-arm
- macos-15-intel
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@v5
-
name: Set up Docker
id: setup_docker
uses: ./
with:
version: ${{ env.DOCKER_VERSION }}
tcp-port: 2378
-
name: Check docker info through TCP
run: |
docker info
env:
DOCKER_HOST: ${{ steps.setup_docker.outputs.tcp }}
undock-regctl-version:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
undock_version:
- ''
- v0.9.0
regctl_version:
- ''
- v0.8.2
steps:
-
name: Checkout
uses: actions/checkout@v5
-
name: Set up Docker
uses: ./
with:
version: type=image
env:
UNDOCK_VERSION: ${{ matrix.undock_version }}
REGCTL_VERSION: ${{ matrix.regctl_version }}
docker-29:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- macos-15-intel
- windows-latest
steps:
-
name: Checkout
uses: actions/checkout@v5
-
name: Set up Docker
uses: ./
with:
version: v29.0.0-rc.1
channel: test

17
.github/workflows/pr-assign-author.yml vendored Normal file
View File

@@ -0,0 +1,17 @@
name: pr-assign-author
permissions:
contents: read
on:
pull_request_target:
types:
- opened
- reopened
jobs:
run:
uses: crazy-max/.github/.github/workflows/pr-assign-author.yml@1b673f36fad86812f538c1df9794904038a23cbf
permissions:
contents: read
pull-requests: write

21
.github/workflows/publish.yml vendored Normal file
View File

@@ -0,0 +1,21 @@
name: publish
on:
release:
types:
- published
jobs:
publish:
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
packages: write
steps:
-
name: Checkout
uses: actions/checkout@v5
-
name: Publish
uses: actions/publish-immutable-action@v0.0.4

View File

@@ -17,15 +17,16 @@ jobs:
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Test
uses: docker/bake-action@v5
uses: docker/bake-action@v6
with:
targets: test
-
name: Upload coverage
uses: codecov/codecov-action@v5
with:
source: .
files: ./coverage/clover.xml
token: ${{ secrets.CODECOV_TOKEN }}

View File

@@ -15,16 +15,17 @@ jobs:
prepare:
runs-on: ubuntu-latest
outputs:
targets: ${{ steps.targets.outputs.matrix }}
targets: ${{ steps.generate.outputs.targets }}
steps:
-
name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
-
name: Targets matrix
id: targets
run: |
echo "matrix=$(docker buildx bake validate --print | jq -cr '.group.validate.targets')" >> $GITHUB_OUTPUT
name: List targets
id: generate
uses: docker/bake-action/subaction/list-targets@v6
with:
target: validate
validate:
runs-on: ubuntu-latest
@@ -35,11 +36,8 @@ jobs:
matrix:
target: ${{ fromJson(needs.prepare.outputs.targets) }}
steps:
-
name: Checkout
uses: actions/checkout@v4
-
name: Validate
uses: docker/bake-action@v5
uses: docker/bake-action@v6
with:
targets: ${{ matrix.target }}

View File

@@ -31,6 +31,7 @@ ___
* [Define custom `limactl start` arguments (macOS)](#define-custom-limactl-start-arguments-macos)
* [Customizing](#customizing)
* [inputs](#inputs)
* [inputs.version](#inputsversion)
* [outputs](#outputs)
* [Contributing](#contributing)
* [License](#license)
@@ -51,7 +52,7 @@ jobs:
steps:
-
name: Set up Docker
uses: docker/setup-docker-action@v3
uses: docker/setup-docker-action@v4
```
### Daemon configuration
@@ -73,7 +74,7 @@ jobs:
steps:
-
name: Set up Docker
uses: docker/setup-docker-action@v3
uses: docker/setup-docker-action@v4
with:
daemon-config: |
{
@@ -101,7 +102,7 @@ jobs:
steps:
-
name: Set up Docker
uses: docker/setup-docker-action@v3
uses: docker/setup-docker-action@v4
env:
LIMA_START_ARGS: --cpus 4 --memory 8
```
@@ -112,22 +113,91 @@ jobs:
The following inputs can be used as `step.with` keys
| Name | Type | Default | Description |
|-----------------|--------|-----------------------|-----------------------------------------------------------------------------------------------------------------------------|
| `version` | String | `latest` | Docker CE version (e.g., `v24.0.6`). |
| `channel` | String | `stable` | Docker CE [channel](https://download.docker.com/linux/static/) (e.g, `stable`, `edge` or `test`). |
| `daemon-config` | String | | [Docker daemon JSON configuration](https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file) |
| `context` | String | `setup-docker-action` | Docker context name. |
| `set-host` | Bool | `false` | Set `DOCKER_HOST` environment variable to docker socket path. |
| `rootless` | Bool | `false` | Start daemon in rootless mode |
| Name | Type | Default | Description |
|-------------------|--------|------------------------------|-----------------------------------------------------------------------------------------------------------------------------|
| `version` | String | `latest` | Docker version to use. See [inputs.version](#inputs.version). |
| `channel` | String | `stable` | Docker CE [channel](https://download.docker.com/linux/static/) (`stable` or `test`). Only applicable to `type=archive` |
| `daemon-config` | String | | [Docker daemon JSON configuration](https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file) |
| `tcp-port` | Number | | TCP port to expose the Docker API locally |
| `context` | String | `setup-docker-action` | Docker context name. |
| `set-host` | Bool | `false` | Set `DOCKER_HOST` environment variable to docker socket path. |
| `rootless` | Bool | `false` | Start daemon in rootless mode |
| `runtime-basedir` | String | `<home>/setup-docker-action` | Docker runtime base directory |
### inputs.version
By default, the latest stable version of Docker is fetched from download.docker.com.
You can specify a specific version number (e.g. `v27.4.0`).
Which is a shorthand for the full comma separated value:
`type=archive,channel=stable,version=v27.4.0`
You can also use this full csv format instead.
Currently supported source types are:
- `archive`
- `image`
#### `type=archive`
| Key | Default | Description |
|-----------|------------|--------------------------------------------------------------------------------------|
| `type` | `archive` | The source type of the Docker binaries. Possible values are `archive` and `image`. |
| `channel` | `stable` | The download.docker.com channel (`stable` or `test`). |
| `version` | `latest` | The Docker version to use. |
Examples:
```yaml
# last stable released version
version: latest
version: type=archive # same as above
version: version=latest # same as above
version: type=archive,version=latest # same as above
```
```yaml
# v27.3.0-rc.1 from test channel
version: type=archive,version=27.3.0-rc.1,channel=test
```
#### `type=image`
Other possible source type is `image` which will pull the Docker binaries from the `moby/moby-bin` and
`dockereng/cli-bin` Docker Hub repositories.
The advantage of using this source type is that these images are built by the Moby and Docker CI pipelines
for each branch and PR, so you can use the `tag` input to install a specific version or branch (e.g. `master`).
| Key | Default | Description |
|-----------|------------|--------------------------------------------------------------------------------------|
| `tag` | `latest` | The image tag to use. |
See https://hub.docker.com/r/moby/moby-bin/tags and https://hub.docker.com/r/dockereng/cli-bin/tags for available tags.
Examples:
```yaml
# install last stable released version from bin images
version: type=image
version: type=image,tag=latest # same as above
```
```yaml
# a cutting-edge version from the `master` branch
version: type=image,tag=master
```
```yaml
# install v27.4.0 from bin images
version: type=image,tag=27.4.0
```
### outputs
The following outputs are available
| Name | Type | Description |
|--------|--------|--------------------|
| `sock` | String | Docker socket path |
| Name | Type | Description |
|--------|--------|---------------------------------------|
| `sock` | String | Docker socket path |
| `tcp` | String | Docker TCP address if tcp-port is set |
## Contributing

View File

@@ -1,4 +1,6 @@
import {beforeEach, describe, expect, test} from '@jest/globals';
import * as os from 'os';
import * as path from 'path';
import * as context from '../src/context';
@@ -30,7 +32,9 @@ describe('getInputs', () => {
context: '',
daemonConfig: '',
rootless: false,
setHost: false
setHost: false,
runtimeBasedir: path.join(os.homedir(), `setup-docker-action`),
githubToken: '',
} as context.Inputs
],
[
@@ -52,7 +56,9 @@ describe('getInputs', () => {
context: 'foo',
daemonConfig: `{"debug":true,"features":{"containerd-snapshotter":true}}`,
rootless: false,
setHost: false
setHost: false,
runtimeBasedir: path.join(os.homedir(), `setup-docker-action`),
githubToken: '',
} as context.Inputs
],
[
@@ -70,7 +76,9 @@ describe('getInputs', () => {
context: '',
daemonConfig: '',
rootless: false,
setHost: true
setHost: true,
runtimeBasedir: path.join(os.homedir(), `setup-docker-action`),
githubToken: '',
} as context.Inputs
],
[
@@ -90,7 +98,9 @@ describe('getInputs', () => {
context: 'foo',
daemonConfig: `{"debug":true,"features":{"containerd-snapshotter":true}}`,
rootless: false,
setHost: false
setHost: false,
runtimeBasedir: path.join(os.homedir(), `setup-docker-action`),
githubToken: '',
} as context.Inputs
],
[
@@ -108,7 +118,9 @@ describe('getInputs', () => {
context: '',
daemonConfig: '',
rootless: false,
setHost: false
setHost: false,
runtimeBasedir: path.join(os.homedir(), `setup-docker-action`),
githubToken: '',
} as context.Inputs
],
[
@@ -128,6 +140,8 @@ describe('getInputs', () => {
context: '',
daemonConfig: '',
rootless: false,
runtimeBasedir: path.join(os.homedir(), `setup-docker-action`),
githubToken: '',
} as context.Inputs
],
[
@@ -147,6 +161,8 @@ describe('getInputs', () => {
context: '',
daemonConfig: '',
rootless: false,
runtimeBasedir: path.join(os.homedir(), `setup-docker-action`),
githubToken: '',
} as context.Inputs
],
[
@@ -165,6 +181,8 @@ describe('getInputs', () => {
context: '',
daemonConfig: '',
rootless: false,
runtimeBasedir: path.join(os.homedir(), `setup-docker-action`),
githubToken: '',
} as context.Inputs
],
[
@@ -183,6 +201,31 @@ describe('getInputs', () => {
context: '',
daemonConfig: '',
rootless: true,
runtimeBasedir: path.join(os.homedir(), `setup-docker-action`),
githubToken: '',
} as context.Inputs
],
[
9,
new Map<string, string>([
['version', 'v24.0.8'],
['tcp-port', '2378'],
['set-host', 'false'],
['rootless', 'false'],
]),
{
source: {
type: 'archive',
version: 'v24.0.8',
channel: 'stable'
},
context: '',
daemonConfig: '',
tcpPort: 2378,
rootless: false,
setHost: false,
runtimeBasedir: path.join(os.homedir(), `setup-docker-action`),
githubToken: '',
} as context.Inputs
],
])(

View File

@@ -17,6 +17,9 @@ inputs:
daemon-config:
description: 'Docker daemon JSON configuration'
required: false
tcp-port:
description: 'TCP port to expose the Docker API locally'
required: false
context:
description: 'Docker context name. (default setup-docker-action)'
required: false
@@ -28,10 +31,19 @@ inputs:
description: 'Enable Docker rootless mode'
default: 'false'
required: false
runtime-basedir:
description: 'Docker runtime base directory'
required: false
github-token:
description: "GitHub Token used to get releases and download assets"
default: ${{ github.token }}
required: false
outputs:
sock:
description: "Docker socket path"
tcp:
description: "Docker TCP address if tcp-port is set"
runs:
using: 'node20'

28
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

6
dist/licenses.txt generated vendored
View File

@@ -2532,9 +2532,6 @@ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
dot-object
MIT
encoding
MIT
Copyright (c) 2012-2014 Andris Reinman
@@ -4247,9 +4244,6 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
twirp-ts
MIT
undici
MIT
MIT License

View File

@@ -1,3 +1,9 @@
target "_common" {
args = {
BUILDKIT_CONTEXT_KEEP_GIT_DIR = 1
}
}
group "default" {
targets = ["build"]
}
@@ -11,42 +17,49 @@ group "validate" {
}
target "build" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "build-update"
output = ["."]
}
target "build-validate" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "build-validate"
output = ["type=cacheonly"]
}
target "format" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "format-update"
output = ["."]
}
target "lint" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "lint"
output = ["type=cacheonly"]
}
target "vendor-update" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "vendor-update"
output = ["."]
}
target "vendor-validate" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "vendor-validate"
output = ["type=cacheonly"]
}
target "test" {
inherits = ["_common"]
dockerfile = "dev.Dockerfile"
target = "test-coverage"
output = ["./coverage"]

View File

@@ -27,7 +27,7 @@
"packageManager": "yarn@3.6.3",
"dependencies": {
"@actions/core": "^1.11.1",
"@docker/actions-toolkit": "^0.47.0"
"@docker/actions-toolkit": "^0.65.0"
},
"devDependencies": {
"@types/node": "^20.6.0",

View File

@@ -1,13 +1,20 @@
import os from 'os';
import path from 'path';
import * as core from '@actions/core';
import {InstallSource} from '@docker/actions-toolkit/lib/docker/install';
import {parse} from 'csv-parse/sync';
import {InstallSource} from '@docker/actions-toolkit/lib/docker/install';
import {Util} from '@docker/actions-toolkit/lib/util';
export interface Inputs {
source: InstallSource;
daemonConfig?: string;
tcpPort?: number;
context: string;
setHost: boolean;
rootless: boolean;
runtimeBasedir: string;
githubToken: string;
}
export function getInputs(): Inputs {
@@ -21,9 +28,12 @@ export function getInputs(): Inputs {
return {
source: source,
daemonConfig: core.getInput('daemon-config'),
tcpPort: Util.getInputNumber('tcp-port'),
context: core.getInput('context'),
setHost: core.getBooleanInput('set-host'),
rootless: core.getBooleanInput('rootless')
rootless: core.getBooleanInput('rootless'),
runtimeBasedir: core.getInput('runtime-basedir') || path.join(os.homedir(), `setup-docker-action`),
githubToken: core.getInput('github-token')
};
}

View File

@@ -1,30 +1,66 @@
import * as crypto from 'crypto';
import os from 'os';
import path from 'path';
import * as core from '@actions/core';
import * as actionsToolkit from '@docker/actions-toolkit';
import {Install} from '@docker/actions-toolkit/lib/docker/install';
import {Docker} from '@docker/actions-toolkit/lib/docker/docker';
import {Install as RegclientInstall} from '@docker/actions-toolkit/lib/regclient/install';
import {Install as UndockInstall} from '@docker/actions-toolkit/lib/undock/install';
import * as context from './context';
import * as stateHelper from './state-helper';
const regctlDefaultVersion = 'v0.8.3';
const undockDefaultVersion = 'v0.10.0';
actionsToolkit.run(
// main
async () => {
const input: context.Inputs = context.getInputs();
const runDir = path.join(os.homedir(), `setup-docker-action-${crypto.randomUUID().slice(0, 8)}`);
const runDir = path.join(input.runtimeBasedir, `run-${crypto.randomUUID().slice(0, 8)}`);
if (input.context == 'default') {
throw new Error(`'default' context cannot be used.`);
}
if (input.source.type === 'image') {
await core.group(`Download and install regctl`, async () => {
const regclientInstall = new RegclientInstall({githubToken: input.githubToken});
const regclientBinPath = await regclientInstall.download(
process.env.REGCTL_VERSION && process.env.REGCTL_VERSION.trim()
? process.env.REGCTL_VERSION
: regctlDefaultVersion,
true
);
await regclientInstall.install(regclientBinPath);
});
await core.group(`Download and install undock`, async () => {
const undockInstall = new UndockInstall({githubToken: input.githubToken});
const undockBinPath = await undockInstall.download(
process.env.UNDOCK_VERSION && process.env.UNDOCK_VERSION.trim()
? process.env.UNDOCK_VERSION
: undockDefaultVersion,
true
);
await undockInstall.install(undockBinPath);
});
}
let tcpPort: number | undefined;
let tcpAddress: string | undefined;
if (input.tcpPort) {
tcpPort = input.tcpPort;
tcpAddress = `tcp://127.0.0.1:${tcpPort}`;
}
const install = new Install({
runDir: runDir,
source: input.source,
rootless: input.rootless,
contextName: input.context || 'setup-docker-action',
daemonConfig: input.daemonConfig
daemonConfig: input.daemonConfig,
localTCPPort: tcpPort,
githubToken: input.githubToken
});
let toolDir;
if (!(await Docker.isAvailable()) || input.source) {
@@ -38,6 +74,10 @@ actionsToolkit.run(
await core.group(`Setting outputs`, async () => {
core.info(`sock=${sockPath}`);
core.setOutput('sock', sockPath);
if (tcpAddress) {
core.info(`tcp=${tcpAddress}`);
core.setOutput('tcp', tcpAddress);
}
});
if (input.setHost) {

916
yarn.lock

File diff suppressed because it is too large Load Diff