Set MarkdownV2 as parse mode for Telegram announcer.
This allows for additional formatting in the announcement, such as
`code` or _italic_ sections. For details, see the official [Telegram Bot
API](https://core.telegram.org/bots/api#markdownv2-style).
If someone has the time (not added in this PR), I think it would be
great to add a field to the Telegram config for the parse mode. This
would allow setting a different parse mode than MarkdownV2, such as
HTML.
This fixes#3431.
<!--
Hi, thanks for contributing!
Please make sure you read our CONTRIBUTING guide.
Also, add tests and the respective documentation changes as well.
-->
## If applied, this commit will...
This PR fixes one line in the `homebrew` example section.
## Why is this change being made?
In the example of the `homebrew` section, the `url_template` value seems
to be wrong.
closes#3407
Signed-off-by: Sheridan C Rawlins <scr@yahooinc.com>
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Co-authored-by: Sheridan C Rawlins <scr@yahooinc.com>
The example creates an error because builds is supposed to be an array
here is shown as a string
<!--
Hi, thanks for contributing!
Please make sure you read our CONTRIBUTING guide.
Also, add tests and the respective documentation changes as well.
-->
<!-- If applied, this commit will... -->
...
<!-- Why is this change being made? -->
...
<!-- # Provide links to any relevant tickets, URLs or other resources
-->
...
- docs on how to specify the schema to the lang server
- add it automatically along with vim modelines to the init config
- added it to our config as well
this should prevent some "out of date" schema issues, as well as mixing
tabs with spaces and whatnot when an editorconfig plugin is not
installed.
versioned all new options since v1.2 (late 2021).
Should be enough to fix#3317 for now.
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
<!--
Hi, thanks for contributing!
Please make sure you read our CONTRIBUTING guide.
Also, add tests and the respective documentation changes as well.
-->
<!-- If applied, this commit will... -->
...
<!-- Why is this change being made? -->
...
<!-- # Provide links to any relevant tickets, URLs or other resources -->
...
this allows the user to specify the abbrev lenght to use, and will also add the option to omit the commit hash altogether by setting it to -1.
default is doing nothing
closes#3348
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
`--add-file` adds only the `--prefix` joined with the basename of the added file, so, adding a folder like `vendor` would break havoc.
this basically writes our own source archives (which are more compressed) and allows to add an entire folder easily, as well as other mappings as `archives` already supports.
refs #3102#2911
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
We should not imply the target_commitish, as some users might want to
have the code in one repo and the releases in another (e.g. private
code, public releases), so the commit might not be there.
We should instead allow the user to set the `target_commitish` (or not),
and pass it down to the github api.
refs 95bba02211
refs #3044
refs #3330
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
termux support, built from #3258 :
minor code changes
support for 386 as well
docs
tests
closes#3118closes#3258
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Co-authored-by: rsteube <rsteube@users.noreply.github.com>
* feat: add version for homebrew dependencies
* resolve conflicts
* resolve conflicts
* feat: allow to specify version of brew deps
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* docs: brew
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Co-authored-by: Purushotham <purushotham@hasura.io>
* feat: remove gofish
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* fix: remove more unused code
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* fix: remove more references
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* feat: strip_parent_binary_folder
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* docs: clarify dir
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* fix: fmt
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* Support mTLS with client certificate when configured.
* Fix the omitempty typo.
* Add check for missing cert as well.
* Added documentation for artifactory and upload, as well as how to run mkdocs locally
* set pip version to just 3.
* Added example to the full config.
* Remove the Pipfile and update documentation to mention the task.
* update language in doc about multiarch images.
Co-authored-by: Sheridan C Rawlins <scr@ouryahoo.com>
* feat(ci): compile with go 1.19
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* test: fixing template test
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* test: improve check
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* fix: more test and docs fixes
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* test: fix
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* test: fix
* test: fix
* fix: lint
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* test: docker templates
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* fix: godoc for RequireTemplateError
* Always strip parents.
* refactor: improve code a bit
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* refactor: even simpler
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
Co-authored-by: Nathan Hammond <nathan.hammond@vercel.com>
`cosign sign` complains with the following error when using `--output`
⨯ release failed after 14.73s error=sign: cosign failed: exit status 1: WARNING: the '--output' flag is deprecated and will be removed in the future. Use '--output-signature'
* feat: allow to override env for a target
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* fix: dupe key
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* test: fixes
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* feat: remove empty_folders for good
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* fix: build
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* feat: update jsonschema library
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* fix: test
Signed-off-by: Carlos A Becker <caarlos0@users.noreply.github.com>
* Make sure to do required go mod init before continuing or goreleaser command fails.
* how the release might look like -> what the release might look like
* How does it look like -> What does it look like
* you must therefore -> you must
* Don't use GO111MODULES in example since it's so obsolete
* modules -> verifiable builds
* got you covered -> has you covered
* docs: fix several htmltest issues
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* docs: more fixes
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: improve docker errors
Adding an error page with some more info to help debug issues.
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: forgot return
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: missing err
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: new install anf run script
- move away from deprecated git.io
- support distribution
- verify checksums and signature
closes#3074
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: rename script
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
- on universal binaries, use the build id instead of the binary name to
create the folder in the dist folder
- on builds, default the id the to the binary name instead of project
name. The binary name already defaults to the project id if empty, so
this should only prevent having to specify the id + binary name in
some cases.
closes#3061
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: add builds.no_main_check and builds.command
Added two more options to the builds section:
- command: allow to override the command being run. E.g. instead of
`go build`, one could run `go test -c` by setting gobinary, command
and flags, respectively.
- no_main_check: by default, goreleaser will fail if there's no main
function. This option allows to disable that check.
This PR effectively make GoReleaser able to release Go test binaries
instead of just "regular" binaries.
closes#3037
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: fix broken tests
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
It was just allowing v2 and v3 due to some misreading on my side.
This commit fixes it to allow v1, v2, v3 and v4.
refs #3016
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: deprecate gofish
gofish was deprecated by its authors, this deprecates it here too
refs https://github.com/goreleaser/goreleaser/discussions/2998
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: do not publish rig anymore
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* docs: remove install
* chore: deprecate
* fix(gofish): fix broke logs
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat(announce): added Slack notification options
This feature adds support for specifying a richer content in Slack
announcements. We may now specify "blocks" and "attachments" to produce
better-looking announcement messages.
* fixes#2986
The goreleaser configuration only exposes the top-level structures and does not
check the validity of the Slack API internal structures. This way, we do
not inject hard dependencies on changes in the Slack API.
Notice: untyped config parsing introduces a little hack to have yaml and
JSON marshaling work together properly. This hack won't be necessary
with yaml.v3.
How this has been tested?
-------------------------
* Added unit tests for the config parsing
* Added a (skipped) e2e test.
For now, this requires a valid Slack webhook, so I've been able to test this manually.
Signed-off-by: Frederic BIDON <fredbi@yahoo.com>
* added more unit tests
Signed-off-by: Frederic BIDON <fredbi@yahoo.com>
* removed yaml.v2 hack
Signed-off-by: Frederic BIDON <fredbi@yahoo.com>
The idea is to be able to filter by extension and send each extension to
a different place, if needed.
This also affects the artifactory pipe.
Also updated artifactory docs a bit.
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
this allows to set the -mod flag on the command used to grab the module
root package, in case its needed to ignore the vendor folder, force
readonly, etc...
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: annotated tag body
this adds another template variable, `TagBody`, with the body of the annotated tag/commit message only.
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* refactor: tag contents
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: add grep and grep -v template functions
this adds `grep` and `reverseGrep` template functions, which should help dealing with text.
refs #2920
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* refactor: rename funcs
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
/usr/local/bin is intended for binaries compiled locally, which is never
the case for goreleaser.
this changes the default to /usr/bin instead.
closes#2909
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: lintian overrides
allow to more easily set lintian overrides
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: lintian
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* chore: code of conduct links
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* docs: use the orgs code of conduct
we dont need to keep a copy of it in every project, a single one should do.
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: allow to use .Path and .Name on universal binary post hooks
This allows the usage of `{{ .Path }}` and `{{ .Name }}` on post
templates.
Closes#2890
* docs: improve docs
* test: add more tests
* feat: allow to override build flags by goos/goarch/etc
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: improve
* fix: typos
* feat: templates, merges
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: fix
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: one more case
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* Update internal/builders/golang/build.go
Co-authored-by: Brian Flad <bflad417@gmail.com>
* Update internal/builders/golang/build.go
Co-authored-by: Brian Flad <bflad417@gmail.com>
* test: more tests
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
Co-authored-by: Brian Flad <bflad417@gmail.com>
* feat: expose runtime goos and goarch on templates and metadata
* test: fix duplicated map literal in some os/arch
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: aur PKGBUILD integration
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: guess install, improve formatting
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: more deterministic
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: binary releases, push, more tests
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: accept key as text
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: improvements
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: srcinfo
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: compile
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: everything
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: lint
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* feat: renames, docs, etc
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* docs: link to docs
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: go mod tidy, title
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: srcinfo tmpl
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: missing close quote
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: templates
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: always defaults conflicts and provides
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: ssh command
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: maintainers can be a list
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: ensure -bin suffix, more tests and docs
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: this will never happen
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: whitespaces
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* fix: goreleaser config
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
GitLab's Generic Package Repository allows uploading files
to GitLab, as an alternative to attachments.
Added the flag `use_package_registry` to the `gitlab_urls` config.
When false, the default, it will behave as before.
When true, it will publish the file to the Generic Package Registry.
Either way, the URL is bound to the release the same
Updated `go-gitlab` to version 0.52.2 which has the new
`GenericPackages.PublishPackageFile` function.
Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
* feat: allow to template dockerfile
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>
* test: added one more test
Signed-off-by: Carlos A Becker <caarlos0@gmail.com>