1package goreleaser
2
3// goreleaser configuration definition file
4#Project: {
5 @jsonschema(schema="https://json-schema.org/draft/2020-12/schema")
6 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/project")
7 #Project
8
9 #AUR: close({
10 "name"?: string
11 "ids"?: [...string]
12 "commit_author"?: #CommitAuthor
13 "commit_msg_template"?: string
14 "description"?: string
15 "homepage"?: string
16 "license"?: string
17 "skip_upload"?: bool | string
18 "url_template"?: string
19 "maintainers"?: [...string]
20 "contributors"?: [...string]
21 "provides"?: [...string]
22 "conflicts"?: [...string]
23 "depends"?: [...string]
24 "optdepends"?: [...string]
25 "backup"?: [...string]
26 "rel"?: string
27 "package"?: string
28 "git_url"?: string
29 "git_ssh_command"?: string
30 "private_key"?: string
31 "goamd64"?: string
32 "directory"?: string
33 "disable"?: bool | string
34 "install"?: string
35 })
36
37 #AURSource: close({
38 "name"?: string
39 "ids"?: [...string]
40 "commit_author"?: #CommitAuthor
41 "commit_msg_template"?: string
42 "description"?: string
43 "homepage"?: string
44 "license"?: string
45 "skip_upload"?: bool | string
46 "url_template"?: string
47 "maintainers"?: [...string]
48 "contributors"?: [...string]
49 "arches"?: [...string]
50 "provides"?: [...string]
51 "conflicts"?: [...string]
52 "depends"?: [...string]
53 "optdepends"?: [...string]
54 "makedepends"?: [...string]
55 "backup"?: [...string]
56 "rel"?: string
57 "prepare"?: string
58 "build"?: string
59 "package"?: string
60 "git_url"?: string
61 "git_ssh_command"?: string
62 "private_key"?: string
63 "goamd64"?: string
64 "directory"?: string
65 "disable"?: bool | string
66 "install"?: string
67 })
68
69 #Announce: close({
70 "skip"?: bool | string
71 "twitter"?: #Twitter
72 "mastodon"?: #Mastodon
73 "reddit"?: #Reddit
74 "slack"?: #Slack
75 "discord"?: #Discord
76 "teams"?: #Teams
77 "smtp"?: #SMTP
78 "mattermost"?: #Mattermost
79 "linkedin"?: #LinkedIn
80 "telegram"?: #Telegram
81 "webhook"?: #Webhook
82 "opencollective"?: #OpenCollective
83 "bluesky"?: #Bluesky
84 "discourse"?: #Discourse
85 })
86
87 #Archive: close({
88 "id"?: string
89 "ids"?: [...string]
90 "builds_info"?: #FileInfo
91 "name_template"?: string
92 "formats"?: #StringArray
93 "format_overrides"?: [...#FormatOverride]
94 "wrap_in_directory"?: bool | string
95 "strip_binary_directory"?: bool
96 "files"?: [...#File]
97 "meta"?: bool
98 "allow_different_binary_count"?: bool
99 "format"?: "tar" | "tgz" | "tar.gz" | "zip" | "gz" | "tar.xz" | "txz" | "binary"
100 "builds"?: [...string]
101 })
102
103 #Before: close({
104 "hooks"?: [...string]
105 })
106
107 #BinarySign: close({
108 "id"?: string
109 "cmd"?: string
110 "args"?: [...string]
111 "signature"?: string
112 "artifacts"?: "binary" | "none"
113 "ids"?: [...string]
114 "stdin"?: string
115 "stdin_file"?: string
116 "env"?: [...string]
117 "certificate"?: string
118 "output"?: bool | string
119 })
120
121 #Blob: close({
122 "bucket"?: string
123 "provider"?: string
124 "region"?: string
125 "disable_ssl"?: bool
126 "directory"?: string
127 "kms_key"?: string
128 "ids"?: [...string]
129 "endpoint"?: string
130 "extra_files"?: [...#ExtraFile]
131 "disable"?: bool | string
132 "s3_force_path_style"?: bool
133 "acl"?: string
134 "cache_control"?: [...string]
135 "content_disposition"?: string
136 "include_meta"?: bool
137 "extra_files_only"?: bool
138 })
139
140 #Bluesky: close({
141 "enabled"?: bool | string
142 "username"?: string
143 "message_template"?: string
144 })
145
146 #Build: close({
147 "id"?: string
148 "goos"?: [...string]
149 "goarch"?: [...string]
150 "goamd64"?: [...string]
151 "go386"?: [...string]
152 "goarm"?: [...string]
153 "goarm64"?: [...string]
154 "gomips"?: [...string]
155 "goppc64"?: [...string]
156 "goriscv64"?: [...string]
157 "targets"?: [...string]
158 "ignore"?: [...#IgnoredBuild]
159 "dir"?: string
160 "main"?: string
161 "binary"?: string
162 "hooks"?: #BuildHookConfig
163 "builder"?: "" | "go" | "rust" | "zig" | "bun" | "deno" | "uv" | "poetry"
164 "mod_timestamp"?: string
165 "skip"?: bool | string
166 "tool"?: string
167 "command"?: string
168 "no_unique_dist_dir"?: bool | string
169 "no_main_check"?: bool
170 "buildmode"?: "c-archive" | "c-shared" | "pie" | "wheel" | "sdist" | ""
171 "ldflags"?: #StringArray
172 "tags"?: #FlagArray
173 "flags"?: #FlagArray
174 "asmflags"?: #StringArray
175 "gcflags"?: #StringArray
176 "env"?: [...string]
177 "overrides"?: [...#BuildDetailsOverride]
178 "gobinary"?: string
179 })
180
181 #BuildDetailsOverride: close({
182 "goos"!: string
183 "goarch"!: string
184 "goamd64"?: string
185 "go386"?: string
186 "goarm64"?: string
187 "goarm"?: matchN(1, [string, int])
188 "gomips"?: string
189 "goppc64"?: string
190 "goriscv64"?: string
191 "buildmode"?: "c-archive" | "c-shared" | "pie" | "wheel" | "sdist" | ""
192 "ldflags"?: #StringArray
193 "tags"?: #FlagArray
194 "flags"?: #FlagArray
195 "asmflags"?: #StringArray
196 "gcflags"?: #StringArray
197 "env"?: [...string]
198 })
199
200 #BuildHookConfig: close({
201 "pre"?: #Hooks
202 "post"?: #Hooks
203 })
204
205 #Changelog: close({
206 "filters"?: #Filters
207 "sort"?: "asc" | "desc" | ""
208 "disable"?: bool | string
209 "use"?: "git" | "github" | "github-native" | "gitlab"
210 "format"?: string
211 "groups"?: [...#ChangelogGroup]
212 "abbrev"?: int
213 })
214
215 #ChangelogGroup: close({
216 "title"!: string
217 "regexp"?: string
218 "order"?: int
219 })
220
221 #Checksum: close({
222 "name_template"?: string
223 "algorithm"?: string
224 "split"?: bool
225 "ids"?: [...string]
226 "disable"?: bool
227 "extra_files"?: [...#ExtraFile]
228 })
229
230 #Chocolatey: close({
231 "name"?: string
232 "ids"?: [...string]
233 "package_source_url"?: string
234 "owners"?: string
235 "title"?: string
236 "authors"?: string
237 "project_url"?: string
238 "url_template"?: string
239 "icon_url"?: string
240 "copyright"?: string
241 "license_url"?: string
242 "require_license_acceptance"?: bool
243 "project_source_url"?: string
244 "docs_url"?: string
245 "bug_tracker_url"?: string
246 "tags"?: string
247 "summary"?: string
248 "description"?: string
249 "release_notes"?: string
250 "dependencies"?: [...#ChocolateyDependency]
251 "skip_publish"?: bool
252 "api_key"?: string
253 "source_repo"?: string
254 "goamd64"?: string
255 })
256
257 #ChocolateyDependency: close({
258 "id"?: string
259 "version"?: string
260 })
261
262 #CommitAuthor: close({
263 "name"?: string
264 "email"?: string
265 "signing"?: #CommitSigning
266 "use_github_app_token"?: bool
267 })
268
269 #CommitSigning: close({
270 "enabled"?: bool
271 "key"?: string
272 "program"?: string
273 "format"?: "openpgp" | "x509" | "ssh"
274 })
275
276 #Discord: close({
277 "enabled"?: bool | string
278 "message_template"?: string
279 "author"?: string
280 "color"?: string
281 "icon_url"?: string
282 })
283
284 #Discourse: close({
285 "enabled"?: bool | string
286 "title_template"?: string
287 "message_template"?: string
288 "server"?: string
289 "category_id"?: int
290 "username"?: string
291 })
292
293 #Docker: close({
294 "id"?: string
295 "ids"?: [...string]
296 "goos"?: string
297 "goarch"?: string
298 "goarm"?: matchN(1, [string, int])
299 "goamd64"?: string
300 "dockerfile"?: string
301 "image_templates"?: [...string]
302 "skip_push"?: bool | string
303 "extra_files"?: [...string]
304 "build_flag_templates"?: [...string]
305 "push_flags"?: [...string]
306 "use"?: "docker" | "buildx"
307 "retry"?: #Retry
308 })
309
310 #DockerDigest: close({
311 "disable"?: bool | string
312 "name_template"?: string
313 })
314
315 #DockerManifest: close({
316 "id"?: string
317 "name_template"?: string
318 "skip_push"?: bool | string
319 "image_templates"?: [...string]
320 "create_flags"?: [...string]
321 "push_flags"?: [...string]
322 "use"?: string
323 "retry"?: #Retry
324 })
325
326 #DockerV2: close({
327 "id"?: string
328 "ids"?: [...string]
329 "dockerfile"?: string
330 "images"?: [...string]
331 "tags"?: [...string]
332 "labels"?: {
333 [string]: string
334 }
335 "annotations"?: {
336 [string]: string
337 }
338 "extra_files"?: [...string]
339 "platforms"?: [...string]
340 "build_args"?: {
341 [string]: string
342 }
343 "retry"?: #Retry
344 "flags"?: [...string]
345 "disable"?: bool | string
346 "sbom"?: bool | string
347 })
348
349 #EnvFiles: close({
350 "github_token"?: string
351 "gitlab_token"?: string
352 "gitea_token"?: string
353 })
354
355 #ExtraFile: close({
356 "glob"?: string
357 "name_template"?: string
358 })
359
360 #File: matchN(1, [string, _#defs."/$defs/File/oneOf/1"])
361
362 #FileInfo: {
363 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/file-info")
364 _#defs."/$defs/FileInfo/$defs/FileInfo"
365 }
366
367 #Filters: close({
368 "include"?: [...string]
369 "exclude"?: [...string]
370 })
371
372 #FlagArray: matchN(1, [string, [...string]])
373
374 #Flatpak: close({
375 "id"?: string
376 "ids"?: [...string]
377 "name_template"?: string
378 "app_id"!: string
379 "runtime"!: string
380 "runtime_version"!: string
381 "sdk"!: string
382 "command"?: string
383 "finish_args"?: [...string]
384 "disable"?: bool | string
385 })
386
387 #FormatOverride: close({
388 "goos"?: string
389 "formats"?: #StringArray
390 "format"?: "tar" | "tgz" | "tar.gz" | "zip" | "gz" | "tar.xz" | "txz" | "binary" | "none"
391 })
392
393 #Git: close({
394 "tag_sort"?: "-version:refname" | "-version:creatordate"
395 "prerelease_suffix"?: string
396 "ignore_tags"?: [...string]
397 })
398
399 #GitHubURLs: close({
400 "api"?: string
401 "upload"?: string
402 "download"?: string
403 "skip_tls_verify"?: bool
404 })
405
406 #GitLabURLs: close({
407 "api"?: string
408 "download"?: string
409 "skip_tls_verify"?: bool
410 "use_package_registry"?: bool
411 "use_job_token"?: bool
412 })
413
414 #GitRepoRef: close({
415 "url"?: string
416 "ssh_command"?: string
417 "private_key"?: string
418 })
419
420 #GiteaURLs: close({
421 "api"?: string
422 "download"?: string
423 "skip_tls_verify"?: bool
424 })
425
426 #GoMod: close({
427 "proxy"?: bool
428 "env"?: [...string]
429 "gobinary"?: string
430 "mod"?: string
431 "dir"?: string
432 })
433
434 #Homebrew: close({
435 "name"?: string
436 "repository"?: #RepoRef
437 "commit_author"?: #CommitAuthor
438 "commit_msg_template"?: string
439 "directory"?: string
440 "caveats"?: string
441 "install"?: string
442 "extra_install"?: string
443 "post_install"?: string
444 "dependencies"?: [...#HomebrewDependency]
445 "test"?: string
446 "conflicts"?: [...string]
447 "description"?: string
448 "homepage"?: string
449 "license"?: string
450 "skip_upload"?: bool | string
451 "download_strategy"?: string
452 "url_template"?: string
453 "url_headers"?: [...string]
454 "custom_require"?: string
455 "custom_block"?: string
456 "ids"?: [...string]
457 "goarm"?: matchN(1, [string, int])
458 "goamd64"?: string
459 "service"?: string
460 })
461
462 #HomebrewCask: close({
463 "name"?: string
464 "repository"?: #RepoRef
465 "commit_author"?: #CommitAuthor
466 "commit_msg_template"?: string
467 "directory"?: string
468 "caveats"?: string
469 "description"?: string
470 "homepage"?: string
471 "skip_upload"?: bool | string
472 "custom_block"?: string
473 "ids"?: [...string]
474 "service"?: string
475 "binaries"?: [...string]
476 "manpages"?: [...string]
477 "url"?: #HomebrewCaskURL
478 "completions"?: #HomebrewCaskCompletions
479 "dependencies"?: [...#HomebrewCaskDependency]
480 "conflicts"?: [...#HomebrewCaskConflict]
481 "hooks"?: #HomebrewCaskHooks
482 "uninstall"?: #HomebrewCaskUninstall
483 "zap"?: #HomebrewCaskUninstall
484 "generate_completions_from_executable"?: #HomebrewCaskGeneratedCompletions
485 "license"?: string
486 "manpage"?: string
487 "binary"?: string
488 })
489
490 #HomebrewCaskCompletions: close({
491 "bash"?: string
492 "zsh"?: string
493 "fish"?: string
494 })
495
496 #HomebrewCaskConflict: close({
497 "cask"?: string
498 "formula"?: string
499 })
500
501 #HomebrewCaskDependency: close({
502 "cask"?: string
503 "formula"?: string
504 })
505
506 #HomebrewCaskGeneratedCompletions: close({
507 "executable"?: string
508 "args"?: [...string]
509 "base_name"?: string
510 "shell_parameter_format"?: string
511 "shells"?: [...string]
512 })
513
514 #HomebrewCaskHook: close({
515 "install"?: string
516 "uninstall"?: string
517 })
518
519 #HomebrewCaskHooks: close({
520 "pre"?: #HomebrewCaskHook
521 "post"?: #HomebrewCaskHook
522 })
523
524 #HomebrewCaskURL: close({
525 "template"?: string
526 "verified"?: string
527 "using"?: string
528 "cookies"?: {
529 [string]: string
530 }
531 "referer"?: string
532 "headers"?: [...string]
533 "user_agent"?: string
534 "data"?: {
535 [string]: string
536 }
537 })
538
539 #HomebrewCaskUninstall: close({
540 "launchctl"?: [...string]
541 "quit"?: [...string]
542 "login_item"?: [...string]
543 "delete"?: [...string]
544 "trash"?: [...string]
545 })
546
547 #HomebrewDependency: matchN(1, [string, _#defs."/$defs/HomebrewDependency/oneOf/1"])
548
549 #Hooks: matchN(1, [string, [..._#defs."/$defs/Hooks/oneOf/1/items"]])
550
551 #IgnoredBuild: close({
552 "goos"?: string
553 "goarch"?: string
554 "goamd64"?: string
555 "go386"?: string
556 "goarm"?: matchN(1, [string, int])
557 "goarm64"?: string
558 "gomips"?: string
559 "goppc64"?: string
560 "goriscv64"?: string
561 })
562
563 #Ko: close({
564 "id"?: string
565 "build"?: string
566 "main"?: string
567 "working_dir"?: string
568 "base_image"?: string
569 "labels"?: {
570 [string]: string
571 }
572 "annotations"?: {
573 [string]: string
574 }
575 "user"?: string
576 "repositories"?: [...string]
577 "platforms"?: [...string]
578 "tags"?: [...string]
579 "creation_time"?: string
580 "ko_data_creation_time"?: string
581 "sbom"?: "spdx" | "none"
582 "sbom_directory"?: string
583 "ldflags"?: [...string]
584 "flags"?: [...string]
585 "env"?: [...string]
586 "bare"?: bool
587 "preserve_import_paths"?: bool
588 "base_import_paths"?: bool
589 "local_domain"?: string
590 "disable"?: bool | string
591 "repository"?: string
592 })
593
594 #Krew: close({
595 "ids"?: [...string]
596 "name"?: string
597 "repository"?: #RepoRef
598 "commit_author"?: #CommitAuthor
599 "commit_msg_template"?: string
600 "caveats"?: string
601 "short_description"?: string
602 "description"?: string
603 "homepage"?: string
604 "url_template"?: string
605 "goarm"?: matchN(1, [string, int])
606 "goamd64"?: string
607 "skip_upload"?: bool | string
608 })
609
610 #Libdirs: close({
611 "header"?: string
612 "carchive"?: string
613 "cshared"?: string
614 })
615
616 #LinkedIn: close({
617 "enabled"?: bool | string
618 "message_template"?: string
619 })
620
621 #MCP: close({
622 "github"?: #MCPDetails
623 "name"!: string
624 "title"!: string
625 "description"?: string
626 "homepage"?: string
627 "packages"?: [...#MCPPackage]
628 "transports"?: [...#MCPTransport]
629 "disable"?: bool | string
630 "repository"?: #MCPRepository
631 "auth"!: #MCPAuth
632 })
633
634 #MCPAuth: close({
635 "type"!: "none" | "github" | "github-oidc"
636 "token"?: string
637 })
638
639 #MCPDetails: close({
640 "name"!: string
641 "title"!: string
642 "description"?: string
643 "homepage"?: string
644 "packages"?: [...#MCPPackage]
645 "transports"?: [...#MCPTransport]
646 "disable"?: bool | string
647 "repository"?: #MCPRepository
648 "auth"!: #MCPAuth
649 })
650
651 #MCPPackage: close({
652 "registry_type"!: "oci" | "npm" | "pypi" | "nuget" | "mcpb"
653 "identifier"!: string
654 "transport"!: #MCPTransport
655 })
656
657 #MCPRepository: close({
658 "url"?: string
659 "source"?: "github" | "gitlab" | "gitea"
660 "id"?: string
661 "subfolder"?: string
662 })
663
664 #MCPTransport: close({
665 "type"?: "stdio" | "streamable-http" | "sse"
666 })
667
668 #MacOSNotarize: close({
669 "issuer_id"!: string
670 "key"!: string
671 "key_id"!: string
672 "timeout"?: string
673 "wait"?: bool
674 })
675
676 #MacOSSign: close({
677 "certificate"!: string
678 "password"!: string
679 "entitlements"?: string
680 })
681
682 #MacOSSignNotarize: close({
683 "ids"?: [...string]
684 "enabled"?: bool | string
685 "sign"!: #MacOSSign
686 "notarize"!: #MacOSNotarize
687 })
688
689 #Makeself: close({
690 "id"?: string
691 "filename"?: string
692 "script"!: string
693 "compression"?: "gzip" | "bzip2" | "xz" | "lzo" | "compress" | "none"
694 "extra_args"?: [...string]
695 "files"?: [...#MakeselfFile]
696 "disable"?: bool | string
697 "ids"?: [...string]
698 "goos"?: [...string]
699 "goarch"?: [...string]
700 "name"?: string
701 "description"?: string
702 "maintainer"?: string
703 "keywords"?: [...string]
704 "homepage"?: string
705 "license"?: string
706 })
707
708 #MakeselfFile: close({
709 "src"?: string
710 "dst"?: string
711 "strip_parent"?: bool
712 })
713
714 #Mastodon: close({
715 "enabled"?: bool | string
716 "message_template"?: string
717 "server"!: string
718 })
719
720 #Mattermost: close({
721 "enabled"?: bool | string
722 "message_template"?: string
723 "title_template"?: string
724 "color"?: string
725 "channel"?: string
726 "username"?: string
727 "icon_emoji"?: string
728 "icon_url"?: string
729 })
730
731 #Milestone: close({
732 "repo"?: #Repo
733 "close"?: bool
734 "fail_on_error"?: bool
735 "name_template"?: string
736 })
737
738 #NFPM: close({
739 "file_name_template"?: string
740 "package_name"?: string
741 "epoch"?: string
742 "release"?: string
743 "prerelease"?: string
744 "version_metadata"?: string
745 "dependencies"?: [...string]
746 "recommends"?: [...string]
747 "suggests"?: [...string]
748 "conflicts"?: [...string]
749 "umask"?: matchN(1, [string, int])
750 "replaces"?: [...string]
751 "provides"?: [...string]
752 "contents"?: [...#NFPMContent]
753 "scripts"?: #NFPMScripts
754 "rpm"?: #NFPMRPM
755 "deb"?: #NFPMDeb
756 "apk"?: #NFPMAPK
757 "archlinux"?: #NFPMArchLinux
758 "ipk"?: #NFPMIPK
759 "overrides"?: {
760 [string]: #NFPMOverridables
761 }
762 "id"?: string
763 "ids"?: [...string]
764 "formats"?: [..."apk" | "deb" | "rpm" | "termux.deb" | "archlinux" | "ipk"]
765 "section"?: string
766 "priority"?: string
767 "vendor"?: string
768 "homepage"?: string
769 "maintainer"?: string
770 "description"?: string
771 "license"?: string
772 "bindir"?: string
773 "libdirs"?: #Libdirs
774 "changelog"?: string
775 "mtime"?: string
776 "meta"?: bool
777 "goamd64"?: [...string]
778 "builds"?: [...string]
779 })
780
781 #NFPMAPK: close({
782 "scripts"?: #NFPMAPKScripts
783 "signature"?: #NFPMAPKSignature
784 })
785
786 #NFPMAPKScripts: close({
787 "preupgrade"?: string
788 "postupgrade"?: string
789 })
790
791 #NFPMAPKSignature: close({
792 "key_file"?: string
793 "key_name"?: string
794 })
795
796 #NFPMArchLinux: close({
797 "pkgbase"?: string
798 "packager"?: string
799 "scripts"?: #NFPMArchLinuxScripts
800 })
801
802 #NFPMArchLinuxScripts: close({
803 "preupgrade"?: string
804 "postupgrade"?: string
805 })
806
807 #NFPMContent: close({
808 "src"?: string
809 "dst"!: string
810 "type"?: "symlink" | "ghost" | "config" | "config|noreplace" | "dir" | "tree" | ""
811 "packager"?: string
812 "file_info"?: #FileInfo
813 "expand"?: bool
814 })
815
816 #NFPMDeb: close({
817 "scripts"?: #NFPMDebScripts
818 "triggers"?: #NFPMDebTriggers
819 "breaks"?: [...string]
820 "signature"?: #NFPMDebSignature
821 "lintian_overrides"?: [...string]
822 "compression"?: "gzip" | "xz" | "zstd" | "none"
823 "fields"?: {
824 [string]: string
825 }
826 "predepends"?: [...string]
827 })
828
829 #NFPMDebScripts: close({
830 "rules"?: string
831 "templates"?: string
832 "config"?: string
833 })
834
835 #NFPMDebSignature: close({
836 "key_file"?: string
837 "type"?: string
838 })
839
840 #NFPMDebTriggers: close({
841 "interest"?: [...string]
842 "interest_await"?: [...string]
843 "interest_noawait"?: [...string]
844 "activate"?: [...string]
845 "activate_await"?: [...string]
846 "activate_noawait"?: [...string]
847 })
848
849 #NFPMIPK: close({
850 "abi_version"?: string
851 "alternatives"?: [...#NFPMIPKAlternative]
852 "auto_installed"?: bool
853 "essential"?: bool
854 "predepends"?: [...string]
855 "tags"?: [...string]
856 "fields"?: {
857 [string]: string
858 }
859 })
860
861 #NFPMIPKAlternative: close({
862 "priority"?: int
863 "target"?: string
864 "link_name"?: string
865 })
866
867 #NFPMOverridables: close({
868 "file_name_template"?: string
869 "package_name"?: string
870 "epoch"?: string
871 "release"?: string
872 "prerelease"?: string
873 "version_metadata"?: string
874 "dependencies"?: [...string]
875 "recommends"?: [...string]
876 "suggests"?: [...string]
877 "conflicts"?: [...string]
878 "umask"?: matchN(1, [string, int])
879 "replaces"?: [...string]
880 "provides"?: [...string]
881 "contents"?: [...#NFPMContent]
882 "scripts"?: #NFPMScripts
883 "rpm"?: #NFPMRPM
884 "deb"?: #NFPMDeb
885 "apk"?: #NFPMAPK
886 "archlinux"?: #NFPMArchLinux
887 "ipk"?: #NFPMIPK
888 })
889
890 #NFPMRPM: close({
891 "summary"?: string
892 "group"?: string
893 "compression"?: string
894 "signature"?: #NFPMRPMSignature
895 "scripts"?: #NFPMRPMScripts
896 "prefixes"?: [...string]
897 "packager"?: string
898 "buildhost"?: string
899 })
900
901 #NFPMRPMScripts: close({
902 "pretrans"?: string
903 "posttrans"?: string
904 })
905
906 #NFPMRPMSignature: close({
907 "key_file"?: string
908 })
909
910 #NFPMScripts: close({
911 "preinstall"?: string
912 "postinstall"?: string
913 "preremove"?: string
914 "postremove"?: string
915 })
916
917 #Nix: close({
918 "name"?: string
919 "path"?: string
920 "repository"?: #RepoRef
921 "commit_author"?: #CommitAuthor
922 "commit_msg_template"?: string
923 "ids"?: [...string]
924 "goamd64"?: string
925 "skip_upload"?: bool | string
926 "url_template"?: string
927 "install"?: string
928 "extra_install"?: string
929 "post_install"?: string
930 "description"?: string
931 "homepage"?: string
932 "license"?: string
933 "dependencies"?: [...#NixDependency]
934 "formatter"?: "alejandra" | "nixfmt"
935 })
936
937 #NixDependency: matchN(1, [string, _#defs."/$defs/NixDependency/oneOf/1"])
938
939 #Notarize: close({
940 "macos"!: [...#MacOSSignNotarize]
941 })
942
943 #OpenCollective: close({
944 "enabled"?: bool | string
945 "slug"?: string
946 "title_template"?: string
947 "message_template"?: string
948 })
949
950 #Project: close({
951 "version"?: 2 & int
952 "pro"?: bool
953 "project_name"?: string
954 "env"?: [...string]
955 "release"?: #Release
956 "milestones"?: [...#Milestone]
957 "homebrew_casks"?: [...#HomebrewCask]
958 "nix"?: [...#Nix]
959 "winget"?: [...#Winget]
960 "aurs"?: [...#AUR]
961 "aur_sources"?: [...#AURSource]
962 "krews"?: [...#Krew]
963 "kos"?: [...#Ko]
964 "scoops"?: [...#Scoop]
965 "builds"?: [...#Build]
966 "archives"?: [...#Archive]
967 "nfpms"?: [...#NFPM]
968 "srpm"?: #SRPM
969 "snapcrafts"?: [...#Snapcraft]
970 "flatpak"?: [...#Flatpak]
971 "snapshot"?: #Snapshot
972 "checksum"?: #Checksum
973 "dockers_v2"?: [...#DockerV2]
974 "docker_digest"?: #DockerDigest
975 "artifactories"?: [...#Upload]
976 "uploads"?: [...#Upload]
977 "blobs"?: [...#Blob]
978 "publishers"?: [...#Publisher]
979 "changelog"?: #Changelog
980 "dist"?: string
981 "signs"?: [...#Sign]
982 "notarize"?: #Notarize
983 "docker_signs"?: [...#Sign]
984 "binary_signs"?: [...#BinarySign]
985 "env_files"?: #EnvFiles
986 "before"?: #Before
987 "source"?: #Source
988 "gomod"?: #GoMod
989 "announce"?: #Announce
990 "sboms"?: [...#SBOM]
991 "chocolateys"?: [...#Chocolatey]
992 "git"?: #Git
993 "report_sizes"?: bool
994 "metadata"?: #ProjectMetadata
995 "makeselfs"?: [...#Makeself]
996 "universal_binaries"?: [...#UniversalBinary]
997 "upx"?: [...#UPX]
998 "mcp"?: #MCP
999 "force_token"?: "github" | "gitlab" | "gitea" | ""
1000 "github_urls"?: #GitHubURLs
1001 "gitlab_urls"?: #GitLabURLs
1002 "gitea_urls"?: #GiteaURLs
1003 "brews"?: [...#Homebrew]
1004 "dockers"?: [...#Docker]
1005 "docker_manifests"?: [...#DockerManifest]
1006 })
1007
1008 #ProjectMetadata: close({
1009 "mod_timestamp"?: string
1010 })
1011
1012 #Publisher: close({
1013 "name"?: string
1014 "ids"?: [...string]
1015 "checksum"?: bool
1016 "signature"?: bool
1017 "meta"?: bool
1018 "dir"?: string
1019 "cmd"?: string
1020 "env"?: [...string]
1021 "extra_files"?: [...#ExtraFile]
1022 "disable"?: bool | string
1023 })
1024
1025 #PullRequest: close({
1026 "enabled"?: bool
1027 "base"?: #PullRequestBase
1028 "draft"?: bool
1029 })
1030
1031 #PullRequestBase: matchN(1, [string, _#defs."/$defs/PullRequestBase/oneOf/1"])
1032
1033 #Reddit: close({
1034 "enabled"?: bool | string
1035 "application_id"?: string
1036 "username"?: string
1037 "title_template"?: string
1038 "url_template"?: string
1039 "sub"?: string
1040 })
1041
1042 #Release: close({
1043 "github"?: #Repo
1044 "gitlab"?: #Repo
1045 "gitea"?: #Repo
1046 "draft"?: bool
1047 "replace_existing_draft"?: bool
1048 "use_existing_draft"?: bool
1049 "target_commitish"?: string
1050 "disable"?: bool | string
1051 "skip_upload"?: bool | string
1052 "prerelease"?: string
1053 "make_latest"?: bool | string
1054 "name_template"?: string
1055 "ids"?: [...string]
1056 "extra_files"?: [...#ExtraFile]
1057 "discussion_category_name"?: string
1058 "header"?: string
1059 "footer"?: string
1060 "mode"?: "keep-existing" | "append" | "prepend" | "replace"
1061 "replace_existing_artifacts"?: bool
1062 "include_meta"?: bool
1063 })
1064
1065 #Repo: close({
1066 "owner"?: string
1067 "name"?: string
1068 })
1069
1070 #RepoRef: close({
1071 "owner"?: string
1072 "name"?: string
1073 "token"?: string
1074 "branch"?: string
1075 "git"?: #GitRepoRef
1076 "pull_request"?: #PullRequest
1077 })
1078
1079 #Retry: close({
1080 "attempts"?: int
1081 "delay"?: int
1082 "max_delay"?: int
1083 })
1084
1085 #SBOM: close({
1086 "id"?: string
1087 "cmd"?: string
1088 "env"?: [...string]
1089 "args"?: [...string]
1090 "documents"?: [...string]
1091 "artifacts"?: "source" | "package" | "archive" | "binary" | "any" | "none"
1092 "ids"?: [...string]
1093 "disable"?: bool | string
1094 })
1095
1096 #SMTP: close({
1097 "enabled"?: bool | string
1098 "host"?: string
1099 "port"?: int
1100 "username"?: string
1101 "from"?: string
1102 "to"?: [...string]
1103 "subject_template"?: string
1104 "body_template"?: string
1105 "insecure_skip_verify"?: bool
1106 })
1107
1108 #SRPM: close({
1109 "summary"?: string
1110 "group"?: string
1111 "compression"?: string
1112 "signature"?: #NFPMRPMSignature
1113 "scripts"?: #NFPMRPMScripts
1114 "prefixes"?: [...string]
1115 "packager"?: string
1116 "buildhost"?: string
1117 "enabled"?: bool
1118 "package_name"?: string
1119 "epoch"?: string
1120 "import_path"?: string
1121 "section"?: string
1122 "maintainer"?: string
1123 "file_name_template"?: string
1124 "spec_file"?: string
1125 "license"?: string
1126 "license_file_name"?: string
1127 "vendor"?: string
1128 "url"?: string
1129 "description"?: string
1130 "bins"?: {
1131 [string]: string
1132 }
1133 "docs"?: [...string]
1134 "contents"?: [...#NFPMContent]
1135 })
1136
1137 #Scoop: close({
1138 "name"?: string
1139 "ids"?: [...string]
1140 "repository"?: #RepoRef
1141 "directory"?: string
1142 "commit_author"?: #CommitAuthor
1143 "commit_msg_template"?: string
1144 "homepage"?: string
1145 "description"?: string
1146 "license"?: string
1147 "url_template"?: string
1148 "persist"?: [...string]
1149 "skip_upload"?: bool | string
1150 "pre_install"?: [...string]
1151 "post_install"?: [...string]
1152 "depends"?: [...string]
1153 "shortcuts"?: [...[...string]]
1154 "goamd64"?: string
1155 })
1156
1157 #Sign: close({
1158 "id"?: string
1159 "cmd"?: string
1160 "args"?: [...string]
1161 "signature"?: string
1162 "artifacts"?: "all" | "manifests" | "images" | "checksum" | "source" | "package" | "archive" | "binary" | "sbom"
1163 "ids"?: [...string]
1164 "stdin"?: string
1165 "stdin_file"?: string
1166 "env"?: [...string]
1167 "certificate"?: string
1168 "output"?: bool | string
1169 })
1170
1171 #Slack: close({
1172 "enabled"?: bool | string
1173 "message_template"?: string
1174 "channel"?: string
1175 "username"?: string
1176 "icon_emoji"?: string
1177 "icon_url"?: string
1178 "blocks"?: [...#SlackBlock]
1179 "attachments"?: [...#SlackAttachment]
1180 })
1181
1182 #SlackAttachment: close({
1183 "Internal"!: _
1184 })
1185
1186 #SlackBlock: close({
1187 "Internal"!: _
1188 })
1189
1190 #Snapcraft: close({
1191 "name_template"?: string
1192 "publish"?: bool
1193 "id"?: string
1194 "ids"?: [...string]
1195 "name"?: string
1196 "title"?: string
1197 "summary"!: string
1198 "description"!: string
1199 "icon"?: string
1200 "base"?: string
1201 "license"?: string
1202 "grade"?: "stable" | "devel"
1203 "channel_templates"?: [...string]
1204 "confinement"?: "strict" | "classic" | "devmode"
1205 "assumes"?: [...string]
1206 "layout"?: {
1207 [string]: #SnapcraftLayoutMetadata
1208 }
1209 "apps"?: {
1210 [string]: #SnapcraftAppMetadata
1211 }
1212 "hooks"?: {
1213 ...
1214 }
1215 "plugs"?: {
1216 ...
1217 }
1218 "disable"?: bool | string
1219 "extra_files"?: [...#SnapcraftExtraFiles]
1220 "builds"?: [...string]
1221 })
1222
1223 #SnapcraftAppMetadata: close({
1224 "command"!: string
1225 "args"?: string
1226 "adapter"?: string
1227 "after"?: [...string]
1228 "aliases"?: [...string]
1229 "autostart"?: string
1230 "before"?: [...string]
1231 "bus_name"?: string
1232 "command_chain"?: [...string]
1233 "common_id"?: string
1234 "completer"?: string
1235 "daemon"?: string
1236 "desktop"?: string
1237 "environment"?: {
1238 ...
1239 }
1240 "extensions"?: [...string]
1241 "install_mode"?: string
1242 "passthrough"?: {
1243 ...
1244 }
1245 "plugs"?: [...string]
1246 "post_stop_command"?: string
1247 "refresh_mode"?: string
1248 "reload_command"?: string
1249 "restart_condition"?: string
1250 "restart_delay"?: string
1251 "slots"?: [...string]
1252 "sockets"?: {
1253 ...
1254 }
1255 "start_timeout"?: string
1256 "stop_command"?: string
1257 "stop_mode"?: string
1258 "stop_timeout"?: string
1259 "timer"?: string
1260 "watchdog_timeout"?: string
1261 })
1262
1263 #SnapcraftExtraFiles: close({
1264 "source"!: string
1265 "destination"?: string
1266 "mode"?: int
1267 })
1268
1269 #SnapcraftLayoutMetadata: close({
1270 "symlink"?: string
1271 "bind"?: string
1272 "bind_file"?: string
1273 "type"?: string
1274 })
1275
1276 #Snapshot: close({
1277 "name_template"?: string
1278 "version_template"?: string
1279 })
1280
1281 #Source: close({
1282 "name_template"?: string
1283 "format"?: "tar" | "tgz" | "tar.gz" | "zip"
1284 "enabled"?: bool
1285 "prefix_template"?: string
1286 "files"?: [...#File]
1287 })
1288
1289 #StringArray: matchN(1, [string, [...string]])
1290
1291 #Teams: close({
1292 "enabled"?: bool | string
1293 "title_template"?: string
1294 "message_template"?: string
1295 "color"?: string
1296 "icon_url"?: string
1297 })
1298
1299 #Telegram: close({
1300 "enabled"?: bool | string
1301 "message_template"?: string
1302 "chat_id"?: matchN(1, [string, int])
1303 "parse_mode"?: "MarkdownV2" | "HTML"
1304 "message_thread_id"?: matchN(1, [string, int])
1305 })
1306
1307 #Twitter: close({
1308 "enabled"?: bool | string
1309 "message_template"?: string
1310 })
1311
1312 #UPX: close({
1313 "enabled"?: bool | string
1314 "ids"?: [...string]
1315 "goos"?: [...string]
1316 "goarch"?: [...string]
1317 "goarm"?: [...string]
1318 "goamd64"?: [...string]
1319 "binary"?: string
1320 "compress"?: "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "best" | ""
1321 "lzma"?: bool
1322 "brute"?: bool
1323 })
1324
1325 #UniversalBinary: close({
1326 "id"?: string
1327 "ids"?: [...string]
1328 "name_template"?: string
1329 "replace"?: bool
1330 "hooks"?: #BuildHookConfig
1331 "mod_timestamp"?: string
1332 })
1333
1334 #Upload: close({
1335 "name"?: string
1336 "ids"?: [...string]
1337 "exts"?: [...string]
1338 "target"?: string
1339 "username"?: string
1340 "mode"?: "binary" | "archive"
1341 "method"?: string
1342 "checksum_header"?: string
1343 "client_x509_cert"?: string
1344 "client_x509_key"?: string
1345 "trusted_certificates"?: string
1346 "checksum"?: bool
1347 "signature"?: bool
1348 "meta"?: bool
1349 "custom_artifact_name"?: bool
1350 "custom_headers"?: {
1351 [string]: string
1352 }
1353 "extra_files"?: [...#ExtraFile]
1354 "extra_files_only"?: bool
1355 "skip"?: bool | string
1356 "password"?: string
1357 })
1358
1359 #Webhook: close({
1360 "enabled"?: bool | string
1361 "skip_tls_verify"?: bool
1362 "message_template"?: string
1363 "endpoint_url"?: string
1364 "headers"?: {
1365 [string]: string
1366 }
1367 "content_type"?: string
1368 "expected_status_codes"?: [...int]
1369 })
1370
1371 #Winget: close({
1372 "name"?: string
1373 "package_name"?: string
1374 "package_identifier"?: string
1375 "publisher"!: string
1376 "publisher_url"?: string
1377 "publisher_support_url"?: string
1378 "privacy_url"?: string
1379 "copyright"?: string
1380 "copyright_url"?: string
1381 "author"?: string
1382 "path"?: string
1383 "repository"!: #RepoRef
1384 "commit_author"?: #CommitAuthor
1385 "commit_msg_template"?: string
1386 "ids"?: [...string]
1387 "goamd64"?: string
1388 "skip_upload"?: bool | string
1389 "url_template"?: string
1390 "short_description"!: string
1391 "description"?: string
1392 "homepage"?: string
1393 "license"!: string
1394 "license_url"?: string
1395 "release_notes"?: string
1396 "release_notes_url"?: string
1397 "installation_notes"?: string
1398 "tags"?: [...string]
1399 "dependencies"?: [...#WingetDependency]
1400 })
1401
1402 #WingetDependency: close({
1403 "package_identifier"!: string
1404 "minimum_version"?: string
1405 })
1406
1407 _#defs: "/$defs/File/oneOf/1": {
1408 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/file-alias")
1409 close({
1410 "src"?: string
1411 "dst"?: string
1412 "strip_parent"?: bool
1413 "info"?: _#defs."/$defs/File/oneOf/1/$defs/FileInfo"
1414 })
1415 }
1416
1417 _#defs: "/$defs/File/oneOf/1/$defs/FileInfo": close({
1418 "owner"?: string
1419 "group"?: string
1420 "mode"?: int
1421 "mtime"?: string
1422 })
1423
1424 _#defs: "/$defs/FileInfo/$defs/FileInfo": close({
1425 "owner"?: string
1426 "group"?: string
1427 "mode"?: int
1428 "mtime"?: string
1429 })
1430
1431 _#defs: "/$defs/HomebrewDependency/oneOf/1": {
1432 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/homebrew-dependency-alias")
1433 close({
1434 "name"?: string
1435 "type"?: string
1436 "version"?: string
1437 "os"?: "mac" | "linux"
1438 })
1439 }
1440
1441 _#defs: "/$defs/Hooks/oneOf/1/items": {
1442 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/hook")
1443 matchN(1, [string, _#defs."/$defs/Hooks/oneOf/1/items/oneOf/1"])
1444 }
1445
1446 _#defs: "/$defs/Hooks/oneOf/1/items/oneOf/1": {
1447 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/hook-alias")
1448 close({
1449 "dir"?: string
1450 "cmd"?: string
1451 "env"?: [...string]
1452 "output"?: bool
1453 })
1454 }
1455
1456 _#defs: "/$defs/NixDependency/oneOf/1": {
1457 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/nix-dependency-alias")
1458 close({
1459 "name"!: string
1460 "os"?: "linux" | "darwin"
1461 })
1462 }
1463
1464 _#defs: "/$defs/PullRequestBase/oneOf/1": {
1465 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/pull-request-base-alias")
1466 close({
1467 "owner"?: string
1468 "name"?: string
1469 "branch"?: string
1470 })
1471 }
1472}