Commit graph

28 commits

Author SHA1 Message Date
Carlos Alexandro Becker
a71152e827
refactor: drop legacy 'nightly' tag fallback
Both goreleaser and goreleaser-pro now publish nightly releases as
vX.Y.Z-<sha>-nightly, so the action no longer needs to special-case
or fall back to the moving 'nightly' tag.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-26 18:02:55 -03:00
Carlos Alexandro Becker
4c6ab561ad
feat: resolve nightly to latest vX.Y.Z-<sha>-nightly release (#558)
* feat: resolve nightly to latest vX.Y.Z-<sha>-nightly release

Query GitHub releases API to resolve the 'nightly' version input to the
latest immutable nightly tag, replacing the moving 'nightly' tag that is
being removed for supply-chain hardening.

Refs goreleaser/goreleaser#6550

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* feat: keep legacy 'nightly' tag working during transition

Fall back to the moving 'nightly' tag when no immutable
vX.Y.Z-<sha>-nightly release is found, so the action keeps working
between this release and the goreleaser nightly switchover.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* test: assert isNightlyTag accepts legacy fallback

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: accept nightly tags without 'v' prefix

goreleaser-pro publishes nightly releases as e.g. 2.16.0-eaeb08c50-nightly
(no 'v' prefix). Make the nightly tag regex tolerate either form, and
split the integration tests so OSS asserts the legacy fallback while
Pro asserts the new <version>-<sha>-nightly format.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Revert "fix: accept nightly tags without 'v' prefix"

The missing 'v' prefix on the goreleaser-pro nightly was a release
mistake; new nightlies will keep the 'v' prefix.

This reverts commit 7673f7f.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* ci: pass GITHUB_TOKEN to tests

The new nightly resolution hits api.github.com/repos/.../releases,
which is rate-limited for unauthenticated requests.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* docs: note GITHUB_TOKEN need for nightly resolution

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-26 16:39:25 -03:00
Carlos Alexandro Becker
4f96abf297
feat: add version-file input (#556)
Resolves the GoReleaser version from a file. Currently supports the
asdf/mise `.tool-versions` format; resolved value takes precedence
over the `version` input.

  # .tool-versions
  goreleaser 2.13.0

  - uses: goreleaser/goreleaser-action@v7
    with:
      version-file: .tool-versions
      args: release --clean

Path is resolved relative to `workdir` unless absolute. Bare semvers
are auto-prefixed with `v`; constraint expressions and `latest` are
returned as-is. Multiple fallback versions per asdf convention are
accepted but only the first is used.

Refs #541
Closes #542

Co-authored-by: Anthony Couvreur <22034450+acouvreur@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-23 23:05:24 -03:00
Carlos Alexandro Becker
15fa2a96d4
test: cover install across release eras (#555)
Add install tests pinned to versions that exercise every release era so
we don't regress the graceful-skip path for releases that pre-date the
cosign v3 sigstore bundle:

- v0.182.0  pre-checksums-signing
- v1.26.2   cosign v2 detached .sig only
- v2.12.4   last release before sigstore bundles
- v2.13.0   first release with sigstore bundle (minimum verifiable)
- v2.15.3   recent release with sigstore bundle

Plus an explicit verifyChecksum integration test that installs v2.12.4
with cosign in PATH to confirm the cosign step is skipped (not failed)
when the sigstore bundle is absent.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-18 15:55:31 -03:00
Carlos Alexandro Becker
e24998b8b6
ci: drop pre-cosign-v3 goreleaser versions from tests (#554)
GoReleaser v2.13.0 was the first release to ship the cosign v3
sigstore-bundle 'checksums.txt.sigstore.json' alongside the archive.
Earlier releases only publish a cosign v2 detached '.sig', which the
action's verifier does not understand and silently skips.

Drop '~> 1.26' / '~> 2.6' / 'v0.182.0' / '~> v1' from the matrix and
the install tests; pin '~> 2.13' as the minimum-supported version we
actively exercise in CI. Document v2.13.0 as the minimum cosign-
verifiable version in the README.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-18 15:39:15 -03:00
Carlos Alexandro Becker
4b462d3d1d
feat: verify release checksum and cosign signature (#550)
* feat: verify release checksum and cosign signature

Download checksums.txt for the release and verify the SHA-256 of the
downloaded archive against it. When cosign is available in PATH, also
download checksums.txt.sigstore.json and verify the signature against
the goreleaser/goreleaser-pro release workflow identity. Both steps
degrade gracefully (with a warning) when the corresponding artifacts
or tooling are missing.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* test: use install() for checksum e2e tests

Drop the http-client download helper from verifyChecksum integration
tests; call goreleaser.install() instead so the test exercises the
public API path and avoids duplicating download logic.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-18 14:34:46 -03:00
Carlos Alexandro Becker
9881cc5376
fix: use new static URL
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2026-03-22 23:43:18 -03:00
Carlos Alexandro Becker
9a6cd01b33
fix: do not get releases.json if version is specific (#502)
closes #489
2025-08-02 10:24:12 +02:00
Carlos Alexandro Becker
842e7ccd3e
feat: update for goreleaser v2.7 2025-02-10 23:38:58 -03:00
Carlos Alexandro Becker
18bbabc70c
feat!: use "~> v2" as default (#463)
* feat!: use "~> v2" as default

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

* fix: more changes

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

* gen

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

* docs: update

* docs: update

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-06-04 21:50:33 -03:00
Carlos Alexandro Becker
f1dbd532c3
feat: lock this major version of the action to use '~> v1' as 'latest' (#461)
* feat: warn about using 'latest'

* feat: use "~> v1" as latest

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

* feat: default to "~> v1" instead of "latest"

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-05-10 13:30:10 -03:00
Carlos Alexandro Becker
c7c9447c79
feat: support oss nightlies (#424)
* feat: support oss nightlies

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

* fix: test

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2023-08-09 13:57:58 -03:00
Carlos Alexandro Becker
336e29918d
feat: support nightly (#419)
* feat: support nightly

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

* chore: nightly test

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

* chore: typo

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2023-06-12 09:16:56 -03:00
CrazyMax
f424e9de13
chore: update yarn to 3.5.1 (#412)
* chore: update yarn to 3.5.1

* chore: add plugin-interactive-tools yarn pkg

* chore: update dev dependencies

* chore: eslint fixes

* chore: update generated content

---------

Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-05-07 16:13:08 +02:00
CrazyMax
f82d6c1c34
fix: don't depend on the GitHub API to check release (#391)
* fix: don't depend on the GitHub API to check release

* chore: update generated content

---------

Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2023-01-30 14:11:41 +01:00
Carlos Alexandro Becker
9754a253a8
fix: use @action/github (#390)
* fix: use @action/github

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* Update README.md

Co-authored-by: CrazyMax <github@crazymax.dev>

* Update action.yml

Co-authored-by: CrazyMax <github@crazymax.dev>

---------

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
Co-authored-by: CrazyMax <github@crazymax.dev>
2023-01-27 23:22:07 -03:00
Carlos Alexandro Becker
3b7d1ba946
feat!: remove auto-snapshot on dirty tag (#382)
* feat!: remove auto-snapshot on dirty tag

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* feat!: remove the entire git thing

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: tests

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* test: fix

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

* fix: snapshto tests

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>

Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
2022-12-13 10:18:53 -03:00
CrazyMax
b508e2e3ef
chore: remove workaround for setOutput (#374)
Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2022-10-16 04:33:00 +02:00
CrazyMax
c25888f15f
chore: update dev dependencies and workflow (#342)
Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2022-04-25 05:17:05 +02:00
CrazyMax
c127c9be61
feat: add artifacts and metadata outputs (#327)
Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2022-02-27 20:01:51 +01:00
CrazyMax
39419c3fac
refactor: setup context (#325)
Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2022-02-27 17:22:06 +01:00
Carlos Alexandro Becker
5df302e5e9
fix: get darwin universal binary (#312)
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
2021-10-15 14:43:54 +02:00
Carlos Alexandro Becker
35d40269d0
test: fix github tests 2021-05-27 17:35:31 -03:00
Carlos Alexandro Becker
70eb4e573c
feat: support downloading goreleaser pro (#284) 2021-05-27 00:25:31 -03:00
CrazyMax
90d3577f6e
fix: Use GITHUB_REF to retrieve tag before checking the most recent tag (#238)
* fix: Use GITHUB_REF to retrieve tag before checking the most recent tag (#238)

* Update tests

* Check also tags sorted by creatordate for the current GITHUB_SHA

* fix: Check tags length

Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2020-08-27 15:28:00 +00:00
Radek Simko
62b67a060c
feat: implement (optional) semver parsing of version (#213) 2020-06-15 16:05:51 +00:00
CrazyMax
6c7b10c265
feat: Use native GitHub Action tools to download assets and use GitHub API (#187)
* Use native GitHub Action tools to download assets and use GitHub API
* Fix unexpected output when tag not found
* Use GitHub Action exec
* Add screenshot

Co-authored-by: CrazyMax <crazy-max@users.noreply.github.com>
2020-05-07 02:15:24 +02:00
CrazyMax
bb450e4e69
Add tests 2019-09-22 07:17:07 +02:00