Compare commits

..

29 commits
v1.3.0 ... main

Author SHA1 Message Date
CrazyMax
1fa88fe2e9
Merge pull request #74 from crazy-max/fix-update-dist
Some checks failed
ci / main () (push) Has been cancelled
ci / main (cloud:latest) (push) Has been cancelled
ci / main (cloud:v2.29.1-desktop.2) (push) Has been cancelled
ci / main (latest) (push) Has been cancelled
ci / main (v2.32.4) (push) Has been cancelled
ci / multi (push) Has been cancelled
ci / standalone (push) Has been cancelled
ci / cache-binary (false) (push) Has been cancelled
ci / cache-binary (true) (push) Has been cancelled
codeql / analyze (push) Has been cancelled
test / test (push) Has been cancelled
validate / prepare (push) Has been cancelled
zizmor / zizmor (push) Has been cancelled
validate / validate (push) Has been cancelled
ci: stop update-dist reruns after generated dist pushes
2026-04-01 15:08:41 +02:00
CrazyMax
4dd2018f08
ci: stop update-dist reruns after generated dist pushes
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-04-01 13:13:26 +02:00
CrazyMax
a7bf4bb0de
Merge pull request #71 from docker/dependabot/github_actions/crazy-max/dot-github/dot-github/workflows/pr-assign-author.yml-1.3.0
Some checks failed
ci / main () (push) Has been cancelled
test / test (push) Has been cancelled
validate / prepare (push) Has been cancelled
zizmor / zizmor (push) Has been cancelled
ci / main (cloud:latest) (push) Has been cancelled
ci / main (cloud:v2.29.1-desktop.2) (push) Has been cancelled
ci / main (latest) (push) Has been cancelled
ci / main (v2.32.4) (push) Has been cancelled
ci / multi (push) Has been cancelled
ci / standalone (push) Has been cancelled
ci / cache-binary (false) (push) Has been cancelled
ci / cache-binary (true) (push) Has been cancelled
codeql / analyze (push) Has been cancelled
validate / validate (push) Has been cancelled
chore(deps): bump crazy-max/.github/.github/workflows/pr-assign-author.yml from 1.1.0 to 1.3.0
2026-03-31 09:28:35 +02:00
CrazyMax
d37d72e8fb
Merge pull request #73 from docker/dependabot/github_actions/codecov/codecov-action-6.0.0
chore(deps): bump codecov/codecov-action from 5.5.4 to 6.0.0
2026-03-31 09:28:17 +02:00
dependabot[bot]
1c09c4b7fd
chore(deps): bump codecov/codecov-action from 5.5.4 to 6.0.0
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 5.5.4 to 6.0.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](75cd11691c...57e3a136b7)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 12:15:35 +00:00
CrazyMax
78a92d0025
Merge pull request #72 from crazy-max/zizmor
Some checks are pending
ci / main () (push) Waiting to run
ci / main (cloud:latest) (push) Waiting to run
ci / main (cloud:v2.29.1-desktop.2) (push) Waiting to run
ci / main (latest) (push) Waiting to run
ci / main (v2.32.4) (push) Waiting to run
ci / multi (push) Waiting to run
ci / standalone (push) Waiting to run
ci / cache-binary (false) (push) Waiting to run
ci / cache-binary (true) (push) Waiting to run
codeql / analyze (push) Waiting to run
test / test (push) Waiting to run
validate / prepare (push) Waiting to run
validate / validate (push) Blocked by required conditions
zizmor / zizmor (push) Waiting to run
ci: zizmor workflow
2026-03-30 14:13:16 +02:00
CrazyMax
693fa383c9
fix zizmor findings
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-30 14:11:54 +02:00
CrazyMax
e83e727655
ci: zizmor workflow
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-30 14:11:54 +02:00
dependabot[bot]
ef6cd6678b
chore(deps): bump crazy-max/.github/.github/workflows/pr-assign-author.yml
Bumps [crazy-max/.github/.github/workflows/pr-assign-author.yml](https://github.com/crazy-max/.github) from 1.1.0 to 1.3.0.
- [Release notes](https://github.com/crazy-max/.github/releases)
- [Commits](20ef82212d...bb328ea508)

---
updated-dependencies:
- dependency-name: crazy-max/.github/.github/workflows/pr-assign-author.yml
  dependency-version: 1.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-30 01:33:23 +00:00
CrazyMax
9753a7600c
Merge pull request #65 from crazy-max/update-crazy-max-actions
Some checks failed
ci / main () (push) Has been cancelled
ci / main (cloud:latest) (push) Has been cancelled
ci / main (cloud:v2.29.1-desktop.2) (push) Has been cancelled
ci / main (latest) (push) Has been cancelled
ci / main (v2.32.4) (push) Has been cancelled
ci / multi (push) Has been cancelled
ci / standalone (push) Has been cancelled
ci / cache-binary (false) (push) Has been cancelled
ci / cache-binary (true) (push) Has been cancelled
test / test (push) Has been cancelled
validate / prepare (push) Has been cancelled
validate / validate (push) Has been cancelled
ci: bump crazy-max/.github to 1.1.0
2026-03-25 12:43:29 +01:00
CrazyMax
d21311de6c
ci: bump crazy-max/.github to 1.1.0
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-25 12:41:04 +01:00
CrazyMax
e29e0ecd23
Merge pull request #62 from crazy-max/codeql
Some checks failed
ci / main () (push) Has been cancelled
ci / main (cloud:latest) (push) Has been cancelled
ci / main (cloud:v2.29.1-desktop.2) (push) Has been cancelled
ci / main (latest) (push) Has been cancelled
ci / main (v2.32.4) (push) Has been cancelled
ci / multi (push) Has been cancelled
ci / standalone (push) Has been cancelled
ci / cache-binary (false) (push) Has been cancelled
ci / cache-binary (true) (push) Has been cancelled
validate / prepare (push) Has been cancelled
test / test (push) Has been cancelled
validate / validate (push) Has been cancelled
ci: enable SAST scanning with CodeQL
2026-03-20 12:44:10 +01:00
CrazyMax
18f12cbd7c
ci: enable SAST scanning with CodeQL
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-20 11:58:21 +01:00
CrazyMax
6c90c1a53d
Merge pull request #57 from docker/dependabot/github_actions/actions/create-github-app-token-3
Some checks failed
ci / main () (push) Has been cancelled
ci / main (cloud:latest) (push) Has been cancelled
ci / main (cloud:v2.29.1-desktop.2) (push) Has been cancelled
ci / main (latest) (push) Has been cancelled
ci / main (v2.32.4) (push) Has been cancelled
ci / multi (push) Has been cancelled
ci / standalone (push) Has been cancelled
ci / cache-binary (false) (push) Has been cancelled
ci / cache-binary (true) (push) Has been cancelled
test / test (push) Has been cancelled
validate / prepare (push) Has been cancelled
validate / validate (push) Has been cancelled
chore(deps): bump actions/create-github-app-token from 2 to 3
2026-03-16 12:47:06 +01:00
dependabot[bot]
bfdecb822f
chore(deps): bump actions/create-github-app-token from 2 to 3
Bumps [actions/create-github-app-token](https://github.com/actions/create-github-app-token) from 2 to 3.
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](https://github.com/actions/create-github-app-token/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/create-github-app-token
  dependency-version: '3'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 01:34:29 +00:00
CrazyMax
a918ce967a
Merge pull request #53 from docker/dependabot/github_actions/docker/bake-action-7
Some checks failed
ci / main () (push) Has been cancelled
ci / main (cloud:latest) (push) Has been cancelled
ci / main (cloud:v2.29.1-desktop.2) (push) Has been cancelled
ci / main (latest) (push) Has been cancelled
ci / main (v2.32.4) (push) Has been cancelled
ci / multi (push) Has been cancelled
ci / standalone (push) Has been cancelled
ci / cache-binary (true) (push) Has been cancelled
test / test (push) Has been cancelled
ci / cache-binary (false) (push) Has been cancelled
validate / prepare (push) Has been cancelled
validate / validate (push) Has been cancelled
chore(deps): bump docker/bake-action from 6 to 7
2026-03-09 17:04:39 +01:00
CrazyMax
9c7fb5dc45
ci: switch to matrix subaction
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-06 10:11:00 +01:00
dependabot[bot]
e1a8c01cf3
chore(deps): bump docker/bake-action from 6 to 7
Bumps [docker/bake-action](https://github.com/docker/bake-action) from 6 to 7.
- [Release notes](https://github.com/docker/bake-action/releases)
- [Commits](https://github.com/docker/bake-action/compare/v6...v7)

Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-06 10:10:16 +01:00
CrazyMax
1505d6d06c
Merge pull request #54 from docker/dependabot/github_actions/docker/setup-buildx-action-4
Some checks failed
ci / cache-binary (false) (push) Has been cancelled
ci / cache-binary (true) (push) Has been cancelled
ci / main () (push) Has been cancelled
ci / main (cloud:latest) (push) Has been cancelled
ci / main (cloud:v2.29.1-desktop.2) (push) Has been cancelled
ci / main (latest) (push) Has been cancelled
ci / main (v2.32.4) (push) Has been cancelled
ci / multi (push) Has been cancelled
ci / standalone (push) Has been cancelled
test / test (push) Has been cancelled
validate / prepare (push) Has been cancelled
validate / validate (push) Has been cancelled
chore(deps): bump docker/setup-buildx-action from 3 to 4
2026-03-06 10:08:06 +01:00
dependabot[bot]
7d413f9ed5
chore(deps): bump docker/setup-buildx-action from 3 to 4
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3 to 4.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-06 01:33:54 +00:00
CrazyMax
8cccb8c14b
Merge pull request #51 from docker/dependabot/npm_and_yarn/docker/actions-toolkit-0.79.0
Some checks are pending
ci / cache-binary (false) (push) Waiting to run
ci / main () (push) Waiting to run
ci / main (cloud:latest) (push) Waiting to run
ci / main (cloud:v2.29.1-desktop.2) (push) Waiting to run
ci / main (latest) (push) Waiting to run
ci / main (v2.32.4) (push) Waiting to run
ci / multi (push) Waiting to run
ci / standalone (push) Waiting to run
ci / cache-binary (true) (push) Waiting to run
test / test (push) Waiting to run
validate / prepare (push) Waiting to run
validate / validate (push) Blocked by required conditions
chore(deps): bump @docker/actions-toolkit from 0.77.0 to 0.79.0
2026-03-05 11:18:35 +01:00
CrazyMax
02f131839b
Merge pull request #50 from crazy-max/update-readme
readme: update to v2
2026-03-05 10:25:22 +01:00
github-actions[bot]
f40737bb30 chore: update generated content 2026-03-05 01:35:40 +00:00
dependabot[bot]
8a9a53a305
chore(deps): bump @docker/actions-toolkit from 0.77.0 to 0.79.0
Bumps [@docker/actions-toolkit](https://github.com/docker/actions-toolkit) from 0.77.0 to 0.79.0.
- [Release notes](https://github.com/docker/actions-toolkit/releases)
- [Commits](https://github.com/docker/actions-toolkit/compare/v0.77.0...v0.79.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-05 01:34:41 +00:00
CrazyMax
f7c51678a6
readme: update to v2
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-02 14:39:11 +01:00
CrazyMax
112d3e30db
Merge pull request #49 from crazy-max/node24
Some checks failed
test / test (push) Has been cancelled
validate / prepare (push) Has been cancelled
validate / validate (push) Has been cancelled
ci / main (latest) (push) Has been cancelled
ci / main (v2.32.4) (push) Has been cancelled
ci / multi (push) Has been cancelled
ci / main () (push) Has been cancelled
ci / main (cloud:latest) (push) Has been cancelled
ci / main (cloud:v2.29.1-desktop.2) (push) Has been cancelled
ci / standalone (push) Has been cancelled
ci / cache-binary (false) (push) Has been cancelled
ci / cache-binary (true) (push) Has been cancelled
node 24 as default runtime
2026-03-02 14:33:37 +01:00
CrazyMax
9a3285656d
node 24 as default runtime
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-02 14:28:30 +01:00
CrazyMax
2dd6325a67
Merge pull request #48 from crazy-max/nits
fix some nits to be consistent across actions
2026-03-02 10:41:10 +01:00
CrazyMax
5cff5dd8b8
fix some nits to be consistent across actions
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2026-03-02 09:47:03 +01:00
21 changed files with 183 additions and 104 deletions

View file

@ -4,6 +4,12 @@ updates:
directory: "/" directory: "/"
schedule: schedule:
interval: "daily" interval: "daily"
cooldown:
default-days: 2
groups:
crazy-max-dot-github:
patterns:
- "crazy-max/.github/*"
labels: labels:
- "dependencies" - "dependencies"
- "bot" - "bot"
@ -11,6 +17,8 @@ updates:
directory: "/" directory: "/"
schedule: schedule:
interval: "daily" interval: "daily"
cooldown:
default-days: 2
versioning-strategy: "increase" versioning-strategy: "increase"
allow: allow:
- dependency-type: "production" - dependency-type: "production"

View file

@ -1,5 +1,8 @@
name: ci name: ci
permissions:
contents: read
concurrency: concurrency:
group: ${{ github.workflow }}-${{ github.ref }} group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
@ -31,7 +34,7 @@ jobs:
steps: steps:
- -
name: Checkout name: Checkout
uses: actions/checkout@v6 uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- -
name: Set up Docker Compose name: Set up Docker Compose
uses: ./ uses: ./
@ -43,7 +46,7 @@ jobs:
steps: steps:
- -
name: Checkout name: Checkout
uses: actions/checkout@v6 uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- -
name: Set up Docker Compose 1 name: Set up Docker Compose 1
uses: ./ uses: ./
@ -56,7 +59,7 @@ jobs:
steps: steps:
- -
name: Checkout name: Checkout
uses: actions/checkout@v6 uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- -
name: Uninstall docker cli name: Uninstall docker cli
run: | run: |
@ -80,7 +83,7 @@ jobs:
steps: steps:
- -
name: Checkout name: Checkout
uses: actions/checkout@v6 uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- -
name: Set up Docker Compose name: Set up Docker Compose
uses: ./ uses: ./

46
.github/workflows/codeql.yml vendored Normal file
View file

@ -0,0 +1,46 @@
name: codeql
permissions:
contents: read
on:
push:
branches:
- 'main'
- 'releases/v*'
pull_request:
env:
NODE_VERSION: "24"
jobs:
analyze:
runs-on: ubuntu-latest
permissions:
contents: read
security-events: write
steps:
-
name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
-
name: Enable corepack
run: |
corepack enable
yarn --version
-
name: Set up Node
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
with:
node-version: ${{ env.NODE_VERSION }}
-
name: Initialize CodeQL
uses: github/codeql-action/init@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1
with:
languages: javascript-typescript
build-mode: none
-
name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@c10b8064de6f491fea524254123dbe5e09572f13 # v4.35.1
with:
category: "/language:javascript-typescript"

View file

@ -4,14 +4,14 @@ permissions:
contents: read contents: read
on: on:
pull_request_target: pull_request_target: # zizmor: ignore[dangerous-triggers] safe to use without checkout
types: types:
- opened - opened
- reopened - reopened
jobs: jobs:
run: run:
uses: crazy-max/.github/.github/workflows/pr-assign-author.yml@1b673f36fad86812f538c1df9794904038a23cbf uses: crazy-max/.github/.github/workflows/pr-assign-author.yml@bb328ea508cd6a89d0865555ddbeb148e5724aed # v1.3.0
permissions: permissions:
contents: read contents: read
pull-requests: write pull-requests: write

View file

@ -1,5 +1,12 @@
name: publish name: publish
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on: on:
release: release:
types: types:
@ -15,7 +22,7 @@ jobs:
steps: steps:
- -
name: Checkout name: Checkout
uses: actions/checkout@v6 uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- -
name: Publish name: Publish
uses: actions/publish-immutable-action@v0.0.4 uses: actions/publish-immutable-action@4bc8754ffc40f27910afb20287dbbbb675a4e978 # v0.0.4

View file

@ -1,42 +1,35 @@
name: test name: test
permissions:
contents: read
concurrency: concurrency:
group: ${{ github.workflow }}-${{ github.ref }} group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
on: on:
workflow_dispatch:
push: push:
branches: branches:
- 'main' - 'main'
- 'releases/v*' - 'releases/v*'
pull_request: pull_request:
env:
SETUP_BUILDX_VERSION: "edge"
jobs: jobs:
test: test:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- -
name: Checkout name: Checkout
uses: actions/checkout@v6 uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
version: ${{ env.SETUP_BUILDX_VERSION }}
driver: docker
- -
name: Test name: Test
uses: docker/bake-action@v6 uses: docker/bake-action@82490499d2e5613fcead7e128237ef0b0ea210f7 # v7.0.0
with: with:
source: . source: .
targets: test targets: test
- -
name: Upload coverage name: Upload coverage
uses: codecov/codecov-action@v5 uses: codecov/codecov-action@57e3a136b779b570ffcdbf80b3bdc90e7fab3de2 # v6.0.0
with: with:
files: ./coverage/clover.xml files: ./coverage/clover.xml
token: ${{ secrets.CODECOV_TOKEN }} token: ${{ secrets.CODECOV_TOKEN }}

View file

@ -1,5 +1,12 @@
name: update-dist name: update-dist
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on: on:
pull_request: pull_request:
types: types:
@ -8,27 +15,27 @@ on:
jobs: jobs:
update-dist: update-dist:
if: github.actor == 'dependabot[bot]' if: github.actor == 'dependabot[bot]' && github.event.pull_request.user.login == 'dependabot[bot]' && github.repository == github.event.pull_request.head.repo.full_name
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- -
name: GitHub auth token from GitHub App name: GitHub auth token from GitHub App
id: docker-read-app id: docker-read-app
uses: actions/create-github-app-token@v2 uses: actions/create-github-app-token@f8d387b68d61c58ab83c6c016672934102569859 # v3.0.0
with: with:
app-id: ${{ secrets.GHACTIONS_REPO_WRITE_APP_ID }} app-id: ${{ secrets.GHACTIONS_REPO_WRITE_APP_ID }}
private-key: ${{ secrets.GHACTIONS_REPO_WRITE_APP_PRIVATE_KEY }} private-key: ${{ secrets.GHACTIONS_REPO_WRITE_APP_PRIVATE_KEY }}
owner: docker owner: docker
- -
name: Checkout name: Checkout
uses: actions/checkout@v6 uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with: with:
ref: ${{ github.event.pull_request.head.ref }} ref: ${{ github.event.pull_request.head.ref }}
fetch-depth: 0 fetch-depth: 0
token: ${{ steps.docker-read-app.outputs.token || github.token }} token: ${{ steps.docker-read-app.outputs.token }}
- -
name: Build name: Build
uses: docker/bake-action@v6 uses: docker/bake-action@82490499d2e5613fcead7e128237ef0b0ea210f7 # v7.0.0
with: with:
source: . source: .
targets: build targets: build

View file

@ -1,33 +1,32 @@
name: validate name: validate
permissions:
contents: read
concurrency: concurrency:
group: ${{ github.workflow }}-${{ github.ref }} group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true cancel-in-progress: true
on: on:
workflow_dispatch:
push: push:
branches: branches:
- 'main' - 'main'
- 'releases/v*' - 'releases/v*'
pull_request: pull_request:
env:
SETUP_BUILDX_VERSION: "edge"
jobs: jobs:
prepare: prepare:
runs-on: ubuntu-latest runs-on: ubuntu-latest
outputs: outputs:
targets: ${{ steps.generate.outputs.targets }} matrix: ${{ steps.generate.outputs.matrix }}
steps: steps:
- -
name: Checkout name: Checkout
uses: actions/checkout@v6 uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- -
name: List targets name: Generate matrix
id: generate id: generate
uses: docker/bake-action/subaction/list-targets@v6 uses: docker/bake-action/subaction/matrix@82490499d2e5613fcead7e128237ef0b0ea210f7 # v7.0.0
with: with:
target: validate target: validate
@ -38,16 +37,10 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
target: ${{ fromJson(needs.prepare.outputs.targets) }} include: ${{ fromJson(needs.prepare.outputs.matrix) }}
steps: steps:
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
version: ${{ env.SETUP_BUILDX_VERSION }}
driver: docker
- -
name: Validate name: Validate
uses: docker/bake-action@v6 uses: docker/bake-action@82490499d2e5613fcead7e128237ef0b0ea210f7 # v7.0.0
with: with:
targets: ${{ matrix.target }} targets: ${{ matrix.target }}

29
.github/workflows/zizmor.yml vendored Normal file
View file

@ -0,0 +1,29 @@
name: zizmor
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
workflow_dispatch:
push:
branches:
- 'main'
- 'releases/v*'
tags:
- 'v*'
pull_request:
jobs:
zizmor:
uses: crazy-max/.github/.github/workflows/zizmor.yml@bb328ea508cd6a89d0865555ddbeb148e5724aed # v1.3.0
permissions:
contents: read
security-events: write
with:
min-severity: medium
min-confidence: medium
persona: pedantic

3
.github/zizmor.yml vendored Normal file
View file

@ -0,0 +1,3 @@
rules:
secrets-outside-env: # FIXME: remove this rule when zizmor 1.24.0 is released, fixing the right persona attached to this rule: https://github.com/zizmorcore/zizmor/pull/1783
disable: true

View file

@ -31,7 +31,7 @@ jobs:
steps: steps:
- -
name: Set up Docker Compose name: Set up Docker Compose
uses: docker/setup-compose-action@v1 uses: docker/setup-compose-action@v2
``` ```
> [!NOTE] > [!NOTE]
@ -44,7 +44,7 @@ To always download and install the latest version of Docker Compose:
```yaml ```yaml
- -
name: Set up Docker Compose name: Set up Docker Compose
uses: docker/setup-compose-action@v1 uses: docker/setup-compose-action@v2
with: with:
version: latest version: latest
``` ```

View file

@ -32,7 +32,7 @@ describe('getInputs', () => {
}); });
// prettier-ignore // prettier-ignore
test.each([ const cases: [number, Map<string, string>, context.Inputs][] = [
[ [
0, 0,
new Map<string, string>([ new Map<string, string>([
@ -41,7 +41,7 @@ describe('getInputs', () => {
{ {
version: '', version: '',
cacheBinary: true, cacheBinary: true,
} as context.Inputs }
], ],
[ [
1, 1,
@ -52,18 +52,16 @@ describe('getInputs', () => {
{ {
version: 'v2.32.4', version: 'v2.32.4',
cacheBinary: false cacheBinary: false
} as context.Inputs }
] ]
])( ];
'[%d] given %p as inputs, returns %p', test.each(cases)('[%d] given %o as inputs, returns %o', async (num: number, inputs: Map<string, string>, expected: context.Inputs) => {
async (num: number, inputs: Map<string, string>, expected: context.Inputs) => { inputs.forEach((value: string, name: string) => {
inputs.forEach((value: string, name: string) => { setInput(name, value);
setInput(name, value); });
}); const res = await context.getInputs();
const res = await context.getInputs(); expect(res).toEqual(expected);
expect(res).toEqual(expected); });
}
);
}); });
// See: https://github.com/actions/toolkit/blob/master/packages/core/src/core.ts#L67 // See: https://github.com/actions/toolkit/blob/master/packages/core/src/core.ts#L67

View file

@ -2,7 +2,7 @@ import fs from 'node:fs';
import os from 'node:os'; import os from 'node:os';
import path from 'node:path'; import path from 'node:path';
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'docker-actions-toolkit-')); const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'docker-setup-compose-action-'));
process.env = Object.assign({}, process.env, { process.env = Object.assign({}, process.env, {
TEMP: tmpDir, TEMP: tmpDir,

View file

@ -16,6 +16,6 @@ inputs:
required: false required: false
runs: runs:
using: 'node20' using: 'node24'
main: 'dist/index.js' main: 'dist/index.js'
post: 'dist/index.js' post: 'dist/index.js'

View file

@ -1,12 +1,13 @@
# syntax=docker/dockerfile:1 # syntax=docker/dockerfile:1
ARG NODE_VERSION=20 ARG NODE_VERSION=24
FROM node:${NODE_VERSION}-alpine AS base FROM node:${NODE_VERSION}-alpine AS base
RUN apk add --no-cache cpio findutils git RUN apk add --no-cache cpio findutils git rsync
WORKDIR /src WORKDIR /src
RUN --mount=type=bind,target=.,rw \ RUN --mount=type=bind,target=.,rw \
--mount=type=cache,target=/src/.yarn/cache <<EOT --mount=type=cache,target=/src/.yarn/cache <<EOT
set -e
corepack enable corepack enable
yarn --version yarn --version
yarn config set --home enableTelemetry 0 yarn config set --home enableTelemetry 0
@ -34,18 +35,27 @@ RUN --mount=type=bind,target=.,rw <<EOT
EOT EOT
FROM deps AS build FROM deps AS build
RUN --mount=type=bind,target=.,rw \ RUN --mount=target=/context \
--mount=type=cache,target=/src/.yarn/cache \ --mount=type=cache,target=/src/.yarn/cache \
--mount=type=cache,target=/src/node_modules \ --mount=type=cache,target=/src/node_modules <<EOT
yarn run build && mkdir /out && cp -Rf dist /out/ set -e
rsync -a /context/. .
rm -rf dist
yarn run build
mkdir /out
cp -r dist /out
EOT
FROM scratch AS build-update FROM scratch AS build-update
COPY --from=build /out / COPY --from=build /out /
FROM build AS build-validate FROM build AS build-validate
RUN --mount=type=bind,target=.,rw <<EOT RUN --mount=target=/context \
--mount=target=.,type=tmpfs <<EOT
set -e set -e
rsync -a /context/. .
git add -A git add -A
rm -rf dist
cp -rf /out/* . cp -rf /out/* .
if [ -n "$(git status --porcelain -- dist)" ]; then if [ -n "$(git status --porcelain -- dist)" ]; then
echo >&2 'ERROR: Build result differs. Please build first with "docker buildx bake build"' echo >&2 'ERROR: Build result differs. Please build first with "docker buildx bake build"'
@ -58,8 +68,7 @@ FROM deps AS format
RUN --mount=type=bind,target=.,rw \ RUN --mount=type=bind,target=.,rw \
--mount=type=cache,target=/src/.yarn/cache \ --mount=type=cache,target=/src/.yarn/cache \
--mount=type=cache,target=/src/node_modules \ --mount=type=cache,target=/src/node_modules \
yarn run format \ yarn run format && mkdir /out && find . -name '*.ts' -not -path './node_modules/*' -not -path './.yarn/*' | cpio -pdm /out
&& mkdir /out && find . -name '*.ts' -not -path './node_modules/*' -not -path './.yarn/*' | cpio -pdm /out
FROM scratch AS format-update FROM scratch AS format-update
COPY --from=format /out / COPY --from=format /out /

2
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

View file

@ -23,11 +23,11 @@
"packageManager": "yarn@4.9.2", "packageManager": "yarn@4.9.2",
"dependencies": { "dependencies": {
"@actions/core": "^3.0.0", "@actions/core": "^3.0.0",
"@docker/actions-toolkit": "^0.77.0" "@docker/actions-toolkit": "^0.79.0"
}, },
"devDependencies": { "devDependencies": {
"@eslint/js": "^9.39.3", "@eslint/js": "^9.39.3",
"@types/node": "^20.19.35", "@types/node": "^24.11.0",
"@typescript-eslint/eslint-plugin": "^8.56.1", "@typescript-eslint/eslint-plugin": "^8.56.1",
"@typescript-eslint/parser": "^8.56.1", "@typescript-eslint/parser": "^8.56.1",
"@vercel/ncc": "^0.38.4", "@vercel/ncc": "^0.38.4",

View file

@ -3,7 +3,6 @@
"module": "nodenext", "module": "nodenext",
"moduleResolution": "nodenext", "moduleResolution": "nodenext",
"esModuleInterop": true, "esModuleInterop": true,
"strict": true,
"newLine": "lf", "newLine": "lf",
"outDir": "./lib", "outDir": "./lib",
"rootDir": "./src", "rootDir": "./src",

View file

@ -1,19 +1,3 @@
/**
* Copyright 2026 actions-toolkit authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import {defineConfig} from 'vitest/config'; import {defineConfig} from 'vitest/config';
export default defineConfig({ export default defineConfig({
@ -26,7 +10,7 @@ export default defineConfig({
provider: 'v8', provider: 'v8',
reporter: ['clover'], reporter: ['clover'],
include: ['src/**/*.ts'], include: ['src/**/*.ts'],
exclude: ['src/**/main.ts', '__tests__/**', 'dist/**'] exclude: ['src/**/main.ts']
} }
} }
}); });

View file

@ -367,9 +367,9 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@docker/actions-toolkit@npm:^0.77.0": "@docker/actions-toolkit@npm:^0.79.0":
version: 0.77.0 version: 0.79.0
resolution: "@docker/actions-toolkit@npm:0.77.0" resolution: "@docker/actions-toolkit@npm:0.79.0"
dependencies: dependencies:
"@actions/artifact": "npm:^6.2.0" "@actions/artifact": "npm:^6.2.0"
"@actions/cache": "npm:^6.0.0" "@actions/cache": "npm:^6.0.0"
@ -393,7 +393,7 @@ __metadata:
semver: "npm:^7.7.4" semver: "npm:^7.7.4"
tar-stream: "npm:^3.1.7" tar-stream: "npm:^3.1.7"
tmp: "npm:^0.2.5" tmp: "npm:^0.2.5"
checksum: 10/f3ae817a5a6827efc63d1a1730e918801a8fa33867cda72bd7a1f78309631c45d91de60bc57985c7520fae168e96daed0fcab0003b5fab9b50bdd7aa355d651b checksum: 10/d64849ba49b2b59e2e93237a70be03fd7c43b1f7f01bac3f7557616ba5f59be785cb12a273bbb6a71c1e0d959f1bc6c673111b587c57bd2d6da105dcc500921a
languageName: node languageName: node
linkType: hard linkType: hard
@ -1291,12 +1291,12 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@types/node@npm:^20.19.35": "@types/node@npm:^24.11.0":
version: 20.19.35 version: 24.11.0
resolution: "@types/node@npm:20.19.35" resolution: "@types/node@npm:24.11.0"
dependencies: dependencies:
undici-types: "npm:~6.21.0" undici-types: "npm:~7.16.0"
checksum: 10/f14fa74f9ae4d1109d8a8e3ec31b6518122b3d31c28fd5725cb3eef8ff64d7cf6f8da9c84c78b512e2968006ec325c82a413cc2062da7b3c3230c882e88babba checksum: 10/d2f4f898c6a0f14980e55c697904fb58681729fc46b4e264d5f64dc391b23da73c9b422cfffbca28c045e6e8eca72dab5f28ed633faa95398ef1528af5398382
languageName: node languageName: node
linkType: hard linkType: hard
@ -2082,9 +2082,9 @@ __metadata:
resolution: "docker-setup-compose@workspace:." resolution: "docker-setup-compose@workspace:."
dependencies: dependencies:
"@actions/core": "npm:^3.0.0" "@actions/core": "npm:^3.0.0"
"@docker/actions-toolkit": "npm:^0.77.0" "@docker/actions-toolkit": "npm:^0.79.0"
"@eslint/js": "npm:^9.39.3" "@eslint/js": "npm:^9.39.3"
"@types/node": "npm:^20.19.35" "@types/node": "npm:^24.11.0"
"@typescript-eslint/eslint-plugin": "npm:^8.56.1" "@typescript-eslint/eslint-plugin": "npm:^8.56.1"
"@typescript-eslint/parser": "npm:^8.56.1" "@typescript-eslint/parser": "npm:^8.56.1"
"@vercel/ncc": "npm:^0.38.4" "@vercel/ncc": "npm:^0.38.4"
@ -4374,10 +4374,10 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"undici-types@npm:~6.21.0": "undici-types@npm:~7.16.0":
version: 6.21.0 version: 7.16.0
resolution: "undici-types@npm:6.21.0" resolution: "undici-types@npm:7.16.0"
checksum: 10/ec8f41aa4359d50f9b59fa61fe3efce3477cc681908c8f84354d8567bb3701fafdddf36ef6bff307024d3feb42c837cf6f670314ba37fc8145e219560e473d14 checksum: 10/db43439f69c2d94cc29f75cbfe9de86df87061d6b0c577ebe9bb3255f49b22c50162a7d7eb413b0458b6510b8ca299ac7cff38c3a29fbd31af9f504bcf7fbc0d
languageName: node languageName: node
linkType: hard linkType: hard