Compare commits

..

124 Commits

Author SHA1 Message Date
CrazyMax
619687375a Merge pull request #257 from crazy-max/buildx-install-nocache-opt
Some checks failed
publish / publish (push) Has been cancelled
buildx: ghaNoCache opt for download/build to disable binary cache
2024-02-23 10:20:57 +01:00
CrazyMax
cbc244c2f4 buildx: ghaNoCache opt for download/build to disable binary cache
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-23 10:11:20 +01:00
CrazyMax
f1c76199be Merge pull request #256 from docker/dependabot/npm_and_yarn/octokit/plugin-rest-endpoint-methods-10.4.0
build(deps): bump @octokit/plugin-rest-endpoint-methods from 10.3.0 to 10.4.0
2024-02-23 09:25:36 +01:00
dependabot[bot]
b0d1226bb6 build(deps): bump @octokit/plugin-rest-endpoint-methods
Bumps [@octokit/plugin-rest-endpoint-methods](https://github.com/octokit/plugin-rest-endpoint-methods.js) from 10.3.0 to 10.4.0.
- [Release notes](https://github.com/octokit/plugin-rest-endpoint-methods.js/releases)
- [Commits](https://github.com/octokit/plugin-rest-endpoint-methods.js/compare/v10.3.0...v10.4.0)

---
updated-dependencies:
- dependency-name: "@octokit/plugin-rest-endpoint-methods"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-22 22:33:47 +00:00
CrazyMax
039e7f9c6e Merge pull request #255 from crazy-max/codecov-token
ci: set codecov token
2024-02-22 17:13:06 +01:00
CrazyMax
048d6c3fbe ci: set codecov token
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-22 17:01:50 +01:00
CrazyMax
59a3548fbb Merge pull request #254 from docker/bot/buildx-lab-releases-json
Update `.github/buildx-lab-releases.json`
2024-02-22 07:49:24 +01:00
crazy-max
c1429fefa4 github: update .github/buildx-lab-releases.json
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-22 00:13:33 +00:00
CrazyMax
1274cd2848 Merge pull request #253 from docker/dependabot/npm_and_yarn/octokit/plugin-rest-endpoint-methods-10.3.0
build(deps): bump @octokit/plugin-rest-endpoint-methods from 10.2.0 to 10.3.0
2024-02-16 08:16:06 +01:00
dependabot[bot]
48394d7948 build(deps): bump @octokit/plugin-rest-endpoint-methods
Bumps [@octokit/plugin-rest-endpoint-methods](https://github.com/octokit/plugin-rest-endpoint-methods.js) from 10.2.0 to 10.3.0.
- [Release notes](https://github.com/octokit/plugin-rest-endpoint-methods.js/releases)
- [Commits](https://github.com/octokit/plugin-rest-endpoint-methods.js/compare/v10.2.0...v10.3.0)

---
updated-dependencies:
- dependency-name: "@octokit/plugin-rest-endpoint-methods"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-15 22:23:59 +00:00
CrazyMax
aebb2a6f58 Merge pull request #252 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2024-02-07 14:20:23 +01:00
crazy-max
dff5cd7e88 github: update .github/docker-releases.json
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-07 12:07:55 +00:00
CrazyMax
7e4d49d3be Merge pull request #251 from crazy-max/bump-artifact-v4
bump actions/download-artifact to v4
2024-02-06 18:25:59 +01:00
CrazyMax
dee5356ab8 bump actions/download-artifact to v4
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-06 15:15:07 +01:00
CrazyMax
2267dad53e Merge pull request #249 from crazy-max/test-check-coverage
test: use testResultsProcessor to check if all tests are skipped
2024-02-05 10:30:16 +01:00
CrazyMax
666b19e915 bump codecov/codecov-action to 4
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-05 10:20:52 +01:00
CrazyMax
a5975adf41 test: use testResultsProcessor to check if all tests are skipped
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-05 10:20:52 +01:00
CrazyMax
3f7d7f75b5 Merge pull request #248 from crazy-max/fix-itg-cond
test: fix typo on itg run condition
2024-02-05 09:37:11 +01:00
CrazyMax
299d4131fa test: fix typo on itg run condition
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-05 09:34:49 +01:00
CrazyMax
ab1052f7e0 Merge pull request #247 from crazy-max/test-buildx-install
buildx: test install
2024-02-05 09:30:34 +01:00
CrazyMax
bf4bc3c036 test: move itg exclusions to jest
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-05 09:26:59 +01:00
CrazyMax
49a22f7a3e buildx: test install
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-05 09:06:27 +01:00
CrazyMax
03b8464ee3 Merge pull request #246 from crazy-max/cache-class
cache class for tool caching with gha
2024-02-05 08:52:26 +01:00
CrazyMax
0a1d2c2307 cache class for tool caching with gha
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-04 18:10:00 +01:00
CrazyMax
0adac517e3 Merge pull request #244 from docker/dependabot/npm_and_yarn/actions/cache-3.2.4
build(deps): bump @actions/cache from 3.2.3 to 3.2.4
2024-02-04 11:56:15 +01:00
CrazyMax
012b121eb5 Merge pull request #245 from crazy-max/gh-workflow-run-url
github: workflowRunURL
2024-02-04 11:55:21 +01:00
CrazyMax
11cc7c697d github: workflowRunURL
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2024-02-04 11:08:41 +01:00
dependabot[bot]
0721cb2aa9 build(deps): bump @actions/cache from 3.2.3 to 3.2.4
Bumps [@actions/cache](https://github.com/actions/toolkit/tree/HEAD/packages/cache) from 3.2.3 to 3.2.4.
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/cache/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/cache)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-01 22:30:47 +00:00
CrazyMax
26949f5f39 Merge pull request #243 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2024-02-01 15:12:41 +01:00
crazy-max
32b78e4566 github: update .github/docker-releases.json
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-02-01 13:59:24 +00:00
CrazyMax
2d240ca0fc Merge pull request #242 from docker/dependabot/github_actions/peter-evans/create-pull-request-6.0.0
build(deps): bump peter-evans/create-pull-request from 5.0.2 to 6.0.0
2024-02-01 14:58:53 +01:00
CrazyMax
8c09071628 Merge pull request #236 from docker/dependabot/npm_and_yarn/octokit/core-5.1.0
build(deps): bump @octokit/core from 5.0.2 to 5.1.0
2024-02-01 14:58:30 +01:00
CrazyMax
a9fec88f7a Merge pull request #240 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2024-02-01 14:58:03 +01:00
crazy-max
066518ecec github: update .github/docker-releases.json
Signed-off-by: GitHub <noreply@github.com>
2024-02-01 12:08:06 +00:00
dependabot[bot]
d63347f68f build(deps): bump peter-evans/create-pull-request from 5.0.2 to 6.0.0
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 5.0.2 to 6.0.0.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](153407881e...b1ddad2c99)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-31 22:35:51 +00:00
CrazyMax
9282d3e13b Merge pull request #237 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2024-01-24 13:48:22 +01:00
crazy-max
d240b3146a github: update .github/docker-releases.json
Signed-off-by: GitHub <noreply@github.com>
2024-01-24 12:08:43 +00:00
dependabot[bot]
7063f758ae build(deps): bump @octokit/core from 5.0.2 to 5.1.0
Bumps [@octokit/core](https://github.com/octokit/core.js) from 5.0.2 to 5.1.0.
- [Release notes](https://github.com/octokit/core.js/releases)
- [Commits](https://github.com/octokit/core.js/compare/v5.0.2...v5.1.0)

---
updated-dependencies:
- dependency-name: "@octokit/core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-22 22:42:12 +00:00
CrazyMax
ad2fe8539c Merge pull request #235 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2024-01-20 07:12:21 +01:00
crazy-max
5d0a08a448 github: update .github/docker-releases.json
Signed-off-by: GitHub <noreply@github.com>
2024-01-20 00:21:30 +00:00
CrazyMax
66f17c25e3 Merge pull request #234 from docker/bot/buildx-lab-releases-json
Update `.github/buildx-lab-releases.json`
2024-01-19 13:19:53 +01:00
crazy-max
bf9adbe540 github: update .github/buildx-lab-releases.json
Signed-off-by: GitHub <noreply@github.com>
2024-01-19 12:05:43 +00:00
CrazyMax
f2a56cda90 Merge pull request #233 from docker/bot/buildx-lab-releases-json
Update `.github/buildx-lab-releases.json`
2024-01-18 16:05:52 +01:00
crazy-max
a60fe56754 github: update .github/buildx-lab-releases.json
Signed-off-by: GitHub <noreply@github.com>
2024-01-18 15:05:23 +00:00
CrazyMax
9c42213ecc Merge pull request #232 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2024-01-18 08:13:16 +01:00
crazy-max
2e9fde295e github: update .github/docker-releases.json
Signed-off-by: GitHub <noreply@github.com>
2024-01-18 00:22:20 +00:00
CrazyMax
942777afdc Merge pull request #231 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2024-01-13 13:52:01 +01:00
crazy-max
d468250481 github: update .github/docker-releases.json
Signed-off-by: GitHub <noreply@github.com>
2024-01-13 12:07:29 +00:00
CrazyMax
8854de97ed Merge pull request #230 from docker/bot/buildx-releases-json
Update `.github/buildx-releases.json`
2024-01-12 09:36:33 +01:00
crazy-max
666e090b82 github: update .github/buildx-releases.json
Signed-off-by: GitHub <noreply@github.com>
2024-01-12 08:35:36 +00:00
CrazyMax
f04fa19563 Merge pull request #229 from docker/dependabot/npm_and_yarn/actions/cache-3.2.3
build(deps): bump @actions/cache from 3.2.2 to 3.2.3
2024-01-12 09:35:02 +01:00
dependabot[bot]
f8b8b5b18d build(deps): bump @actions/cache from 3.2.2 to 3.2.3
Bumps [@actions/cache](https://github.com/actions/toolkit/tree/HEAD/packages/cache) from 3.2.2 to 3.2.3.
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/cache/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/cache)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-11 22:16:29 +00:00
CrazyMax
f92cc3db0b Merge pull request #227 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2024-01-05 10:55:23 +01:00
crazy-max
032e16cf73 github: update .github/docker-releases.json
Signed-off-by: GitHub <noreply@github.com>
2024-01-05 00:21:59 +00:00
CrazyMax
a6a71daf88 Merge pull request #226 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2024-01-04 09:14:09 +01:00
crazy-max
e298150fd7 github: update .github/docker-releases.json
Signed-off-by: GitHub <noreply@github.com>
2023-12-22 12:07:48 +00:00
CrazyMax
a99fb34091 Merge pull request #225 from crazy-max/fix-bake-error
Some checks failed
publish / publish (push) Has been cancelled
bake: correctly match error when parsing definition
2023-12-21 11:44:07 +01:00
CrazyMax
3a20771080 bake: correctly match error when parsing definition
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2023-12-20 13:58:27 +01:00
CrazyMax
5430d017a5 Merge pull request #224 from neilime/fix/git-suuport-grafted-pull-refs
Some checks failed
publish / publish (push) Has been cancelled
fix(git): supports grafted pull refs
2023-12-15 16:58:16 +01:00
Emilien Escalle
e3bdf20325 fix(git): supports grafted pull refs
Signed-off-by: Emilien Escalle <emilien.escalle@escemi.com>
2023-12-15 16:37:02 +01:00
CrazyMax
f8ca396f63 Merge pull request #222 from docker/dependabot/github_actions/github/codeql-action-3
Some checks failed
publish / publish (push) Has been cancelled
build(deps): bump github/codeql-action from 2 to 3
2023-12-14 14:30:39 +01:00
dependabot[bot]
603112bbed build(deps): bump github/codeql-action from 2 to 3
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2 to 3.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v2...v3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-13 22:08:08 +00:00
CrazyMax
31a5828eff Merge pull request #219 from docker/dependabot/npm_and_yarn/csv-parse-5.5.3
build(deps): bump csv-parse from 5.5.2 to 5.5.3
2023-12-13 10:31:17 +01:00
CrazyMax
b3bb7713d9 Merge pull request #221 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2023-12-13 10:30:43 +01:00
crazy-max
6273173795 github: update .github/docker-releases.json
Signed-off-by: GitHub <noreply@github.com>
2023-12-13 00:21:52 +00:00
dependabot[bot]
5fd725469f build(deps): bump csv-parse from 5.5.2 to 5.5.3
Bumps [csv-parse](https://github.com/adaltas/node-csv/tree/HEAD/packages/csv-parse) from 5.5.2 to 5.5.3.
- [Changelog](https://github.com/adaltas/node-csv/blob/master/packages/csv-parse/CHANGELOG.md)
- [Commits](https://github.com/adaltas/node-csv/commits/csv-parse@5.5.3/packages/csv-parse)

---
updated-dependencies:
- dependency-name: csv-parse
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-12 14:03:18 +00:00
CrazyMax
7929028d80 Merge pull request #220 from crazy-max/lima-custom-images
docker(install): allow specifying custom lima images
2023-12-12 15:01:26 +01:00
CrazyMax
4995997eed docker(install): allow specifying custom lima images
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2023-12-10 19:23:48 +01:00
CrazyMax
348446a8d6 docker(install): print lima version
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2023-12-10 19:23:48 +01:00
CrazyMax
c8a1b7a531 docker(install): don't auto update brew when installing lima
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2023-12-10 15:11:39 +01:00
CrazyMax
911d146f5f Merge pull request #218 from docker/bot/buildx-lab-releases-json
Update `.github/buildx-lab-releases.json`
2023-12-06 09:01:00 -08:00
crazy-max
0cc3169aa7 github: update .github/buildx-lab-releases.json
Signed-off-by: GitHub <noreply@github.com>
2023-12-06 16:55:28 +00:00
CrazyMax
1de2911b5e Merge pull request #216 from docker/bot/docker-releases-json
Some checks failed
publish / publish (push) Has been cancelled
Update `.github/docker-releases.json`
2023-12-03 15:38:34 -08:00
crazy-max
9e9fc490d2 github: update .github/docker-releases.json
Signed-off-by: GitHub <noreply@github.com>
2023-12-03 23:38:24 +00:00
CrazyMax
a45afd3161 Merge pull request #217 from hoverkraft-tech/fix/handle-detached-ref-shallow-clone
fix(git): handle detached ref in shallow clone context
2023-12-03 15:37:54 -08:00
Emilien Escalle
7d829c430b fix(git): handle detached ref in shallow clone context
Signed-off-by: Emilien Escalle <emilien.escalle@escemi.com>
2023-12-03 21:15:38 +01:00
CrazyMax
ddc04994d9 Merge pull request #215 from docker/bot/buildx-lab-releases-json
Update `.github/buildx-lab-releases.json`
2023-12-01 03:20:11 -08:00
crazy-max
b613f395b8 github: update .github/buildx-lab-releases.json
Signed-off-by: GitHub <noreply@github.com>
2023-12-01 11:19:42 +00:00
CrazyMax
9e405d775a Merge pull request #214 from docker/dependabot/npm_and_yarn/octokit/plugin-rest-endpoint-methods-10.2.0
Some checks failed
publish / publish (push) Has been cancelled
build(deps): bump @octokit/plugin-rest-endpoint-methods from 10.1.5 to 10.2.0
2023-11-29 02:59:11 -08:00
CrazyMax
248fc44d7e Merge pull request #213 from crazy-max/switch-to-lima
docker(install): switch to lima
2023-11-29 02:47:26 -08:00
dependabot[bot]
e907622be4 build(deps): bump @octokit/plugin-rest-endpoint-methods
Bumps [@octokit/plugin-rest-endpoint-methods](https://github.com/octokit/plugin-rest-endpoint-methods.js) from 10.1.5 to 10.2.0.
- [Release notes](https://github.com/octokit/plugin-rest-endpoint-methods.js/releases)
- [Commits](https://github.com/octokit/plugin-rest-endpoint-methods.js/compare/v10.1.5...v10.2.0)

---
updated-dependencies:
- dependency-name: "@octokit/plugin-rest-endpoint-methods"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-28 22:26:11 +00:00
CrazyMax
5bc270dc53 Merge pull request #212 from docker/dependabot/npm_and_yarn/octokit/core-5.0.2
build(deps): bump @octokit/core from 5.0.1 to 5.0.2
2023-11-27 04:36:42 -08:00
CrazyMax
c1ecc4b621 docker(install): don't upgrade unrelated packages when installing lima
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2023-11-27 01:58:24 +01:00
CrazyMax
0a04d5661f docker(install): switch to lima
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2023-11-27 01:58:23 +01:00
dependabot[bot]
252cfd570c build(deps): bump @octokit/core from 5.0.1 to 5.0.2
Bumps [@octokit/core](https://github.com/octokit/core.js) from 5.0.1 to 5.0.2.
- [Release notes](https://github.com/octokit/core.js/releases)
- [Commits](https://github.com/octokit/core.js/compare/v5.0.1...v5.0.2)

---
updated-dependencies:
- dependency-name: "@octokit/core"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-22 22:40:09 +00:00
CrazyMax
2f97829cfc Merge pull request #211 from docker/bot/buildx-lab-releases-json
Update `.github/buildx-lab-releases.json`
2023-11-21 08:45:32 -08:00
crazy-max
ea541ecec7 github: update .github/buildx-lab-releases.json
Signed-off-by: GitHub <noreply@github.com>
2023-11-21 16:44:54 +00:00
CrazyMax
64a550a5dc Merge pull request #209 from docker/bot/buildx-releases-json
Update `.github/buildx-releases.json`
2023-11-17 02:12:12 -08:00
crazy-max
73bb35d328 github: update .github/buildx-releases.json
Signed-off-by: GitHub <noreply@github.com>
2023-11-17 00:15:29 +00:00
CrazyMax
97573bff9a Merge pull request #201 from crazy-max/colima-update
Some checks failed
publish / publish (push) Has been cancelled
docker(install): fallback to journalctl to print docker daemon logs
2023-11-16 03:43:14 -08:00
CrazyMax
cef4c16170 ci(test): add macos-13 to the matrix
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2023-11-16 12:28:24 +01:00
CrazyMax
3281ef2a12 docker(install): simplify provision
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2023-11-16 11:55:01 +01:00
CrazyMax
03b93c3aee docker(install): fallback to journalctl to print docker daemon logs
colima only supports Ubuntu image since 0.6.0 which
runs docker as systemd unit.

Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2023-11-16 11:55:01 +01:00
CrazyMax
f8909e3265 docker(install): remove deprecated colima config
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2023-11-16 11:55:00 +01:00
CrazyMax
624fee6e10 Merge pull request #206 from docker/dependabot/npm_and_yarn/octokit/plugin-rest-endpoint-methods-10.1.5
build(deps): bump @octokit/plugin-rest-endpoint-methods from 10.1.3 to 10.1.5
2023-11-16 02:20:13 -08:00
CrazyMax
e927ebb09c Merge pull request #207 from crazy-max/tempdir-runner-temp
Use RUNNER_TEMP as temp directory
2023-11-16 02:19:20 -08:00
CrazyMax
5250fc63c3 Merge pull request #204 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2023-11-16 02:17:08 -08:00
CrazyMax
77c591b46c Merge pull request #208 from docker/bot/buildx-releases-json
Update `.github/buildx-releases.json`
2023-11-16 02:16:53 -08:00
CrazyMax
602235dcce Use RUNNER_TEMP as temp directory
Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com>
2023-11-16 11:13:12 +01:00
crazy-max
3ca52c06b2 github: update .github/buildx-releases.json
Signed-off-by: GitHub <noreply@github.com>
2023-11-16 00:15:36 +00:00
dependabot[bot]
7c2659dc5d build(deps): bump @octokit/plugin-rest-endpoint-methods
Bumps [@octokit/plugin-rest-endpoint-methods](https://github.com/octokit/plugin-rest-endpoint-methods.js) from 10.1.3 to 10.1.5.
- [Release notes](https://github.com/octokit/plugin-rest-endpoint-methods.js/releases)
- [Commits](https://github.com/octokit/plugin-rest-endpoint-methods.js/compare/v10.1.3...v10.1.5)

---
updated-dependencies:
- dependency-name: "@octokit/plugin-rest-endpoint-methods"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-14 22:43:45 +00:00
crazy-max
307731cacb github: update .github/docker-releases.json
Signed-off-by: GitHub <noreply@github.com>
2023-11-14 00:21:04 +00:00
CrazyMax
81355687c2 Merge pull request #202 from crazy-max/align-node-version
ci: align node version
2023-11-13 02:21:38 -08:00
CrazyMax
cca99038ee ci: align node version
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-11-13 10:21:54 +01:00
CrazyMax
24a9fd8152 Merge pull request #198 from docker/dependabot/npm_and_yarn/octokit/plugin-rest-endpoint-methods-10.1.3
build(deps): bump @octokit/plugin-rest-endpoint-methods from 10.1.2 to 10.1.3
2023-11-11 06:14:22 -08:00
dependabot[bot]
53e9f24dd0 build(deps): bump @octokit/plugin-rest-endpoint-methods
Bumps [@octokit/plugin-rest-endpoint-methods](https://github.com/octokit/plugin-rest-endpoint-methods.js) from 10.1.2 to 10.1.3.
- [Release notes](https://github.com/octokit/plugin-rest-endpoint-methods.js/releases)
- [Commits](https://github.com/octokit/plugin-rest-endpoint-methods.js/compare/v10.1.2...v10.1.3)

---
updated-dependencies:
- dependency-name: "@octokit/plugin-rest-endpoint-methods"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-09 22:51:15 +00:00
CrazyMax
b525cd9de8 Merge pull request #197 from crazy-max/ci-codeql
ci: enable SAST scanning with CodeQL
2023-10-30 02:23:18 -07:00
CrazyMax
21a7def1e9 Merge pull request #195 from docker/bot/docker-releases-json
Update `.github/docker-releases.json`
2023-10-30 01:54:05 -07:00
CrazyMax
243e746a8d Merge pull request #196 from docker/dependabot/npm_and_yarn/jwt-decode-4.0.0
build(deps): bump jwt-decode from 3.1.2 to 4.0.0
2023-10-30 01:53:46 -07:00
CrazyMax
b212b3b35e chore: fix incomplete string escaping
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-10-28 08:38:35 +02:00
CrazyMax
191def3857 ci: enable SAST scanning with CodeQL
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-10-28 08:31:56 +02:00
CrazyMax
0e5f8a766a github: fix jwt-decode import and test
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-10-28 04:37:59 +02:00
dependabot[bot]
a625c7487f build(deps): bump jwt-decode from 3.1.2 to 4.0.0
Bumps [jwt-decode](https://github.com/auth0/jwt-decode) from 3.1.2 to 4.0.0.
- [Release notes](https://github.com/auth0/jwt-decode/releases)
- [Changelog](https://github.com/auth0/jwt-decode/blob/main/CHANGELOG.md)
- [Commits](https://github.com/auth0/jwt-decode/compare/v3.1.2...v4.0.0)

---
updated-dependencies:
- dependency-name: jwt-decode
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-27 22:45:49 +00:00
crazy-max
e8569c2d9b github: update .github/docker-releases.json
Signed-off-by: GitHub <noreply@github.com>
2023-10-27 12:07:45 +00:00
CrazyMax
7b1a9e4e34 Merge pull request #193 from docker/bot/buildx-releases-json
Update `.github/buildx-releases.json`
2023-10-26 21:38:53 -07:00
CrazyMax
8b3ff1beb0 Merge pull request #190 from docker/dependabot/npm_and_yarn/octokit/plugin-rest-endpoint-methods-10.1.2
build(deps): bump @octokit/plugin-rest-endpoint-methods from 10.0.1 to 10.1.2
2023-10-26 21:38:33 -07:00
crazy-max
35555f7a24 github: update .github/buildx-releases.json
Signed-off-by: GitHub <noreply@github.com>
2023-10-27 04:38:00 +00:00
CrazyMax
5562309585 Merge pull request #192 from docker/dependabot/npm_and_yarn/babel/traverse-7.23.2
build(deps): bump @babel/traverse from 7.17.3 to 7.23.2
2023-10-26 21:37:29 -07:00
CrazyMax
2848275bb4 Merge pull request #191 from docker/dependabot/npm_and_yarn/undici-5.27.0
build(deps): bump undici from 5.25.4 to 5.27.0
2023-10-26 21:37:10 -07:00
dependabot[bot]
48c7d682b4 build(deps): bump @babel/traverse from 7.17.3 to 7.23.2
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.17.3 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-27 04:26:32 +00:00
dependabot[bot]
04d1940f48 build(deps): bump undici from 5.25.4 to 5.27.0
Bumps [undici](https://github.com/nodejs/undici) from 5.25.4 to 5.27.0.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/commits/v5.27.0)

---
updated-dependencies:
- dependency-name: undici
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-27 04:23:02 +00:00
dependabot[bot]
6af9ce25af build(deps): bump @octokit/plugin-rest-endpoint-methods
Bumps [@octokit/plugin-rest-endpoint-methods](https://github.com/octokit/plugin-rest-endpoint-methods.js) from 10.0.1 to 10.1.2.
- [Release notes](https://github.com/octokit/plugin-rest-endpoint-methods.js/releases)
- [Commits](https://github.com/octokit/plugin-rest-endpoint-methods.js/compare/v10.0.1...v10.1.2)

---
updated-dependencies:
- dependency-name: "@octokit/plugin-rest-endpoint-methods"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-26 22:32:42 +00:00
CrazyMax
1e2ed9bcf1 Merge pull request #187 from docker/dependabot/github_actions/actions/setup-node-4
build(deps): bump actions/setup-node from 3 to 4
2023-10-23 15:36:17 -07:00
dependabot[bot]
3e8e9fc046 build(deps): bump actions/setup-node from 3 to 4
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-23 22:15:26 +00:00
33 changed files with 1338 additions and 530 deletions

View File

@@ -1,43 +1,207 @@
{
"latest": {
"id": 123496811,
"tag_name": "v0.11.2-desktop.5",
"html_url": "https://github.com/docker/buildx-desktop/releases/tag/v0.11.2-desktop.5",
"id": 137689487,
"tag_name": "v0.12.1-desktop.4",
"html_url": "https://github.com/docker/buildx-desktop/releases/tag/v0.12.1-desktop.4",
"assets": [
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.darwin-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.darwin-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.darwin-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.darwin-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.darwin-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.darwin-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-arm-v6",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-arm-v7",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-ppc64le",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-riscv64",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-riscv64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-riscv64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-s390x",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-s390x.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.linux-s390x.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.windows-amd64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.windows-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.windows-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.windows-arm64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.windows-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/buildx-v0.11.2-desktop.5.windows-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.11.2-desktop.5/checksums.txt"
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v6",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v7",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-ppc64le",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-riscv64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-riscv64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-riscv64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-s390x",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-s390x.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-s390x.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-amd64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-arm64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/checksums.txt"
]
},
"v0.12.1-desktop.4": {
"id": 137689487,
"tag_name": "v0.12.1-desktop.4",
"html_url": "https://github.com/docker/buildx-desktop/releases/tag/v0.12.1-desktop.4",
"assets": [
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.darwin-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v6",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v7",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-ppc64le",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-riscv64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-riscv64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-riscv64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-s390x",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-s390x.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.linux-s390x.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-amd64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-arm64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/buildx-v0.12.1-desktop.4.windows-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.4/checksums.txt"
]
},
"v0.12.1-desktop.3": {
"id": 137560191,
"tag_name": "v0.12.1-desktop.3",
"html_url": "https://github.com/docker/buildx-desktop/releases/tag/v0.12.1-desktop.3",
"assets": [
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.darwin-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.darwin-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.darwin-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.darwin-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.darwin-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.darwin-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-arm-v6",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-arm-v7",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-ppc64le",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-riscv64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-riscv64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-riscv64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-s390x",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-s390x.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.linux-s390x.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.windows-amd64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.windows-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.windows-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.windows-arm64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.windows-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/buildx-v0.12.1-desktop.3.windows-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.1-desktop.3/checksums.txt"
]
},
"v0.12.0-desktop.2": {
"id": 132264953,
"tag_name": "v0.12.0-desktop.2",
"html_url": "https://github.com/docker/buildx-desktop/releases/tag/v0.12.0-desktop.2",
"assets": [
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.darwin-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.darwin-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.darwin-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.darwin-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.darwin-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.darwin-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-arm-v6",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-arm-v7",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-ppc64le",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-riscv64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-riscv64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-riscv64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-s390x",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-s390x.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.linux-s390x.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.windows-amd64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.windows-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.windows-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.windows-arm64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.windows-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/buildx-v0.12.0-desktop.2.windows-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.2/checksums.txt"
]
},
"v0.12.0-desktop.1": {
"id": 130699107,
"tag_name": "v0.12.0-desktop.1",
"html_url": "https://github.com/docker/buildx-desktop/releases/tag/v0.12.0-desktop.1",
"assets": [
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.darwin-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.darwin-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.darwin-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.darwin-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.darwin-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.darwin-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-amd64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-arm-v6",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-arm-v7",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-arm64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-ppc64le",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-riscv64",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-riscv64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-riscv64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-s390x",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-s390x.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.linux-s390x.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.windows-amd64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.windows-amd64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.windows-amd64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.windows-arm64.exe",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.windows-arm64.provenance.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/buildx-v0.12.0-desktop.1.windows-arm64.sbom.json",
"https://github.com/docker/buildx-desktop/releases/download/v0.12.0-desktop.1/checksums.txt"
]
},
"v0.11.2-desktop.5": {

View File

@@ -1,43 +1,207 @@
{
"latest": {
"id": 112690624,
"tag_name": "v0.11.2",
"html_url": "https://github.com/docker/buildx/releases/tag/v0.11.2",
"id": 136761257,
"tag_name": "v0.12.1",
"html_url": "https://github.com/docker/buildx/releases/tag/v0.12.1",
"assets": [
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.darwin-amd64",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.darwin-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.darwin-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.darwin-arm64",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.darwin-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.darwin-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-amd64",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-arm-v6",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-arm-v7",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-arm64",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-ppc64le",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-riscv64",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-riscv64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-riscv64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-s390x",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-s390x.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.linux-s390x.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.windows-amd64.exe",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.windows-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.windows-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.windows-arm64.exe",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.windows-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/buildx-v0.11.2.windows-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.11.2/checksums.txt"
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-amd64",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-arm64",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-amd64",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v6",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v7",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm64",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-ppc64le",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-riscv64",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-riscv64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-riscv64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-s390x",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-s390x.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-s390x.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-amd64.exe",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-arm64.exe",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/checksums.txt"
]
},
"v0.12.1": {
"id": 136761257,
"tag_name": "v0.12.1",
"html_url": "https://github.com/docker/buildx/releases/tag/v0.12.1",
"assets": [
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-amd64",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-arm64",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.darwin-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-amd64",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v6",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v7",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm64",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-ppc64le",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-riscv64",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-riscv64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-riscv64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-s390x",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-s390x.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.linux-s390x.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-amd64.exe",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-arm64.exe",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/buildx-v0.12.1.windows-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.1/checksums.txt"
]
},
"v0.12.0": {
"id": 129855827,
"tag_name": "v0.12.0",
"html_url": "https://github.com/docker/buildx/releases/tag/v0.12.0",
"assets": [
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.darwin-amd64",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.darwin-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.darwin-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.darwin-arm64",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.darwin-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.darwin-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-amd64",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-arm-v6",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-arm-v7",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-arm64",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-ppc64le",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-riscv64",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-riscv64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-riscv64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-s390x",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-s390x.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.linux-s390x.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.windows-amd64.exe",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.windows-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.windows-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.windows-arm64.exe",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.windows-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/buildx-v0.12.0.windows-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0/checksums.txt"
]
},
"v0.12.0-rc2": {
"id": 129419270,
"tag_name": "v0.12.0-rc2",
"html_url": "https://github.com/docker/buildx/releases/tag/v0.12.0-rc2",
"assets": [
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.darwin-amd64",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.darwin-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.darwin-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.darwin-arm64",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.darwin-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.darwin-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-amd64",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-arm-v6",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-arm-v7",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-arm64",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-ppc64le",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-riscv64",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-riscv64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-riscv64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-s390x",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-s390x.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.linux-s390x.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.windows-amd64.exe",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.windows-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.windows-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.windows-arm64.exe",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.windows-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/buildx-v0.12.0-rc2.windows-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc2/checksums.txt"
]
},
"v0.12.0-rc1": {
"id": 126865056,
"tag_name": "v0.12.0-rc1",
"html_url": "https://github.com/docker/buildx/releases/tag/v0.12.0-rc1",
"assets": [
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.darwin-amd64",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.darwin-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.darwin-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.darwin-arm64",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.darwin-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.darwin-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-amd64",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-arm-v6",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-arm-v6.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-arm-v6.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-arm-v7",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-arm-v7.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-arm-v7.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-arm64",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-ppc64le",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-ppc64le.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-ppc64le.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-riscv64",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-riscv64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-riscv64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-s390x",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-s390x.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.linux-s390x.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.windows-amd64.exe",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.windows-amd64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.windows-amd64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.windows-arm64.exe",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.windows-arm64.provenance.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/buildx-v0.12.0-rc1.windows-arm64.sbom.json",
"https://github.com/docker/buildx/releases/download/v0.12.0-rc1/checksums.txt"
]
},
"v0.11.2": {

View File

@@ -1,8 +1,104 @@
{
"latest": {
"id": 120021175,
"tag_name": "v24.0.6",
"html_url": "https://github.com/moby/moby/releases/tag/v24.0.6",
"id": 140187402,
"tag_name": "v25.0.3",
"html_url": "https://github.com/moby/moby/releases/tag/v25.0.3",
"assets": []
},
"v25.0.3": {
"id": 140187402,
"tag_name": "v25.0.3",
"html_url": "https://github.com/moby/moby/releases/tag/v25.0.3",
"assets": []
},
"v25.0.2": {
"id": 139426676,
"tag_name": "v25.0.2",
"html_url": "https://github.com/moby/moby/releases/tag/v25.0.2",
"assets": []
},
"v24.0.9": {
"id": 139508924,
"tag_name": "v24.0.9",
"html_url": "https://github.com/moby/moby/releases/tag/v24.0.9",
"assets": []
},
"v23.0.9": {
"id": 139233691,
"tag_name": "v23.0.9",
"html_url": "https://github.com/moby/moby/releases/tag/v23.0.9",
"assets": []
},
"v24.0.8": {
"id": 138593185,
"tag_name": "v24.0.8",
"html_url": "https://github.com/moby/moby/releases/tag/v24.0.8",
"assets": []
},
"v25.0.1": {
"id": 138305010,
"tag_name": "v25.0.1",
"html_url": "https://github.com/moby/moby/releases/tag/v25.0.1",
"assets": []
},
"v25.0.0": {
"id": 137711983,
"tag_name": "v25.0.0",
"html_url": "https://github.com/moby/moby/releases/tag/v25.0.0",
"assets": []
},
"v25.0.0-rc.3": {
"id": 137464931,
"tag_name": "v25.0.0-rc.3",
"html_url": "https://github.com/moby/moby/releases/tag/v25.0.0-rc.3",
"assets": []
},
"v25.0.0-rc.2": {
"id": 136912066,
"tag_name": "v25.0.0-rc.2",
"html_url": "https://github.com/moby/moby/releases/tag/v25.0.0-rc.2",
"assets": []
},
"v25.0.0-rc.1": {
"id": 135904442,
"tag_name": "v25.0.0-rc.1",
"html_url": "https://github.com/moby/moby/releases/tag/v25.0.0-rc.1",
"assets": []
},
"v25.0.0-beta.3": {
"id": 134782996,
"tag_name": "v25.0.0-beta.3",
"html_url": "https://github.com/moby/moby/releases/tag/v25.0.0-beta.3",
"assets": []
},
"v25.0.0-beta.2": {
"id": 133659834,
"tag_name": "v25.0.0-beta.2",
"html_url": "https://github.com/moby/moby/releases/tag/v25.0.0-beta.2",
"assets": []
},
"v23.0.8": {
"id": 132317923,
"tag_name": "v23.0.8",
"html_url": "https://github.com/moby/moby/releases/tag/v23.0.8",
"assets": []
},
"v20.10.27": {
"id": 132318746,
"tag_name": "v20.10.27",
"html_url": "https://github.com/moby/moby/releases/tag/v20.10.27",
"assets": []
},
"v25.0.0-beta.1": {
"id": 129244747,
"tag_name": "v25.0.0-beta.1",
"html_url": "https://github.com/moby/moby/releases/tag/v25.0.0-beta.1",
"assets": []
},
"v24.0.7": {
"id": 126933125,
"tag_name": "v24.0.7",
"html_url": "https://github.com/moby/moby/releases/tag/v24.0.7",
"assets": []
},
"v23.0.7": {

View File

@@ -17,7 +17,7 @@ on:
jobs:
generate:
uses: crazy-max/.github/.github/workflows/releases-json.yml@6dc31870ca6c4f8489bf5a408ab38fae60f47eec
uses: crazy-max/.github/.github/workflows/releases-json.yml@fa6141aedf23596fb8bdcceab9cce8dadaa31bd9
with:
repository: docker/buildx-desktop
artifact_name: buildx-lab-releases-json
@@ -35,7 +35,7 @@ jobs:
uses: actions/checkout@v4
-
name: Download
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: buildx-lab-releases-json
path: .github
@@ -45,7 +45,7 @@ jobs:
git add -A .
-
name: Create PR
uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38
uses: peter-evans/create-pull-request@b1ddad2c994a25fbc81a28b3ec0e368bb2021c50
with:
base: main
branch: bot/buildx-lab-releases-json

View File

@@ -17,7 +17,7 @@ on:
jobs:
generate:
uses: crazy-max/.github/.github/workflows/releases-json.yml@6dc31870ca6c4f8489bf5a408ab38fae60f47eec
uses: crazy-max/.github/.github/workflows/releases-json.yml@fa6141aedf23596fb8bdcceab9cce8dadaa31bd9
with:
repository: docker/buildx
artifact_name: buildx-releases-json
@@ -35,7 +35,7 @@ jobs:
uses: actions/checkout@v4
-
name: Download
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: buildx-releases-json
path: .github
@@ -45,7 +45,7 @@ jobs:
git add -A .
-
name: Create PR
uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38
uses: peter-evans/create-pull-request@b1ddad2c994a25fbc81a28b3ec0e368bb2021c50
with:
base: main
branch: bot/buildx-releases-json

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

@@ -0,0 +1,41 @@
name: codeql
on:
push:
branches:
- 'main'
pull_request:
permissions:
actions: read
contents: read
security-events: write
env:
NODE_VERSION: 20
jobs:
analyze:
runs-on: ubuntu-latest
steps:
-
name: Checkout
uses: actions/checkout@v4
-
name: Set up Node
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}
-
name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: javascript-typescript
-
name: Autobuild
uses: github/codeql-action/autobuild@v3
-
name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:javascript-typescript"

View File

@@ -17,7 +17,7 @@ on:
jobs:
generate:
uses: crazy-max/.github/.github/workflows/releases-json.yml@6dc31870ca6c4f8489bf5a408ab38fae60f47eec
uses: crazy-max/.github/.github/workflows/releases-json.yml@fa6141aedf23596fb8bdcceab9cce8dadaa31bd9
with:
repository: moby/moby
artifact_name: docker-releases-json
@@ -35,7 +35,7 @@ jobs:
uses: actions/checkout@v4
-
name: Download
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
name: docker-releases-json
path: .github
@@ -45,7 +45,7 @@ jobs:
git add -A .
-
name: Create PR
uses: peter-evans/create-pull-request@153407881ec5c347639a548ade7d8ad1d6740e38
uses: peter-evans/create-pull-request@b1ddad2c994a25fbc81a28b3ec0e368bb2021c50
with:
base: main
branch: bot/docker-releases-json

View File

@@ -13,6 +13,9 @@ on:
paths-ignore:
- '.github/*-releases.json'
env:
NODE_VERSION: "20"
jobs:
test:
runs-on: ubuntu-latest
@@ -27,12 +30,23 @@ jobs:
targets: test-coverage
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
name: Check coverage
run: |
if [ -f ./coverage/clover.xml ] && [ ! -f ./coverage/allSkipped.txt ]; then
echo "RUN_CODECOV=true" >> $GITHUB_ENV
else
echo "RUN_CODECOV=false" >> $GITHUB_ENV
fi
shell: bash
-
name: Upload coverage
uses: codecov/codecov-action@v3
uses: codecov/codecov-action@v4
if: env.RUN_CODECOV == 'true'
with:
file: ./coverage/clover.xml
flags: unit
token: ${{ secrets.CODECOV_TOKEN }}
prepare-itg:
runs-on: ubuntu-latest
@@ -44,9 +58,9 @@ jobs:
uses: actions/checkout@v4
-
name: Setup Node
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 16
node-version: ${{ env.NODE_VERSION }}
cache: 'yarn'
-
name: Install
@@ -75,34 +89,42 @@ jobs:
test: ${{ fromJson(needs.prepare-itg.outputs.matrix) }}
os:
- ubuntu-latest
- macos-13
- macos-latest
- windows-latest
exclude:
- os: macos-latest
test: buildx/bake.test.itg.ts
- os: windows-latest
test: buildx/bake.test.itg.ts
steps:
-
name: Checkout
uses: actions/checkout@v4
-
name: Setup Node
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 16
node-version: ${{ env.NODE_VERSION }}
cache: 'yarn'
-
name: Install
run: yarn install
-
name: Test
run: yarn test:itg-coverage --runTestsByPath __tests__/${{ matrix.test }} --coverageDirectory=./coverage
run: |
yarn test:itg-coverage --runTestsByPath __tests__/${{ matrix.test }} --coverageDirectory=./coverage
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
name: Check coverage
run: |
if [ -f ./coverage/clover.xml ] && [ ! -f ./coverage/allSkipped.txt ]; then
echo "RUN_CODECOV=true" >> $GITHUB_ENV
else
echo "RUN_CODECOV=false" >> $GITHUB_ENV
fi
shell: bash
-
name: Upload coverage
uses: codecov/codecov-action@v3
uses: codecov/codecov-action@v4
if: env.RUN_CODECOV == 'true'
with:
file: ./coverage/clover.xml
flags: itg
token: ${{ secrets.CODECOV_TOKEN }}

View File

@@ -23,11 +23,13 @@ import {BakeDefinition} from '../../src/types/bake';
const fixturesDir = path.join(__dirname, '..', 'fixtures');
const maybe = !process.env.GITHUB_ACTIONS || (process.env.GITHUB_ACTIONS === 'true' && process.env.ImageOS && process.env.ImageOS.startsWith('ubuntu')) ? describe : describe.skip;
beforeEach(() => {
jest.clearAllMocks();
});
describe('parseDefinitions', () => {
maybe('parseDefinitions', () => {
// prettier-ignore
test.each([
[

View File

@@ -0,0 +1,42 @@
/**
* Copyright 2023 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 {describe, expect, test} from '@jest/globals';
import * as fs from 'fs';
import {Install} from '../../src/buildx/install';
const maybe = !process.env.GITHUB_ACTIONS || (process.env.GITHUB_ACTIONS === 'true' && process.env.ImageOS && process.env.ImageOS.startsWith('ubuntu')) ? describe : describe.skip;
maybe('download', () => {
// prettier-ignore
test.each(['latest'])(
'install docker %s', async (version) => {
await expect((async () => {
const install = new Install({
standalone: true
});
const toolPath = await install.download(version);
if (!fs.existsSync(toolPath)) {
throw new Error('toolPath does not exist');
}
const binPath = await install.installStandalone(toolPath);
if (!fs.existsSync(binPath)) {
throw new Error('binPath does not exist');
}
})()).resolves.not.toThrow();
}, 60000);
});

View File

@@ -67,6 +67,17 @@ describe('download', () => {
expect(fs.existsSync(toolPath)).toBe(true);
});
// prettier-ignore
test.each([
['v0.11.2'],
['v0.12.0'],
])(
'acquires %p of buildx without cache', async (version) => {
const install = new Install({standalone: false});
const toolPath = await install.download(version, true);
expect(fs.existsSync(toolPath)).toBe(true);
});
// TODO: add tests for arm
// prettier-ignore
test.each([

View File

@@ -55,9 +55,3 @@ describe('gitContext', () => {
expect(Context.gitContext()).toEqual('https://github.com/docker/actions-toolkit.git#refs/heads/master');
});
});
describe('provenanceBuilderID', () => {
it('returns 123', async () => {
expect(Context.provenanceBuilderID()).toEqual('https://github.com/docker/actions-toolkit/actions/runs/123');
});
});

View File

@@ -29,8 +29,9 @@ describe('install', () => {
jest.resetModules();
process.env = {
...originalEnv,
SIGN_QEMU_BINARY: '1',
COLIMA_START_ARGS: '--cpu 4 --memory 8 --disk 32 --dns 1.1.1.1 --dns 8.8.8.8 --dns-host example.com=1.2.3.4'
LIMA_START_ARGS: '--cpus 4 --memory 8',
LIMA_IMAGES: `x86_64:https://cloud.debian.org/images/cloud/bookworm/20231013-1532/debian-12-genericcloud-amd64-20231013-1532.qcow2@sha512:6b55e88b027c14da1b55c85a25a9f7069d4560a8fdb2d948c986a585db469728a06d2c528303e34bb62d8b2984def38fd9ddfc00965846ff6e05b01d6e883bfe
aarch64:https://cloud.debian.org/images/cloud/bookworm/20231013-1532/debian-12-genericcloud-arm64-20231013-1532.qcow2`
};
});
afterEach(() => {
@@ -52,5 +53,5 @@ describe('install', () => {
await Docker.printInfo();
await install.tearDown();
})()).resolves.not.toThrow();
}, 600000);
}, 1200000);
});

View File

@@ -71,3 +71,32 @@ describe('getRelease', () => {
await expect(Install.getRelease('foo')).rejects.toThrow(new Error('Cannot find Docker release foo in https://raw.githubusercontent.com/docker/actions-toolkit/main/.github/docker-releases.json'));
});
});
describe('limaImage', () => {
const originalEnv = process.env;
beforeEach(() => {
jest.resetModules();
process.env = {
...originalEnv,
LIMA_IMAGES: `x86_64:https://cloud-images.ubuntu.com/releases/23.10/release-20231011/ubuntu-23.10-server-cloudimg-amd64.img@sha256:f6529be56da3429a56e4f5ef202bf4958201bc63f8541e478caa6e8eb712e635
aarch64:https://cloud-images.ubuntu.com/releases/23.10/release-20231011/ubuntu-23.10-server-cloudimg-arm64.img`
};
});
afterEach(() => {
process.env = originalEnv;
});
it('returns custom images', async () => {
expect(Install.limaCustomImages()).toEqual([
{
location: 'https://cloud-images.ubuntu.com/releases/23.10/release-20231011/ubuntu-23.10-server-cloudimg-amd64.img',
arch: 'x86_64',
digest: 'sha256:f6529be56da3429a56e4f5ef202bf4958201bc63f8541e478caa6e8eb712e635'
},
{
location: 'https://cloud-images.ubuntu.com/releases/23.10/release-20231011/ubuntu-23.10-server-cloudimg-arm64.img',
arch: 'aarch64',
digest: ''
}
]);
});
});

View File

@@ -141,6 +141,76 @@ describe('ref', () => {
expect(ref).toEqual('refs/tags/8.0.0');
});
it('returns mocked detached tag ref (shallow clone)', async () => {
jest.spyOn(Exec, 'getExecOutput').mockImplementation((cmd, args): Promise<ExecOutput> => {
const fullCmd = `${cmd} ${args?.join(' ')}`;
let result = '';
switch (fullCmd) {
case 'git branch --show-current':
result = '';
break;
case 'git show -s --pretty=%D':
result = 'grafted, HEAD, tag: 8.0.0';
break;
}
return Promise.resolve({
stdout: result,
stderr: '',
exitCode: 0
});
});
const ref = await Git.ref();
expect(ref).toEqual('refs/tags/8.0.0');
});
it('returns mocked detached pull request merge ref (shallow clone)', async () => {
jest.spyOn(Exec, 'getExecOutput').mockImplementation((cmd, args): Promise<ExecOutput> => {
const fullCmd = `${cmd} ${args?.join(' ')}`;
let result = '';
switch (fullCmd) {
case 'git branch --show-current':
result = '';
break;
case 'git show -s --pretty=%D':
result = 'grafted, HEAD, pull/221/merge';
break;
}
return Promise.resolve({
stdout: result,
stderr: '',
exitCode: 0
});
});
const ref = await Git.ref();
expect(ref).toEqual('refs/pull/221/merge');
});
it('should throws an error when detached HEAD ref is not supported', async () => {
jest.spyOn(Exec, 'getExecOutput').mockImplementation((cmd, args): Promise<ExecOutput> => {
const fullCmd = `${cmd} ${args?.join(' ')}`;
let result = '';
switch (fullCmd) {
case 'git branch --show-current':
result = '';
break;
case 'git show -s --pretty=%D':
result = 'wrong, HEAD, tag: 8.0.0';
break;
}
return Promise.resolve({
stdout: result,
stderr: '',
exitCode: 0
});
});
await expect(Git.ref()).rejects.toThrow('Cannot find detached HEAD ref in "wrong, HEAD, tag: 8.0.0"');
});
it('returns mocked detached branch ref', async () => {
jest.spyOn(Exec, 'getExecOutput').mockImplementation((cmd, args): Promise<ExecOutput> => {
const fullCmd = `${cmd} ${args?.join(' ')}`;

View File

@@ -89,6 +89,12 @@ describe('apiURL', () => {
});
});
describe('workflowRunURL', () => {
it('returns 123', async () => {
expect(GitHub.workflowRunURL).toEqual('https://github.com/docker/actions-toolkit/actions/runs/123');
});
});
describe('actionsRuntimeToken', () => {
const originalEnv = process.env;
beforeEach(() => {
@@ -138,7 +144,7 @@ describe('printActionsRuntimeTokenACs', () => {
});
it('malformed', async () => {
process.env.ACTIONS_RUNTIME_TOKEN = 'foo';
await expect(GitHub.printActionsRuntimeTokenACs()).rejects.toThrow(new Error("Cannot parse GitHub Actions Runtime Token: Invalid token specified: Cannot read properties of undefined (reading 'replace')"));
await expect(GitHub.printActionsRuntimeTokenACs()).rejects.toThrow(new Error('Cannot parse GitHub Actions Runtime Token: Invalid token specified: missing part #2'));
});
it('refs/heads/master', async () => {
const infoSpy = jest.spyOn(core, 'info');

View File

@@ -0,0 +1,30 @@
/**
* Copyright 2024 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.
*/
// eslint-disable-next-line @typescript-eslint/no-var-requires
const fs = require('fs');
module.exports = results => {
const allSkipped = results.testResults.every(result => {
return result.skipped;
});
if (allSkipped) {
console.log('All tests were skipped!');
// create an empty file to signal that all tests were skipped for CI
fs.closeSync(fs.openSync('./coverage/allSkipped.txt', 'w'));
}
return results;
};

View File

@@ -267,6 +267,12 @@ describe('trimSuffix', () => {
});
});
describe('hash', () => {
it('returns 2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae', async () => {
expect(Util.hash('foo')).toEqual('2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae');
});
});
// See: https://github.com/actions/toolkit/blob/a1b068ec31a042ff1e10a522d8fdf0b8869d53ca/packages/core/src/core.ts#L89
function getInputName(name: string): string {
return `INPUT_${name.replace(/ /g, '_').toUpperCase()}`;

View File

@@ -27,5 +27,6 @@ module.exports = {
moduleNameMapper: {
'^csv-parse/sync': '<rootDir>/node_modules/csv-parse/dist/cjs/sync.cjs'
},
testResultsProcessor: './__tests__/testResultsProcessor.ts',
verbose: false
};

View File

@@ -43,5 +43,6 @@ module.exports = {
},
collectCoverageFrom: ['src/**/{!(index.ts),}.ts'],
coveragePathIgnorePatterns: ['lib/', 'node_modules/', '__mocks__/', '__tests__/'],
testResultsProcessor: './__tests__/testResultsProcessor.ts',
verbose: true
};

View File

@@ -45,20 +45,19 @@
"registry": "https://registry.npmjs.org/"
},
"dependencies": {
"@actions/cache": "^3.2.2",
"@actions/cache": "^3.2.4",
"@actions/core": "^1.10.1",
"@actions/exec": "^1.1.1",
"@actions/github": "^6.0.0",
"@actions/http-client": "^2.2.0",
"@actions/io": "^1.1.3",
"@actions/tool-cache": "^2.0.1",
"@octokit/core": "^5.0.1",
"@octokit/plugin-rest-endpoint-methods": "^10.0.1",
"@octokit/core": "^5.1.0",
"@octokit/plugin-rest-endpoint-methods": "^10.4.0",
"async-retry": "^1.3.3",
"csv-parse": "^5.5.2",
"csv-parse": "^5.5.3",
"handlebars": "^4.7.8",
"js-yaml": "^4.1.0",
"jwt-decode": "^3.1.2",
"jwt-decode": "^4.0.0",
"semver": "^7.5.4",
"tmp": "^0.2.1"
},

View File

@@ -77,7 +77,7 @@ export class Bake {
silent: true
}).then(res => {
if (res.stderr.length > 0 && res.exitCode != 0) {
throw new Error(res.stderr);
throw new Error(`cannot parse bake definitions: ${res.stderr.match(/(.*)\s*$/)?.[0]?.trim() ?? 'unknown error'}`);
}
return <BakeDefinition>JSON.parse(res.stdout.trim());
});

View File

@@ -145,7 +145,7 @@ export class Builder {
if (value.includes('*')) {
for (const platform of value.split(', ')) {
if (platform.includes('*')) {
platforms.push(platform.replace('*', ''));
platforms.push(platform.replace(/\*/g, ''));
}
}
} else {

View File

@@ -20,6 +20,7 @@ import * as core from '@actions/core';
import {parse} from 'csv-parse/sync';
import {Context} from '../context';
import {GitHub} from '../github';
const parseKvp = (kvp: string): [string, string] => {
const delimiterIndex = kvp.indexOf('=');
@@ -111,7 +112,7 @@ export class Inputs {
return input;
}
try {
return core.getBooleanInput(name) ? `builder-id=${Context.provenanceBuilderID()}` : 'false';
return core.getBooleanInput(name) ? `builder-id=${GitHub.workflowRunURL}` : 'false';
} catch (err) {
// not a valid boolean, so we assume it's a string
return Inputs.resolveProvenanceAttrs(input);
@@ -120,7 +121,7 @@ export class Inputs {
public static resolveProvenanceAttrs(input: string): string {
if (!input) {
return `builder-id=${Context.provenanceBuilderID()}`;
return `builder-id=${GitHub.workflowRunURL}`;
}
// parse attributes from input
const fields = parse(input, {
@@ -138,7 +139,7 @@ export class Inputs {
}
}
// if not add builder-id attribute
return `${input},builder-id=${Context.provenanceBuilderID()}`;
return `${input},builder-id=${GitHub.workflowRunURL}`;
}
public static hasLocalExporter(exporters: string[]): boolean {

View File

@@ -14,18 +14,17 @@
* limitations under the License.
*/
import crypto from 'crypto';
import fs from 'fs';
import os from 'os';
import path from 'path';
import * as core from '@actions/core';
import * as httpm from '@actions/http-client';
import * as tc from '@actions/tool-cache';
import * as cache from '@actions/cache';
import * as semver from 'semver';
import * as util from 'util';
import {Buildx} from './buildx';
import {Cache} from '../cache';
import {Context} from '../context';
import {Exec} from '../exec';
import {Docker} from '../docker/docker';
@@ -48,10 +47,11 @@ export class Install {
/*
* Download buildx binary from GitHub release
* @param version semver version or latest
* @param v: version semver version or latest
* @param ghaNoCache: disable binary caching in GitHub Actions cache backend
* @returns path to the buildx binary
*/
public async download(v: string): Promise<string> {
public async download(v: string, ghaNoCache?: boolean): Promise<string> {
const version: DownloadVersion = await Install.getDownloadVersion(v);
core.debug(`Install.download version: ${version.version}`);
@@ -66,7 +66,13 @@ export class Install {
throw new Error(`Invalid Buildx version "${vspec}".`);
}
const installCache = new InstallCache(version.key != 'official' ? `buildx-dl-bin-${version.key}` : 'buildx-dl-bin', vspec);
const installCache = new Cache({
htcName: version.key != 'official' ? `buildx-dl-bin-${version.key}` : 'buildx-dl-bin',
htcVersion: vspec,
baseCacheDir: path.join(Buildx.configDir, '.bin'),
cacheFile: os.platform() == 'win32' ? 'docker-buildx.exe' : 'docker-buildx',
ghaNoCache: ghaNoCache
});
const cacheFoundPath = await installCache.find();
if (cacheFoundPath) {
@@ -87,14 +93,21 @@ export class Install {
/*
* Build buildx binary from source
* @param gitContext git repo context
* @param gitContext: git repo context
* @param ghaNoCache: disable binary caching in GitHub Actions cache backend
* @returns path to the buildx binary
*/
public async build(gitContext: string): Promise<string> {
public async build(gitContext: string, ghaNoCache?: boolean): Promise<string> {
const vspec = await this.vspec(gitContext);
core.debug(`Install.build vspec: ${vspec}`);
const installCache = new InstallCache('buildx-build-bin', vspec);
const installCache = new Cache({
htcName: 'buildx-build-bin',
htcVersion: vspec,
baseCacheDir: path.join(Buildx.configDir, '.bin'),
cacheFile: os.platform() == 'win32' ? 'docker-buildx.exe' : 'docker-buildx',
ghaNoCache: ghaNoCache
});
const cacheFoundPath = await installCache.find();
if (cacheFoundPath) {
@@ -252,7 +265,7 @@ export class Install {
const [owner, repo] = baseURL.substring('https://github.com/'.length).split('/');
const key = `${owner}/${Util.trimSuffix(repo, '.git')}/${sha}`;
const hash = crypto.createHash('sha256').update(key).digest('hex');
const hash = Util.hash(key);
core.info(`Use ${hash} version spec cache key for ${key}`);
return hash;
}
@@ -301,74 +314,3 @@ export class Install {
return releases[version.version];
}
}
class InstallCache {
private readonly htcName: string;
private readonly htcVersion: string;
private readonly ghaCacheKey: string;
private readonly cacheDir: string;
private readonly cacheFile: string;
private readonly cachePath: string;
constructor(htcName: string, htcVersion: string) {
this.htcName = htcName;
this.htcVersion = htcVersion;
this.ghaCacheKey = util.format('%s-%s-%s', this.htcName, this.htcVersion, this.platform());
this.cacheDir = path.join(Buildx.configDir, '.bin', htcVersion, this.platform());
this.cacheFile = os.platform() == 'win32' ? 'docker-buildx.exe' : 'docker-buildx';
this.cachePath = path.join(this.cacheDir, this.cacheFile);
if (!fs.existsSync(this.cacheDir)) {
fs.mkdirSync(this.cacheDir, {recursive: true});
}
}
public async save(file: string): Promise<string> {
core.debug(`InstallCache.save ${file}`);
const cachePath = this.copyToCache(file);
const htcPath = await tc.cacheDir(this.cacheDir, this.htcName, this.htcVersion, this.platform());
core.debug(`InstallCache.save cached to hosted tool cache ${htcPath}`);
if (cache.isFeatureAvailable()) {
core.debug(`InstallCache.save caching ${this.ghaCacheKey} to GitHub Actions cache`);
await cache.saveCache([this.cacheDir], this.ghaCacheKey);
}
return cachePath;
}
public async find(): Promise<string> {
let htcPath = tc.find(this.htcName, this.htcVersion, this.platform());
if (htcPath) {
core.info(`Restored from hosted tool cache ${htcPath}`);
return this.copyToCache(`${htcPath}/${this.cacheFile}`);
}
if (cache.isFeatureAvailable()) {
core.debug(`GitHub Actions cache feature available`);
if (await cache.restoreCache([this.cacheDir], this.ghaCacheKey)) {
core.info(`Restored ${this.ghaCacheKey} from GitHub Actions cache`);
htcPath = await tc.cacheDir(this.cacheDir, this.htcName, this.htcVersion, this.platform());
core.info(`Restored to hosted tool cache ${htcPath}`);
return this.copyToCache(`${htcPath}/${this.cacheFile}`);
}
} else {
core.info(`GitHub Actions cache feature not available`);
}
return '';
}
private copyToCache(file: string): string {
core.debug(`Copying ${file} to ${this.cachePath}`);
fs.copyFileSync(file, this.cachePath);
fs.chmodSync(this.cachePath, '0755');
return this.cachePath;
}
private platform(): string {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const arm_version = (process.config.variables as any).arm_version;
return `${os.platform()}-${os.arch()}${arm_version ? 'v' + arm_version : ''}`;
}
}

101
src/cache.ts Normal file
View File

@@ -0,0 +1,101 @@
/**
* Copyright 2023 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 fs from 'fs';
import os from 'os';
import path from 'path';
import * as core from '@actions/core';
import * as tc from '@actions/tool-cache';
import * as cache from '@actions/cache';
import * as util from 'util';
export interface CacheOpts {
htcName: string;
htcVersion: string;
baseCacheDir: string;
cacheFile: string;
ghaNoCache?: boolean;
}
export class Cache {
private readonly opts: CacheOpts;
private readonly ghaCacheKey: string;
private readonly ghaNoCache?: boolean;
private readonly cacheDir: string;
private readonly cachePath: string;
constructor(opts: CacheOpts) {
this.opts = opts;
this.ghaCacheKey = util.format('%s-%s-%s', this.opts.htcName, this.opts.htcVersion, this.platform());
this.ghaNoCache = this.opts.ghaNoCache;
this.cacheDir = path.join(this.opts.baseCacheDir, this.opts.htcVersion, this.platform());
this.cachePath = path.join(this.cacheDir, this.opts.cacheFile);
if (!fs.existsSync(this.cacheDir)) {
fs.mkdirSync(this.cacheDir, {recursive: true});
}
}
public async save(file: string): Promise<string> {
core.debug(`Cache.save ${file}`);
const cachePath = this.copyToCache(file);
const htcPath = await tc.cacheDir(this.cacheDir, this.opts.htcName, this.opts.htcVersion, this.platform());
core.debug(`Cache.save cached to hosted tool cache ${htcPath}`);
if (!this.ghaNoCache && cache.isFeatureAvailable()) {
core.debug(`Cache.save caching ${this.ghaCacheKey} to GitHub Actions cache`);
await cache.saveCache([this.cacheDir], this.ghaCacheKey);
}
return cachePath;
}
public async find(): Promise<string> {
let htcPath = tc.find(this.opts.htcName, this.opts.htcVersion, this.platform());
if (htcPath) {
core.info(`Restored from hosted tool cache ${htcPath}`);
return this.copyToCache(`${htcPath}/${this.opts.cacheFile}`);
}
if (!this.ghaNoCache && cache.isFeatureAvailable()) {
core.debug(`GitHub Actions cache feature available`);
if (await cache.restoreCache([this.cacheDir], this.ghaCacheKey)) {
core.info(`Restored ${this.ghaCacheKey} from GitHub Actions cache`);
htcPath = await tc.cacheDir(this.cacheDir, this.opts.htcName, this.opts.htcVersion, this.platform());
core.info(`Restored to hosted tool cache ${htcPath}`);
return this.copyToCache(`${htcPath}/${this.opts.cacheFile}`);
}
} else if (this.ghaNoCache) {
core.info(`GitHub Actions cache disabled`);
} else {
core.info(`GitHub Actions cache feature not available`);
}
return '';
}
private copyToCache(file: string): string {
core.debug(`Copying ${file} to ${this.cachePath}`);
fs.copyFileSync(file, this.cachePath);
return this.cachePath;
}
private platform(): string {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const arm_version = (process.config.variables as any).arm_version;
return `${os.platform()}-${os.arch()}${arm_version ? 'v' + arm_version : ''}`;
}
}

View File

@@ -23,7 +23,12 @@ import * as github from '@actions/github';
import {GitHub} from './github';
export class Context {
private static readonly _tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'docker-actions-toolkit-'));
private static readonly _tmpDir = fs.mkdtempSync(path.join(Context.ensureDirExists(process.env.RUNNER_TEMP || os.tmpdir()), 'docker-actions-toolkit-'));
private static ensureDirExists(dir: string): string {
fs.mkdirSync(dir, {recursive: true});
return dir;
}
public static tmpDir(): string {
return Context._tmpDir;

View File

@@ -25,8 +25,8 @@ export const dockerServiceLogsPs1 = (): string => {
return get('docker-service-logs.ps1', dockerServiceLogsPs1Data);
};
export const colimaYaml = (): string => {
return get('colima.yaml', colimaYamlData);
export const limaYaml = (): string => {
return get('lima.yaml', limaYamlData);
};
const get = (filename: string, data: string, mode?: string): string => {
@@ -128,191 +128,127 @@ Get-WinEvent -ea SilentlyContinue \`
ForEach-Object {"$($_.TimeCreated.ToUniversalTime().ToString("o")) [$($_.LevelDisplayName)] $($_.Message)"}
`;
export const colimaYamlData = `
# Number of CPUs to be allocated to the virtual machine.
# Default: 2
cpu: 2
# Size of the disk in GiB to be allocated to the virtual machine.
# NOTE: changing this has no effect after the virtual machine has been created.
# Default: 60
disk: 60
# Size of the memory in GiB to be allocated to the virtual machine.
# Default: 2
memory: 2
# Architecture of the virtual machine (x86_64, aarch64, host).
# Default: host
arch: host
# Container runtime to be used (docker, containerd).
# Default: docker
runtime: docker
# Kubernetes configuration for the virtual machine.
kubernetes:
enabled: false
# Auto-activate on the Host for client access.
# Setting to true does the following on startup
# - sets as active Docker context (for Docker runtime).
# - sets as active Kubernetes context (if Kubernetes is enabled).
# Default: true
autoActivate: false
# Network configurations for the virtual machine.
network:
# Assign reachable IP address to the virtual machine.
# NOTE: this is currently macOS only and ignored on Linux.
# Default: false
address: false
# Custom DNS resolvers for the virtual machine.
#
# EXAMPLE
# dns: [8.8.8.8, 1.1.1.1]
#
# Default: []
dns: []
# DNS hostnames to resolve to custom targets using the internal resolver.
# This setting has no effect if a custom DNS resolver list is supplied above.
# It does not configure the /etc/hosts files of any machine or container.
# The value can be an IP address or another host.
#
# EXAMPLE
# dnsHosts:
# example.com: 1.2.3.4
dnsHosts:
host.docker.internal: host.lima.internal
# Network driver to use (slirp, gvproxy), (requires vmType \`qemu\`)
# - slirp is the default user mode networking provided by Qemu
# - gvproxy is an alternative to VPNKit based on gVisor https://github.com/containers/gvisor-tap-vsock
# Default: gvproxy
driver: gvproxy
# Forward the host's SSH agent to the virtual machine.
# Default: false
forwardAgent: false
# Docker daemon configuration that maps directly to daemon.json.
# https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file.
# NOTE: some settings may affect Colima's ability to start docker. e.g. \`hosts\`.
#
# EXAMPLE - disable buildkit
# docker:
# features:
# buildkit: false
#
# EXAMPLE - add insecure registries
# docker:
# insecure-registries:
# - myregistry.com:5000
# - host.docker.internal:5000
#
# Colima default behaviour: buildkit enabled
# Default: {}
{{daemonConfig}}
# Virtual Machine type (qemu, vz)
# NOTE: this is macOS 13 only. For Linux and macOS <13.0, qemu is always used.
#
# vz is macOS virtualization framework and requires macOS 13
#
# Default: qemu
export const limaYamlData = `
# VM type: "qemu" or "vz" (on macOS 13 and later).
# The vmType can be specified only on creating the instance.
# The vmType of existing instances cannot be changed.
# Builtin default: "qemu"
vmType: qemu
# Volume mount driver for the virtual machine (virtiofs, 9p, sshfs).
#
# virtiofs is limited to macOS and vmType \`vz\`. It is the fastest of the options.
#
# 9p is the recommended and the most stable option for vmType \`qemu\`.
#
# sshfs is faster than 9p but the least reliable of the options (when there are lots
# of concurrent reads or writes).
#
# Default: virtiofs (for vz), sshfs (for qemu)
mountType: 9p
# OS: "Linux".
# Builtin default: "Linux"
os: null
# The CPU type for the virtual machine (requires vmType \`qemu\`).
# Options available for host emulation can be checked with: \`qemu-system-$(arch) -cpu help\`.
# Instructions are also supported by appending to the cpu type e.g. "qemu64,+ssse3".
# Default: host
cpuType: host
# Arch: "default", "x86_64", "aarch64".
# Builtin default: "default" (corresponds to the host architecture)
arch: null
# For a more general purpose virtual machine, Ubuntu container is optionally provided
# as a layer on the virtual machine.
# The underlying virtual machine is still accessible via \`colima ssh --layer=false\` or running \`colima\` in
# the Ubuntu session.
#
# Default: false
layer: false
images:
{{#each customImages}}
- location: "{{location}}"
arch: "{{arch}}"
digest: "{{digest}}"
{{/each}}
- location: "https://cloud-images.ubuntu.com/releases/22.04/release-20231026/ubuntu-22.04-server-cloudimg-amd64.img"
arch: "x86_64"
digest: "sha256:054db2d88c454bb0ad8dfd8883955e3946b57d2b0bf0d023f3ade3c93cdd14e5"
- location: "https://cloud-images.ubuntu.com/releases/22.04/release-20231026/ubuntu-22.04-server-cloudimg-arm64.img"
arch: "aarch64"
digest: "sha256:eafa7742ce5ff109222ea313d31ea366d587b4e89b900b11d8285ae775dfe8c3"
# CPUs
# Builtin default: min(4, host CPU cores)
cpus: null
# Memory size
# Builtin default: min("4GiB", half of host memory)
memory: null
# Disk size
# Builtin default: "100GiB"
disk: 60GiB
# Expose host directories to the guest, the mount point might be accessible from all UIDs in the guest
# Builtin default: null (Mount nothing)
# This file: Mount the home as read-only, /tmp/lima as writable
mounts:
- location: "~"
- location: "/tmp/lima"
writable: true
# Mount type for above mounts, such as "reverse-sshfs" (from sshocker), "9p" (EXPERIMENTAL, from QEMUs virtio-9p-pci, aka virtfs),
# or "virtiofs" (EXPERIMENTAL, needs \`vmType: vz\`)
# Builtin default: "reverse-sshfs" (for QEMU), "virtiofs" (for vz)
mountType: null
containerd:
system: false
user: false
# Custom provision scripts for the virtual machine.
# Provisioning scripts are executed on startup and therefore needs to be idempotent.
#
# EXAMPLE - script exected as root
# provision:
# - mode: system
# script: apk add htop vim
#
# EXAMPLE - script exected as user
# provision:
# - mode: user
# script: |
# [ -f ~/.provision ] && exit 0;
# echo provisioning as $USER...
# touch ~/.provision
#
# Default: []
provision:
- mode: system
script: |
mkdir -p /tmp/docker-bins
cd /tmp/docker-bins
wget -qO- "https://download.docker.com/linux/static/{{dockerBinChannel}}/{{dockerBinArch}}/docker-{{dockerBinVersion}}.tgz" | tar xvz --strip 1
mv -f /tmp/docker-bins/* /usr/bin/
- mode: system
# This script defines the host.docker.internal hostname when hostResolver is disabled.
# It is also needed for lima 0.8.2 and earlier, which does not support hostResolver.hosts.
# Names defined in /etc/hosts inside the VM are not resolved inside containers when
# using the hostResolver; use hostResolver.hosts instead (requires lima 0.8.3 or later).
script: |
#!/bin/sh
sed -i 's/host.lima.internal.*/host.lima.internal host.docker.internal/' /etc/hosts
- mode: system
script: |
#!/bin/sh
apt-get install -f -y iptables
- mode: system
script: |
#!/bin/bash
set -eux -o pipefail
command -v docker >/dev/null 2>&1 && exit 0
if [ ! -e /etc/systemd/system/docker.socket.d/override.conf ]; then
mkdir -p /etc/systemd/system/docker.socket.d
# Alternatively we could just add the user to the "docker" group, but that requires restarting the user session
cat <<-EOF >/etc/systemd/system/docker.socket.d/override.conf
[Socket]
SocketUser=\${LIMA_CIDATA_USER}
EOF
fi
if [ ! -e /etc/docker/daemon.json ]; then
mkdir -p /etc/docker
cat <<-EOF >/etc/docker/daemon.json
{{stringify daemonConfig}}
EOF
fi
export DEBIAN_FRONTEND=noninteractive
curl -fsSL https://get.docker.com | sh -s -- --channel {{dockerBinChannel}} --version {{dockerBinVersion}}
# Modify ~/.ssh/config automatically to include a SSH config for the virtual machine.
# SSH config will still be generated in ~/.colima/ssh_config regardless.
# Default: true
sshConfig: false
probes:
- script: |
#!/bin/bash
set -eux -o pipefail
if ! timeout 30s bash -c "until command -v docker >/dev/null 2>&1; do sleep 3; done"; then
echo >&2 "docker is not installed yet"
exit 1
fi
if ! timeout 30s bash -c "until pgrep dockerd; do sleep 3; done"; then
echo >&2 "dockerd is not running"
exit 1
fi
hint: See "/var/log/cloud-init-output.log". in the guest
# Configure volume mounts for the virtual machine.
# Colima mounts user's home directory by default to provide a familiar
# user experience.
#
# EXAMPLE
# mounts:
# - location: ~/secrets
# writable: false
# - location: ~/projects
# writable: true
#
# Colima default behaviour: $HOME and /tmp/colima are mounted as writable.
# Default: []
mounts: []
hostResolver:
# hostResolver.hosts requires lima 0.8.3 or later. Names defined here will also
# resolve inside containers, and not just inside the VM itself.
hosts:
host.docker.internal: host.lima.internal
# Environment variables for the virtual machine.
#
# EXAMPLE
# env:
# KEY: value
# ANOTHER_KEY: another value
#
# Default: {}
env: {}
`;
export const qemuEntitlements = `
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.hypervisor</key>
<true/>
</dict>
</plist>
portForwards:
- guestSocket: "/var/run/docker.sock"
hostSocket: "{{dockerSock}}"
audio:
# EXPERIMENTAL
# QEMU audiodev, e.g., "none", "coreaudio", "pa", "alsa", "oss".
# VZ driver, use "vz" as device name
# Choosing "none" will mute the audio output, and not play any sound.
# Builtin default: ""
device: none
`;

View File

@@ -20,7 +20,6 @@ import fsp from 'fs/promises';
import os from 'os';
import path from 'path';
import retry from 'async-retry';
import yaml from 'js-yaml';
import * as handlebars from 'handlebars';
import * as util from 'util';
import * as core from '@actions/core';
@@ -31,7 +30,7 @@ import * as tc from '@actions/tool-cache';
import {Context} from '../context';
import {Exec} from '../exec';
import {Util} from '../util';
import {colimaYamlData, dockerServiceLogsPs1, qemuEntitlements, setupDockerWinPs1} from './assets';
import {limaYamlData, dockerServiceLogsPs1, setupDockerWinPs1} from './assets';
import {GitHubRelease} from '../types/github';
export interface InstallOpts {
@@ -42,6 +41,12 @@ export interface InstallOpts {
daemonConfig?: string;
}
interface LimaImage {
location: string;
arch: string;
digest?: string;
}
export class Install {
private readonly runDir: string;
private readonly version: string;
@@ -51,6 +56,8 @@ export class Install {
private _version: string | undefined;
private _toolDir: string | undefined;
private readonly limaInstanceName = 'docker-actions-toolkit';
constructor(opts: InstallOpts) {
this.runDir = opts.runDir;
this.version = opts.version || 'latest';
@@ -131,30 +138,46 @@ export class Install {
}
private async installDarwin(): Promise<void> {
const colimaDir = path.join(os.homedir(), '.colima', 'default'); // TODO: create a custom colima profile to avoid overlap with other actions
await io.mkdirP(colimaDir);
const dockerHost = `unix://${colimaDir}/docker.sock`;
const limaDir = path.join(os.homedir(), '.lima', this.limaInstanceName);
await io.mkdirP(limaDir);
const dockerHost = `unix://${limaDir}/docker.sock`;
if (!(await Install.colimaInstalled())) {
await core.group('Installing colima', async () => {
await Exec.exec('brew', ['install', 'colima']);
// avoid brew to auto update and upgrade unrelated packages.
let envs = Object.assign({}, process.env, {
HOMEBREW_NO_AUTO_UPDATE: '1',
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: '1'
}) as {
[key: string]: string;
};
if (!(await Install.limaInstalled())) {
await core.group('Installing lima', async () => {
await Exec.exec('brew', ['install', 'lima'], {env: envs});
});
}
await core.group('Creating colima config', async () => {
let colimaDaemonConfig = {};
await core.group('Lima version', async () => {
await Exec.exec('lima', ['--version'], {env: envs});
});
await core.group('Creating lima config', async () => {
let limaDaemonConfig = {};
if (this.daemonConfig) {
colimaDaemonConfig = JSON.parse(this.daemonConfig);
limaDaemonConfig = JSON.parse(this.daemonConfig);
}
const colimaCfg = handlebars.compile(colimaYamlData)({
daemonConfig: yaml.dump(yaml.load(JSON.stringify({docker: colimaDaemonConfig}))),
dockerBinVersion: this._version,
dockerBinChannel: this.channel,
dockerBinArch: Install.platformArch()
handlebars.registerHelper('stringify', function (obj) {
return new handlebars.SafeString(JSON.stringify(obj));
});
core.info(`Writing colima config to ${path.join(colimaDir, 'colima.yaml')}`);
fs.writeFileSync(path.join(colimaDir, 'colima.yaml'), colimaCfg);
core.info(colimaCfg);
const limaCfg = handlebars.compile(limaYamlData)({
customImages: Install.limaCustomImages(),
daemonConfig: limaDaemonConfig,
dockerSock: `${limaDir}/docker.sock`,
dockerBinVersion: this._version,
dockerBinChannel: this.channel
});
core.info(`Writing lima config to ${path.join(limaDir, 'lima.yaml')}`);
fs.writeFileSync(path.join(limaDir, 'lima.yaml'), limaCfg);
core.info(limaCfg);
});
const qemuArch = await Install.qemuArch();
@@ -162,40 +185,29 @@ export class Install {
await Exec.exec(`qemu-system-${qemuArch} --version`);
});
// https://github.com/abiosoft/colima/issues/786#issuecomment-1693629650
if (process.env.SIGN_QEMU_BINARY === '1') {
await core.group('Signing QEMU binary with entitlements', async () => {
const qemuEntitlementsFile = path.join(Context.tmpDir(), 'qemu-entitlements.xml');
core.info(`Writing entitlements to ${qemuEntitlementsFile}`);
fs.writeFileSync(qemuEntitlementsFile, qemuEntitlements);
await Exec.exec(`codesign --sign - --entitlements ${qemuEntitlementsFile} --force /usr/local/bin/qemu-system-${qemuArch}`);
});
}
// colima is already started on the runner so env var added in download
// lima might already be started on the runner so env var added in download
// method is not expanded to the running process.
const envs = Object.assign({}, process.env, {
envs = Object.assign({}, envs, {
PATH: `${this.toolDir}:${process.env.PATH}`
}) as {
[key: string]: string;
};
await core.group('Starting colima', async () => {
const colimaStartArgs = ['start', '--very-verbose'];
if (process.env.COLIMA_START_ARGS) {
colimaStartArgs.push(process.env.COLIMA_START_ARGS);
await core.group('Starting lima instance', async () => {
const limaStartArgs = ['start', `--name=${this.limaInstanceName}`];
if (process.env.LIMA_START_ARGS) {
limaStartArgs.push(process.env.LIMA_START_ARGS);
}
try {
await Exec.exec(`colima ${colimaStartArgs.join(' ')}`, [], {env: envs});
await Exec.exec(`limactl ${limaStartArgs.join(' ')}`, [], {env: envs});
} catch (e) {
const limaColimaDir = path.join(os.homedir(), '.lima', 'colima');
fsp
.readdir(limaColimaDir)
.readdir(limaDir)
.then(files => {
files
.filter(f => path.extname(f) === '.log')
.forEach(f => {
const logfile = path.join(limaColimaDir, f);
const logfile = path.join(limaDir, f);
const logcontent = fs.readFileSync(logfile, {encoding: 'utf8'}).trim();
if (logcontent.length > 0) {
core.info(`### ${logfile}:\n${logcontent}`);
@@ -362,10 +374,15 @@ EOF`,
private async tearDownDarwin(): Promise<void> {
await core.group('Docker daemon logs', async () => {
await Exec.exec('colima', ['exec', '--', 'cat', '/var/log/docker.log']);
await Exec.exec('limactl', ['shell', '--tty=false', this.limaInstanceName, 'sudo', 'journalctl', '-u', 'docker.service', '-l', '--no-pager']).catch(() => {
core.warning(`Failed to get Docker daemon logs`);
});
});
await core.group('Stopping colima', async () => {
await Exec.exec('colima', ['stop', '--very-verbose']);
await core.group('Stopping lima instance', async () => {
await Exec.exec('limactl', ['stop', '--tty=false', this.limaInstanceName, '--force']);
});
await core.group('Removing lima instance', async () => {
await Exec.exec('limactl', ['delete', '--tty=false', this.limaInstanceName, '--force']);
});
await core.group('Removing Docker context', async () => {
await Exec.exec('docker', ['context', 'rm', '-f', this.contextName]);
@@ -460,15 +477,15 @@ EOF`,
}
}
private static async colimaInstalled(): Promise<boolean> {
private static async limaInstalled(): Promise<boolean> {
return await io
.which('colima', true)
.which('lima', true)
.then(res => {
core.debug(`docker.Install.colimaAvailable ok: ${res}`);
core.debug(`docker.Install.limaAvailable ok: ${res}`);
return true;
})
.catch(error => {
core.debug(`docker.Install.colimaAvailable error: ${error}`);
core.debug(`docker.Install.limaAvailable error: ${error}`);
return false;
});
}
@@ -502,4 +519,25 @@ EOF`,
}
return releases[version];
}
public static limaCustomImages(): LimaImage[] {
const res: LimaImage[] = [];
const env = process.env.LIMA_IMAGES;
if (!env) {
return res;
}
for (const input of Util.getList(env, {ignoreComma: true, comment: '#'})) {
const archIndex = input.indexOf(':');
const arch = input.substring(0, archIndex).trim();
const digestIndex = input.indexOf('@');
const location = input.substring(archIndex + 1, digestIndex !== -1 ? digestIndex : undefined).trim();
const digest = digestIndex !== -1 ? input.substring(digestIndex + 1).trim() : '';
res.push({
location: location,
arch: arch,
digest: digest
});
}
return res;
}
}

View File

@@ -123,25 +123,32 @@ export class Git {
private static async getDetachedRef(): Promise<string> {
const res = await Git.exec(['show', '-s', '--pretty=%D']);
const refMatch = res.match(/^HEAD, (.*)$/);
// Can be "HEAD, <tagname>" or "grafted, HEAD, <tagname>"
const refMatch = res.match(/^(grafted, )?HEAD, (.*)$/);
if (!refMatch) {
if (!refMatch || !refMatch[2]) {
throw new Error(`Cannot find detached HEAD ref in "${res}"`);
}
const ref = refMatch[1].trim();
const ref = refMatch[2].trim();
// Tag refs are formatted as "tag: <tagname>"
if (ref.startsWith('tag: ')) {
return `refs/tags/${ref.split(':')[1].trim()}`;
}
// Otherwise, it's a branch "<origin>/<branch-name>, <branch-name>"
// Branch refs are formatted as "<origin>/<branch-name>, <branch-name>"
const branchMatch = ref.match(/^[^/]+\/[^/]+, (.+)$/);
if (branchMatch) {
return `refs/heads/${branchMatch[1].trim()}`;
}
// Pull request merge refs are formatted as "pull/<number>/<state>"
const prMatch = ref.match(/^pull\/\d+\/(head|merge)$/);
if (prMatch) {
return `refs/${ref}`;
}
throw new Error(`Unsupported detached HEAD ref in "${res}"`);
}

View File

@@ -18,7 +18,7 @@ import {GitHub as Octokit} from '@actions/github/lib/utils';
import * as core from '@actions/core';
import * as github from '@actions/github';
import {Context} from '@actions/github/lib/context';
import jwt_decode from 'jwt-decode';
import {jwtDecode, JwtPayload} from 'jwt-decode';
import {GitHubActionsRuntimeToken, GitHubActionsRuntimeTokenAC, GitHubRepo} from './types/github';
@@ -49,9 +49,13 @@ export class GitHub {
return process.env.GITHUB_API_URL || 'https://api.github.com';
}
static get workflowRunURL(): string {
return `${GitHub.serverURL}/${github.context.repo.owner}/${github.context.repo.repo}/actions/runs/${github.context.runId}`;
}
static get actionsRuntimeToken(): GitHubActionsRuntimeToken | undefined {
const token = process.env['ACTIONS_RUNTIME_TOKEN'] || '';
return token ? jwt_decode<GitHubActionsRuntimeToken>(token) : undefined;
return token ? (jwtDecode<JwtPayload>(token) as GitHubActionsRuntimeToken) : undefined;
}
public static async printActionsRuntimeTokenACs() {

View File

@@ -14,27 +14,30 @@
* limitations under the License.
*/
import crypto from 'crypto';
import fs from 'fs';
import * as core from '@actions/core';
import * as io from '@actions/io';
import {parse} from 'csv-parse/sync';
export interface InputListOpts {
export interface ListOpts {
ignoreComma?: boolean;
comment?: string;
quote?: string | boolean | Buffer | null;
}
export class Util {
public static getInputList(name: string, opts?: InputListOpts): string[] {
const res: Array<string> = [];
public static getInputList(name: string, opts?: ListOpts): string[] {
return this.getList(core.getInput(name), opts);
}
const items = core.getInput(name);
if (items == '') {
public static getList(input: string, opts?: ListOpts): string[] {
const res: Array<string> = [];
if (input == '') {
return res;
}
const records = parse(items, {
const records = parse(input, {
columns: false,
relaxQuotes: true,
comment: opts?.comment,
@@ -137,4 +140,8 @@ export class Util {
public static sleep(seconds: number) {
return new Promise(resolve => setTimeout(resolve, seconds * 1000));
}
public static hash(input: string): string {
return crypto.createHash('sha256').update(input).digest('hex');
}
}

270
yarn.lock
View File

@@ -12,9 +12,9 @@ __metadata:
languageName: node
linkType: hard
"@actions/cache@npm:^3.2.2":
version: 3.2.2
resolution: "@actions/cache@npm:3.2.2"
"@actions/cache@npm:^3.2.4":
version: 3.2.4
resolution: "@actions/cache@npm:3.2.4"
dependencies:
"@actions/core": ^1.10.0
"@actions/exec": ^1.0.1
@@ -24,9 +24,9 @@ __metadata:
"@azure/abort-controller": ^1.1.0
"@azure/ms-rest-js": ^2.6.0
"@azure/storage-blob": ^12.13.0
semver: ^6.1.0
semver: ^6.3.1
uuid: ^3.3.3
checksum: 1dc43a66596b98a7d4ad9f3a3e92b24186e28a42486fac311c7f99c2883d0387a6078d76b31c5ca3af30bb2b929c6f8e5f352e315bcce4fb9cae5d5f2f1f5fad
checksum: 5bf5f7541bea4906b553440a9ffee5699e11dfb729365c6cb0bbd37e147a1a0993369fdad16bfa3e2b01ec7fa57dac66276278bfd4a389009246a75ea953e61d
languageName: node
linkType: hard
@@ -300,6 +300,16 @@ __metadata:
languageName: node
linkType: hard
"@babel/code-frame@npm:^7.22.13":
version: 7.22.13
resolution: "@babel/code-frame@npm:7.22.13"
dependencies:
"@babel/highlight": ^7.22.13
chalk: ^2.4.2
checksum: 22e342c8077c8b77eeb11f554ecca2ba14153f707b85294fcf6070b6f6150aae88a7b7436dd88d8c9289970585f3fe5b9b941c5aa3aa26a6d5a8ef3f292da058
languageName: node
linkType: hard
"@babel/compat-data@npm:^7.16.4":
version: 7.17.0
resolution: "@babel/compat-data@npm:7.17.0"
@@ -383,6 +393,18 @@ __metadata:
languageName: node
linkType: hard
"@babel/generator@npm:^7.23.0":
version: 7.23.0
resolution: "@babel/generator@npm:7.23.0"
dependencies:
"@babel/types": ^7.23.0
"@jridgewell/gen-mapping": ^0.3.2
"@jridgewell/trace-mapping": ^0.3.17
jsesc: ^2.5.1
checksum: 8efe24adad34300f1f8ea2add420b28171a646edc70f2a1b3e1683842f23b8b7ffa7e35ef0119294e1901f45bfea5b3dc70abe1f10a1917ccdfb41bed69be5f1
languageName: node
linkType: hard
"@babel/helper-compilation-targets@npm:^7.16.7":
version: 7.16.7
resolution: "@babel/helper-compilation-targets@npm:7.16.7"
@@ -428,51 +450,29 @@ __metadata:
languageName: node
linkType: hard
"@babel/helper-function-name@npm:^7.16.7":
version: 7.16.7
resolution: "@babel/helper-function-name@npm:7.16.7"
dependencies:
"@babel/helper-get-function-arity": ^7.16.7
"@babel/template": ^7.16.7
"@babel/types": ^7.16.7
checksum: fc77cbe7b10cfa2a262d7a37dca575c037f20419dfe0c5d9317f589599ca24beb5f5c1057748011159149eaec47fe32338c6c6412376fcded68200df470161e1
"@babel/helper-environment-visitor@npm:^7.22.20":
version: 7.22.20
resolution: "@babel/helper-environment-visitor@npm:7.22.20"
checksum: d80ee98ff66f41e233f36ca1921774c37e88a803b2f7dca3db7c057a5fea0473804db9fb6729e5dbfd07f4bed722d60f7852035c2c739382e84c335661590b69
languageName: node
linkType: hard
"@babel/helper-function-name@npm:^7.21.0":
version: 7.21.0
resolution: "@babel/helper-function-name@npm:7.21.0"
"@babel/helper-function-name@npm:^7.23.0":
version: 7.23.0
resolution: "@babel/helper-function-name@npm:7.23.0"
dependencies:
"@babel/template": ^7.20.7
"@babel/types": ^7.21.0
checksum: d63e63c3e0e3e8b3138fa47b0cd321148a300ef12b8ee951196994dcd2a492cc708aeda94c2c53759a5c9177fffaac0fd8778791286746f72a000976968daf4e
"@babel/template": ^7.22.15
"@babel/types": ^7.23.0
checksum: e44542257b2d4634a1f979244eb2a4ad8e6d75eb6761b4cfceb56b562f7db150d134bc538c8e6adca3783e3bc31be949071527aa8e3aab7867d1ad2d84a26e10
languageName: node
linkType: hard
"@babel/helper-get-function-arity@npm:^7.16.7":
version: 7.16.7
resolution: "@babel/helper-get-function-arity@npm:7.16.7"
"@babel/helper-hoist-variables@npm:^7.22.5":
version: 7.22.5
resolution: "@babel/helper-hoist-variables@npm:7.22.5"
dependencies:
"@babel/types": ^7.16.7
checksum: 25d969fb207ff2ad5f57a90d118f6c42d56a0171022e200aaa919ba7dc95ae7f92ec71cdea6c63ef3629a0dc962ab4c78e09ca2b437185ab44539193f796e0c3
languageName: node
linkType: hard
"@babel/helper-hoist-variables@npm:^7.16.7":
version: 7.16.7
resolution: "@babel/helper-hoist-variables@npm:7.16.7"
dependencies:
"@babel/types": ^7.16.7
checksum: 6ae1641f4a751cd9045346e3f61c3d9ec1312fd779ab6d6fecfe2a96e59a481ad5d7e40d2a840894c13b3fd6114345b157f9e3062fc5f1580f284636e722de60
languageName: node
linkType: hard
"@babel/helper-hoist-variables@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-hoist-variables@npm:7.18.6"
dependencies:
"@babel/types": ^7.18.6
checksum: fd9c35bb435fda802bf9ff7b6f2df06308a21277c6dec2120a35b09f9de68f68a33972e2c15505c1a1a04b36ec64c9ace97d4a9e26d6097b76b4396b7c5fa20f
"@babel/types": ^7.22.5
checksum: 394ca191b4ac908a76e7c50ab52102669efe3a1c277033e49467913c7ed6f7c64d7eacbeabf3bed39ea1f41731e22993f763b1edce0f74ff8563fd1f380d92cc
languageName: node
linkType: hard
@@ -583,6 +583,15 @@ __metadata:
languageName: node
linkType: hard
"@babel/helper-split-export-declaration@npm:^7.22.6":
version: 7.22.6
resolution: "@babel/helper-split-export-declaration@npm:7.22.6"
dependencies:
"@babel/types": ^7.22.5
checksum: e141cace583b19d9195f9c2b8e17a3ae913b7ee9b8120246d0f9ca349ca6f03cb2c001fd5ec57488c544347c0bb584afec66c936511e447fd20a360e591ac921
languageName: node
linkType: hard
"@babel/helper-string-parser@npm:^7.19.4":
version: 7.19.4
resolution: "@babel/helper-string-parser@npm:7.19.4"
@@ -590,6 +599,13 @@ __metadata:
languageName: node
linkType: hard
"@babel/helper-string-parser@npm:^7.22.5":
version: 7.22.5
resolution: "@babel/helper-string-parser@npm:7.22.5"
checksum: 836851ca5ec813077bbb303acc992d75a360267aa3b5de7134d220411c852a6f17de7c0d0b8c8dcc0f567f67874c00f4528672b2a4f1bc978a3ada64c8c78467
languageName: node
linkType: hard
"@babel/helper-validator-identifier@npm:^7.14.5":
version: 7.14.5
resolution: "@babel/helper-validator-identifier@npm:7.14.5"
@@ -611,6 +627,13 @@ __metadata:
languageName: node
linkType: hard
"@babel/helper-validator-identifier@npm:^7.22.20":
version: 7.22.20
resolution: "@babel/helper-validator-identifier@npm:7.22.20"
checksum: 136412784d9428266bcdd4d91c32bcf9ff0e8d25534a9d94b044f77fe76bc50f941a90319b05aafd1ec04f7d127cd57a179a3716009ff7f3412ef835ada95bdc
languageName: node
linkType: hard
"@babel/helper-validator-option@npm:^7.16.7":
version: 7.16.7
resolution: "@babel/helper-validator-option@npm:7.16.7"
@@ -680,6 +703,17 @@ __metadata:
languageName: node
linkType: hard
"@babel/highlight@npm:^7.22.13":
version: 7.22.20
resolution: "@babel/highlight@npm:7.22.20"
dependencies:
"@babel/helper-validator-identifier": ^7.22.20
chalk: ^2.4.2
js-tokens: ^4.0.0
checksum: 84bd034dca309a5e680083cd827a766780ca63cef37308404f17653d32366ea76262bd2364b2d38776232f2d01b649f26721417d507e8b4b6da3e4e739f6d134
languageName: node
linkType: hard
"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.5, @babel/parser@npm:^7.14.7":
version: 7.14.7
resolution: "@babel/parser@npm:7.14.7"
@@ -707,6 +741,15 @@ __metadata:
languageName: node
linkType: hard
"@babel/parser@npm:^7.22.15, @babel/parser@npm:^7.23.0":
version: 7.23.0
resolution: "@babel/parser@npm:7.23.0"
bin:
parser: ./bin/babel-parser.js
checksum: 453fdf8b9e2c2b7d7b02139e0ce003d1af21947bbc03eb350fb248ee335c9b85e4ab41697ddbdd97079698de825a265e45a0846bb2ed47a2c7c1df833f42a354
languageName: node
linkType: hard
"@babel/plugin-syntax-async-generators@npm:^7.8.4":
version: 7.8.4
resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4"
@@ -883,6 +926,17 @@ __metadata:
languageName: node
linkType: hard
"@babel/template@npm:^7.22.15":
version: 7.22.15
resolution: "@babel/template@npm:7.22.15"
dependencies:
"@babel/code-frame": ^7.22.13
"@babel/parser": ^7.22.15
"@babel/types": ^7.22.15
checksum: 1f3e7dcd6c44f5904c184b3f7fe280394b191f2fed819919ffa1e529c259d5b197da8981b6ca491c235aee8dbad4a50b7e31304aa531271cb823a4a24a0dd8fd
languageName: node
linkType: hard
"@babel/template@npm:^7.3.3":
version: 7.14.5
resolution: "@babel/template@npm:7.14.5"
@@ -894,39 +948,21 @@ __metadata:
languageName: node
linkType: hard
"@babel/traverse@npm:^7.17.0, @babel/traverse@npm:^7.17.3":
version: 7.17.3
resolution: "@babel/traverse@npm:7.17.3"
"@babel/traverse@npm:^7.17.0, @babel/traverse@npm:^7.17.3, @babel/traverse@npm:^7.21.0, @babel/traverse@npm:^7.21.2, @babel/traverse@npm:^7.21.3":
version: 7.23.2
resolution: "@babel/traverse@npm:7.23.2"
dependencies:
"@babel/code-frame": ^7.16.7
"@babel/generator": ^7.17.3
"@babel/helper-environment-visitor": ^7.16.7
"@babel/helper-function-name": ^7.16.7
"@babel/helper-hoist-variables": ^7.16.7
"@babel/helper-split-export-declaration": ^7.16.7
"@babel/parser": ^7.17.3
"@babel/types": ^7.17.0
"@babel/code-frame": ^7.22.13
"@babel/generator": ^7.23.0
"@babel/helper-environment-visitor": ^7.22.20
"@babel/helper-function-name": ^7.23.0
"@babel/helper-hoist-variables": ^7.22.5
"@babel/helper-split-export-declaration": ^7.22.6
"@babel/parser": ^7.23.0
"@babel/types": ^7.23.0
debug: ^4.1.0
globals: ^11.1.0
checksum: 780d7ecf711758174989794891af08d378f81febdb8932056c0d9979524bf0298e28f8e7708a872d7781151506c28f56c85c63ea3f1f654662c2fcb8a3eb9fdc
languageName: node
linkType: hard
"@babel/traverse@npm:^7.21.0, @babel/traverse@npm:^7.21.2, @babel/traverse@npm:^7.21.3":
version: 7.21.3
resolution: "@babel/traverse@npm:7.21.3"
dependencies:
"@babel/code-frame": ^7.18.6
"@babel/generator": ^7.21.3
"@babel/helper-environment-visitor": ^7.18.9
"@babel/helper-function-name": ^7.21.0
"@babel/helper-hoist-variables": ^7.18.6
"@babel/helper-split-export-declaration": ^7.18.6
"@babel/parser": ^7.21.3
"@babel/types": ^7.21.3
debug: ^4.1.0
globals: ^11.1.0
checksum: 0af5bcd47a2fc501592b90ac1feae9d449afb9ab0772a4f6e68230f4cd3a475795d538c1de3f880fe3414b6c2820bac84d02c6549eea796f39d74a603717447b
checksum: 26a1eea0dde41ab99dde8b9773a013a0dc50324e5110a049f5d634e721ff08afffd54940b3974a20308d7952085ac769689369e9127dea655f868c0f6e1ab35d
languageName: node
linkType: hard
@@ -961,6 +997,17 @@ __metadata:
languageName: node
linkType: hard
"@babel/types@npm:^7.22.15, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0":
version: 7.23.0
resolution: "@babel/types@npm:7.23.0"
dependencies:
"@babel/helper-string-parser": ^7.22.5
"@babel/helper-validator-identifier": ^7.22.20
to-fast-properties: ^2.0.0
checksum: 215fe04bd7feef79eeb4d33374b39909ce9cad1611c4135a4f7fdf41fe3280594105af6d7094354751514625ea92d0875aba355f53e86a92600f290e77b0e604
languageName: node
linkType: hard
"@babel/types@npm:^7.8.3":
version: 7.20.7
resolution: "@babel/types@npm:7.20.7"
@@ -992,15 +1039,15 @@ __metadata:
version: 0.0.0-use.local
resolution: "@docker/actions-toolkit@workspace:."
dependencies:
"@actions/cache": ^3.2.2
"@actions/cache": ^3.2.4
"@actions/core": ^1.10.1
"@actions/exec": ^1.1.1
"@actions/github": ^6.0.0
"@actions/http-client": ^2.2.0
"@actions/io": ^1.1.3
"@actions/tool-cache": ^2.0.1
"@octokit/core": ^5.0.1
"@octokit/plugin-rest-endpoint-methods": ^10.0.1
"@octokit/core": ^5.1.0
"@octokit/plugin-rest-endpoint-methods": ^10.4.0
"@types/csv-parse": ^1.2.2
"@types/js-yaml": ^4.0.5
"@types/node": ^20.5.9
@@ -1009,7 +1056,7 @@ __metadata:
"@typescript-eslint/eslint-plugin": ^6.6.0
"@typescript-eslint/parser": ^6.6.0
async-retry: ^1.3.3
csv-parse: ^5.5.2
csv-parse: ^5.5.3
dotenv: ^16.3.1
eslint: ^8.48.0
eslint-config-prettier: ^9.0.0
@@ -1018,8 +1065,7 @@ __metadata:
eslint-plugin-prettier: ^5.0.0
handlebars: ^4.7.8
jest: ^29.6.4
js-yaml: ^4.1.0
jwt-decode: ^3.1.2
jwt-decode: ^4.0.0
prettier: ^3.0.3
rimraf: ^5.0.1
semver: ^7.5.4
@@ -1577,6 +1623,21 @@ __metadata:
languageName: node
linkType: hard
"@octokit/core@npm:^5.1.0":
version: 5.1.0
resolution: "@octokit/core@npm:5.1.0"
dependencies:
"@octokit/auth-token": ^4.0.0
"@octokit/graphql": ^7.0.0
"@octokit/request": ^8.0.2
"@octokit/request-error": ^5.0.0
"@octokit/types": ^12.0.0
before-after-hook: ^2.2.0
universal-user-agent: ^6.0.0
checksum: 170d16f5577df484116238ce04e2dbd6b45d8e96b4680fee657ae22fcafb311af8df8a14ae80610f41c1a85493c927910698019a761914ff4b0323ddbabcc9a4
languageName: node
linkType: hard
"@octokit/endpoint@npm:^9.0.0":
version: 9.0.0
resolution: "@octokit/endpoint@npm:9.0.0"
@@ -1613,6 +1674,13 @@ __metadata:
languageName: node
linkType: hard
"@octokit/openapi-types@npm:^20.0.0":
version: 20.0.0
resolution: "@octokit/openapi-types@npm:20.0.0"
checksum: 23ff7613750f8b5790a0cbed5a2048728a7909e50d726932831044908357a932c7fc0613fb7b86430a49d31b3d03a180632ea5dd936535bfbc1176391a199e96
languageName: node
linkType: hard
"@octokit/plugin-paginate-rest@npm:^9.0.0":
version: 9.0.0
resolution: "@octokit/plugin-paginate-rest@npm:9.0.0"
@@ -1624,7 +1692,7 @@ __metadata:
languageName: node
linkType: hard
"@octokit/plugin-rest-endpoint-methods@npm:^10.0.0, @octokit/plugin-rest-endpoint-methods@npm:^10.0.1":
"@octokit/plugin-rest-endpoint-methods@npm:^10.0.0":
version: 10.0.1
resolution: "@octokit/plugin-rest-endpoint-methods@npm:10.0.1"
dependencies:
@@ -1635,6 +1703,17 @@ __metadata:
languageName: node
linkType: hard
"@octokit/plugin-rest-endpoint-methods@npm:^10.4.0":
version: 10.4.0
resolution: "@octokit/plugin-rest-endpoint-methods@npm:10.4.0"
dependencies:
"@octokit/types": ^12.6.0
peerDependencies:
"@octokit/core": ">=5"
checksum: 8ee155825c7ea1dd2991a50d5b3f205988b8ea19af4bebbd91c55bb7b78c4e2215956d578671496a4a86df19ff2d5405ce37ee35c9c6c188dc9a199c045c30be
languageName: node
linkType: hard
"@octokit/request-error@npm:^5.0.0":
version: 5.0.0
resolution: "@octokit/request-error@npm:5.0.0"
@@ -1677,6 +1756,15 @@ __metadata:
languageName: node
linkType: hard
"@octokit/types@npm:^12.6.0":
version: 12.6.0
resolution: "@octokit/types@npm:12.6.0"
dependencies:
"@octokit/openapi-types": ^20.0.0
checksum: 850235f425584499a2266d5c585c1c2462ae11e25c650567142f3342cb9ce589c8c8fed87705811ca93271fd28c68e1fa77b88b67b97015d7b63d269fa46ed05
languageName: node
linkType: hard
"@opentelemetry/api@npm:^1.0.1":
version: 1.4.1
resolution: "@opentelemetry/api@npm:1.4.1"
@@ -2714,7 +2802,7 @@ __metadata:
languageName: node
linkType: hard
"chalk@npm:^2.0.0":
"chalk@npm:^2.0.0, chalk@npm:^2.4.2":
version: 2.4.2
resolution: "chalk@npm:2.4.2"
dependencies:
@@ -2900,10 +2988,10 @@ __metadata:
languageName: node
linkType: hard
"csv-parse@npm:^5.5.2":
version: 5.5.2
resolution: "csv-parse@npm:5.5.2"
checksum: de2eb0c29b049783ef101b7eb843456200dc9a4fc9f4b400473bb0521b41aadb77af560cf4edc49bac65cc457b32596519860120181b26ec3b372109ddf8e8ea
"csv-parse@npm:^5.5.3":
version: 5.5.3
resolution: "csv-parse@npm:5.5.3"
checksum: 38399bc4c61b721bc2f52a6262d6000b4e5f391e45b071f6eb087b293a02f867020f7da36adf6f56eb9fb45bd28c82cd223afd35846551fb5ad31bf3d0602961
languageName: node
linkType: hard
@@ -5282,10 +5370,10 @@ __metadata:
languageName: node
linkType: hard
"jwt-decode@npm:^3.1.2":
version: 3.1.2
resolution: "jwt-decode@npm:3.1.2"
checksum: 20a4b072d44ce3479f42d0d2c8d3dabeb353081ba4982e40b83a779f2459a70be26441be6c160bfc8c3c6eadf9f6380a036fbb06ac5406b5674e35d8c4205eeb
"jwt-decode@npm:^4.0.0":
version: 4.0.0
resolution: "jwt-decode@npm:4.0.0"
checksum: 390e2edcb31a92e86c8cbdd1edeea4c0d62acd371f8a8f0a8878e499390c0ecf4c658b365c4e941e4ef37d0170e4ca650aaa49f99a45c0b9695a235b210154b0
languageName: node
linkType: hard
@@ -7073,11 +7161,11 @@ __metadata:
linkType: hard
"undici@npm:^5.25.4":
version: 5.25.4
resolution: "undici@npm:5.25.4"
version: 5.27.0
resolution: "undici@npm:5.27.0"
dependencies:
"@fastify/busboy": ^2.0.0
checksum: 654da161687de893127a685be61a19cb5bae42f4595c316ebf633929d871ac3bcd33edcb74156cea90655dfcd100bfe9b53a4f4749d52fc6ad2232f49a6ca8ab
checksum: 3acad25bfe5957aa5edc24eb160b5da7a9c67a5061e2e001929bef4bafed07d93a2accb36d407179c35b3ae56adbe89b49e1dd80d8cea9fdc44dca2037174330
languageName: node
linkType: hard