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" | "node" | "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 "flags"?: [...string]
344 "disable"?: bool | string
345 "sbom"?: bool | string
346 "hooks"?: #BuildHookConfig
347 "retry"?: #Retry
348 })
349
350 #EnvFiles: close({
351 "github_token"?: string
352 "gitlab_token"?: string
353 "gitea_token"?: string
354 })
355
356 #ExtraFile: close({
357 "glob"?: string
358 "name_template"?: string
359 })
360
361 #File: matchN(1, [string, _#defs."/$defs/File/oneOf/1"])
362
363 #FileInfo: {
364 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/file-info")
365 _#defs."/$defs/FileInfo/$defs/FileInfo"
366 }
367
368 #Filters: close({
369 "include"?: [...string]
370 "exclude"?: [...string]
371 })
372
373 #FlagArray: matchN(1, [string, [...string]])
374
375 #Flatpak: close({
376 "id"?: string
377 "ids"?: [...string]
378 "name_template"?: string
379 "app_id"!: string
380 "runtime"!: string
381 "runtime_version"!: string
382 "sdk"!: string
383 "command"?: string
384 "finish_args"?: [...string]
385 "disable"?: bool | string
386 })
387
388 #FormatOverride: close({
389 "goos"?: string
390 "formats"?: #StringArray
391 "format"?: "tar" | "tgz" | "tar.gz" | "zip" | "gz" | "tar.xz" | "txz" | "binary" | "none"
392 })
393
394 #Git: close({
395 "tag_sort"?: "-version:refname" | "-version:creatordate"
396 "prerelease_suffix"?: string
397 "ignore_tags"?: [...string]
398 })
399
400 #GitHubURLs: close({
401 "api"?: string
402 "upload"?: string
403 "download"?: string
404 "skip_tls_verify"?: bool
405 })
406
407 #GitLabURLs: close({
408 "api"?: string
409 "download"?: string
410 "skip_tls_verify"?: bool
411 "use_package_registry"?: bool
412 "use_job_token"?: bool
413 })
414
415 #GitRepoRef: close({
416 "url"?: string
417 "ssh_command"?: string
418 "private_key"?: string
419 })
420
421 #GiteaURLs: close({
422 "api"?: string
423 "download"?: string
424 "skip_tls_verify"?: bool
425 })
426
427 #GoMod: close({
428 "proxy"?: bool
429 "env"?: [...string]
430 "gobinary"?: string
431 "mod"?: string
432 "dir"?: string
433 })
434
435 #Homebrew: close({
436 "name"?: string
437 "repository"?: #RepoRef
438 "commit_author"?: #CommitAuthor
439 "commit_msg_template"?: string
440 "directory"?: string
441 "caveats"?: string
442 "install"?: string
443 "extra_install"?: string
444 "post_install"?: string
445 "dependencies"?: [...#HomebrewDependency]
446 "test"?: string
447 "conflicts"?: [...string]
448 "description"?: string
449 "homepage"?: string
450 "license"?: string
451 "skip_upload"?: bool | string
452 "download_strategy"?: string
453 "url_template"?: string
454 "url_headers"?: [...string]
455 "custom_require"?: string
456 "custom_block"?: string
457 "ids"?: [...string]
458 "goarm"?: matchN(1, [string, int])
459 "goamd64"?: string
460 "service"?: string
461 })
462
463 #HomebrewCask: close({
464 "name"?: string
465 "repository"?: #RepoRef
466 "commit_author"?: #CommitAuthor
467 "commit_msg_template"?: string
468 "directory"?: string
469 "caveats"?: string
470 "description"?: string
471 "homepage"?: string
472 "skip_upload"?: bool | string
473 "custom_block"?: string
474 "ids"?: [...string]
475 "service"?: string
476 "binaries"?: [...string]
477 "manpages"?: [...string]
478 "url"?: #HomebrewCaskURL
479 "completions"?: #HomebrewCaskCompletions
480 "dependencies"?: [...#HomebrewCaskDependency]
481 "conflicts"?: [...#HomebrewCaskConflict]
482 "hooks"?: #HomebrewCaskHooks
483 "uninstall"?: #HomebrewCaskUninstall
484 "zap"?: #HomebrewCaskUninstall
485 "generate_completions_from_executable"?: #HomebrewCaskGeneratedCompletions
486 "license"?: string
487 "manpage"?: string
488 "binary"?: string
489 })
490
491 #HomebrewCaskCompletions: close({
492 "bash"?: string
493 "zsh"?: string
494 "fish"?: string
495 })
496
497 #HomebrewCaskConflict: close({
498 "cask"?: string
499 "formula"?: string
500 })
501
502 #HomebrewCaskDependency: close({
503 "cask"?: string
504 "formula"?: string
505 })
506
507 #HomebrewCaskGeneratedCompletions: close({
508 "executable"?: string
509 "args"?: [...string]
510 "base_name"?: string
511 "shell_parameter_format"?: string
512 "shells"?: [...string]
513 })
514
515 #HomebrewCaskHook: close({
516 "install"?: string
517 "uninstall"?: string
518 })
519
520 #HomebrewCaskHooks: close({
521 "pre"?: #HomebrewCaskHook
522 "post"?: #HomebrewCaskHook
523 })
524
525 #HomebrewCaskURL: close({
526 "template"?: string
527 "verified"?: string
528 "using"?: string
529 "cookies"?: {
530 [string]: string
531 }
532 "referer"?: string
533 "headers"?: [...string]
534 "user_agent"?: string
535 "data"?: {
536 [string]: string
537 }
538 })
539
540 #HomebrewCaskUninstall: close({
541 "launchctl"?: [...string]
542 "quit"?: [...string]
543 "login_item"?: [...string]
544 "delete"?: [...string]
545 "trash"?: [...string]
546 })
547
548 #HomebrewDependency: matchN(1, [string, _#defs."/$defs/HomebrewDependency/oneOf/1"])
549
550 #Hooks: matchN(1, [string, [..._#defs."/$defs/Hooks/oneOf/1/items"]])
551
552 #IgnoredBuild: close({
553 "goos"?: string
554 "goarch"?: string
555 "goamd64"?: string
556 "go386"?: string
557 "goarm"?: matchN(1, [string, int])
558 "goarm64"?: string
559 "gomips"?: string
560 "goppc64"?: string
561 "goriscv64"?: string
562 })
563
564 #Ko: close({
565 "id"?: string
566 "build"?: string
567 "main"?: string
568 "working_dir"?: string
569 "base_image"?: string
570 "labels"?: {
571 [string]: string
572 }
573 "annotations"?: {
574 [string]: string
575 }
576 "user"?: string
577 "repositories"?: [...string]
578 "platforms"?: [...string]
579 "tags"?: [...string]
580 "creation_time"?: string
581 "ko_data_creation_time"?: string
582 "sbom"?: "spdx" | "none"
583 "sbom_directory"?: string
584 "ldflags"?: [...string]
585 "flags"?: [...string]
586 "env"?: [...string]
587 "bare"?: bool
588 "preserve_import_paths"?: bool
589 "base_import_paths"?: bool
590 "local_domain"?: string
591 "disable"?: bool | string
592 "repository"?: string
593 })
594
595 #Krew: close({
596 "ids"?: [...string]
597 "name"?: string
598 "repository"?: #RepoRef
599 "commit_author"?: #CommitAuthor
600 "commit_msg_template"?: string
601 "caveats"?: string
602 "short_description"?: string
603 "description"?: string
604 "homepage"?: string
605 "url_template"?: string
606 "goarm"?: matchN(1, [string, int])
607 "goamd64"?: string
608 "skip_upload"?: bool | string
609 })
610
611 #Libdirs: close({
612 "header"?: string
613 "carchive"?: string
614 "cshared"?: string
615 })
616
617 #LinkedIn: close({
618 "enabled"?: bool | string
619 "message_template"?: string
620 })
621
622 #MCP: close({
623 "github"?: #MCPDetails
624 "name"!: string
625 "title"!: string
626 "description"?: string
627 "homepage"?: string
628 "packages"?: [...#MCPPackage]
629 "transports"?: [...#MCPTransport]
630 "disable"?: bool | string
631 "repository"?: #MCPRepository
632 "auth"!: #MCPAuth
633 })
634
635 #MCPAuth: close({
636 "type"!: "none" | "github" | "github-oidc"
637 "token"?: string
638 })
639
640 #MCPDetails: close({
641 "name"!: string
642 "title"!: string
643 "description"?: string
644 "homepage"?: string
645 "packages"?: [...#MCPPackage]
646 "transports"?: [...#MCPTransport]
647 "disable"?: bool | string
648 "repository"?: #MCPRepository
649 "auth"!: #MCPAuth
650 })
651
652 #MCPPackage: close({
653 "registry_type"!: "oci" | "npm" | "pypi" | "nuget" | "mcpb"
654 "identifier"!: string
655 "transport"!: #MCPTransport
656 })
657
658 #MCPRepository: close({
659 "url"?: string
660 "source"?: "github" | "gitlab" | "gitea"
661 "id"?: string
662 "subfolder"?: string
663 })
664
665 #MCPTransport: close({
666 "type"?: "stdio" | "streamable-http" | "sse"
667 })
668
669 #MacOSNotarize: close({
670 "issuer_id"!: string
671 "key"!: string
672 "key_id"!: string
673 "timeout"?: string
674 "wait"?: bool
675 })
676
677 #MacOSSign: close({
678 "certificate"!: string
679 "password"!: string
680 "entitlements"?: string
681 })
682
683 #MacOSSignNotarize: close({
684 "ids"?: [...string]
685 "enabled"?: bool | string
686 "sign"!: #MacOSSign
687 "notarize"!: #MacOSNotarize
688 })
689
690 #Makeself: close({
691 "id"?: string
692 "filename"?: string
693 "script"!: string
694 "compression"?: "gzip" | "bzip2" | "xz" | "lzo" | "compress" | "none"
695 "extra_args"?: [...string]
696 "files"?: [...#MakeselfFile]
697 "disable"?: bool | string
698 "ids"?: [...string]
699 "goos"?: [...string]
700 "goarch"?: [...string]
701 "name"?: string
702 "description"?: string
703 "maintainer"?: string
704 "keywords"?: [...string]
705 "homepage"?: string
706 "license"?: string
707 })
708
709 #MakeselfFile: close({
710 "src"?: string
711 "dst"?: string
712 "strip_parent"?: bool
713 })
714
715 #Mastodon: close({
716 "enabled"?: bool | string
717 "message_template"?: string
718 "server"!: string
719 })
720
721 #Mattermost: close({
722 "enabled"?: bool | string
723 "message_template"?: string
724 "title_template"?: string
725 "color"?: string
726 "channel"?: string
727 "username"?: string
728 "icon_emoji"?: string
729 "icon_url"?: string
730 })
731
732 #Milestone: close({
733 "repo"?: #Repo
734 "close"?: bool
735 "fail_on_error"?: bool
736 "name_template"?: string
737 })
738
739 #NFPM: close({
740 "file_name_template"?: string
741 "package_name"?: string
742 "epoch"?: string
743 "release"?: string
744 "prerelease"?: string
745 "version_metadata"?: string
746 "dependencies"?: [...string]
747 "recommends"?: [...string]
748 "suggests"?: [...string]
749 "conflicts"?: [...string]
750 "umask"?: matchN(1, [string, int])
751 "replaces"?: [...string]
752 "provides"?: [...string]
753 "contents"?: [...#NFPMContent]
754 "scripts"?: #NFPMScripts
755 "rpm"?: #NFPMRPM
756 "deb"?: #NFPMDeb
757 "apk"?: #NFPMAPK
758 "archlinux"?: #NFPMArchLinux
759 "ipk"?: #NFPMIPK
760 "msix"?: #NFPMMSIX
761 "overrides"?: {
762 [string]: #NFPMOverridables
763 }
764 "id"?: string
765 "ids"?: [...string]
766 "formats"?: [..."apk" | "deb" | "rpm" | "termux.deb" | "archlinux" | "ipk" | "msix"]
767 "section"?: string
768 "priority"?: string
769 "vendor"?: string
770 "homepage"?: string
771 "maintainer"?: string
772 "description"?: string
773 "license"?: string
774 "bindir"?: string
775 "libdirs"?: #Libdirs
776 "changelog"?: string
777 "mtime"?: string
778 "meta"?: bool
779 "goamd64"?: [...string]
780 "builds"?: [...string]
781 })
782
783 #NFPMAPK: close({
784 "scripts"?: #NFPMAPKScripts
785 "signature"?: #NFPMAPKSignature
786 })
787
788 #NFPMAPKScripts: close({
789 "preupgrade"?: string
790 "postupgrade"?: string
791 })
792
793 #NFPMAPKSignature: close({
794 "key_file"?: string
795 "key_name"?: string
796 })
797
798 #NFPMArchLinux: close({
799 "pkgbase"?: string
800 "packager"?: string
801 "scripts"?: #NFPMArchLinuxScripts
802 })
803
804 #NFPMArchLinuxScripts: close({
805 "preupgrade"?: string
806 "postupgrade"?: string
807 })
808
809 #NFPMContent: close({
810 "src"?: string
811 "dst"!: string
812 "type"?: "symlink" | "ghost" | "config" | "config|noreplace" | "dir" | "tree" | ""
813 "packager"?: string
814 "file_info"?: #FileInfo
815 "expand"?: bool
816 })
817
818 #NFPMDeb: close({
819 "scripts"?: #NFPMDebScripts
820 "triggers"?: #NFPMDebTriggers
821 "breaks"?: [...string]
822 "signature"?: #NFPMDebSignature
823 "lintian_overrides"?: [...string]
824 "compression"?: "gzip" | "xz" | "zstd" | "none"
825 "fields"?: {
826 [string]: string
827 }
828 "predepends"?: [...string]
829 })
830
831 #NFPMDebScripts: close({
832 "rules"?: string
833 "templates"?: string
834 "config"?: string
835 })
836
837 #NFPMDebSignature: close({
838 "key_file"?: string
839 "type"?: string
840 })
841
842 #NFPMDebTriggers: close({
843 "interest"?: [...string]
844 "interest_await"?: [...string]
845 "interest_noawait"?: [...string]
846 "activate"?: [...string]
847 "activate_await"?: [...string]
848 "activate_noawait"?: [...string]
849 })
850
851 #NFPMIPK: close({
852 "abi_version"?: string
853 "alternatives"?: [...#NFPMIPKAlternative]
854 "auto_installed"?: bool
855 "essential"?: bool
856 "predepends"?: [...string]
857 "tags"?: [...string]
858 "fields"?: {
859 [string]: string
860 }
861 })
862
863 #NFPMIPKAlternative: close({
864 "priority"?: int
865 "target"?: string
866 "link_name"?: string
867 })
868
869 #NFPMMSIX: close({
870 "arch"?: string
871 "publisher"?: string
872 "identity"?: #NFPMMSIXIdentity
873 "properties"?: #NFPMMSIXProperties
874 "applications"?: [...#NFPMMSIXApplication]
875 "dependencies"?: #NFPMMSIXDependencies
876 "capabilities"?: #NFPMMSIXCapabilities
877 "signature"?: #NFPMMSIXSignature
878 })
879
880 #NFPMMSIXApplication: close({
881 "id"!: string
882 "executable"!: string
883 "entry_point"?: string
884 "visual_elements"?: #NFPMMSIXVisualElements
885 })
886
887 #NFPMMSIXCapabilities: close({
888 "capabilities"?: [...string]
889 "device_capabilities"?: [...string]
890 "restricted"?: [...string]
891 })
892
893 #NFPMMSIXDependencies: close({
894 "target_device_families"?: [...#NFPMMSIXTargetDeviceFamily]
895 })
896
897 #NFPMMSIXIdentity: close({
898 "resource_id"?: string
899 })
900
901 #NFPMMSIXProperties: close({
902 "display_name"?: string
903 "publisher_display_name"?: string
904 "logo"?: string
905 })
906
907 #NFPMMSIXSignature: close({
908 "pfx_file"?: string
909 })
910
911 #NFPMMSIXTargetDeviceFamily: close({
912 "name"!: string
913 "min_version"!: string
914 "max_version_tested"!: string
915 })
916
917 #NFPMMSIXVisualElements: close({
918 "display_name"?: string
919 "description"?: string
920 "background_color"?: string
921 "square150x150_logo"?: string
922 "square44x44_logo"?: string
923 })
924
925 #NFPMOverridables: close({
926 "file_name_template"?: string
927 "package_name"?: string
928 "epoch"?: string
929 "release"?: string
930 "prerelease"?: string
931 "version_metadata"?: string
932 "dependencies"?: [...string]
933 "recommends"?: [...string]
934 "suggests"?: [...string]
935 "conflicts"?: [...string]
936 "umask"?: matchN(1, [string, int])
937 "replaces"?: [...string]
938 "provides"?: [...string]
939 "contents"?: [...#NFPMContent]
940 "scripts"?: #NFPMScripts
941 "rpm"?: #NFPMRPM
942 "deb"?: #NFPMDeb
943 "apk"?: #NFPMAPK
944 "archlinux"?: #NFPMArchLinux
945 "ipk"?: #NFPMIPK
946 "msix"?: #NFPMMSIX
947 })
948
949 #NFPMRPM: close({
950 "summary"?: string
951 "group"?: string
952 "compression"?: string
953 "signature"?: #NFPMRPMSignature
954 "scripts"?: #NFPMRPMScripts
955 "prefixes"?: [...string]
956 "packager"?: string
957 "buildhost"?: string
958 })
959
960 #NFPMRPMScripts: close({
961 "pretrans"?: string
962 "posttrans"?: string
963 })
964
965 #NFPMRPMSignature: close({
966 "key_file"?: string
967 })
968
969 #NFPMScripts: close({
970 "preinstall"?: string
971 "postinstall"?: string
972 "preremove"?: string
973 "postremove"?: string
974 })
975
976 #Nix: close({
977 "name"?: string
978 "path"?: string
979 "repository"?: #RepoRef
980 "commit_author"?: #CommitAuthor
981 "commit_msg_template"?: string
982 "ids"?: [...string]
983 "goamd64"?: string
984 "skip_upload"?: bool | string
985 "url_template"?: string
986 "install"?: string
987 "extra_install"?: string
988 "post_install"?: string
989 "description"?: string
990 "homepage"?: string
991 "license"?: string
992 "dependencies"?: [...#NixDependency]
993 "formatter"?: "alejandra" | "nixfmt"
994 "main_program"?: string
995 })
996
997 #NixDependency: matchN(1, [string, _#defs."/$defs/NixDependency/oneOf/1"])
998
999 #Notarize: close({
1000 "macos"!: [...#MacOSSignNotarize]
1001 })
1002
1003 #OpenCollective: close({
1004 "enabled"?: bool | string
1005 "slug"?: string
1006 "title_template"?: string
1007 "message_template"?: string
1008 })
1009
1010 #Project: close({
1011 "version"?: 2 & int
1012 "pro"?: bool
1013 "project_name"?: string
1014 "env"?: [...string]
1015 "release"?: #Release
1016 "milestones"?: [...#Milestone]
1017 "homebrew_casks"?: [...#HomebrewCask]
1018 "nix"?: [...#Nix]
1019 "winget"?: [...#Winget]
1020 "aurs"?: [...#AUR]
1021 "aur_sources"?: [...#AURSource]
1022 "krews"?: [...#Krew]
1023 "kos"?: [...#Ko]
1024 "scoops"?: [...#Scoop]
1025 "builds"?: [...#Build]
1026 "archives"?: [...#Archive]
1027 "nfpms"?: [...#NFPM]
1028 "srpm"?: #SRPM
1029 "snapcrafts"?: [...#Snapcraft]
1030 "flatpak"?: [...#Flatpak]
1031 "snapshot"?: #Snapshot
1032 "checksum"?: #Checksum
1033 "dockers_v2"?: [...#DockerV2]
1034 "docker_digest"?: #DockerDigest
1035 "artifactories"?: [...#Upload]
1036 "uploads"?: [...#Upload]
1037 "blobs"?: [...#Blob]
1038 "publishers"?: [...#Publisher]
1039 "changelog"?: #Changelog
1040 "dist"?: string
1041 "signs"?: [...#Sign]
1042 "notarize"?: #Notarize
1043 "docker_signs"?: [...#Sign]
1044 "binary_signs"?: [...#BinarySign]
1045 "env_files"?: #EnvFiles
1046 "before"?: #Before
1047 "source"?: #Source
1048 "gomod"?: #GoMod
1049 "announce"?: #Announce
1050 "sboms"?: [...#SBOM]
1051 "chocolateys"?: [...#Chocolatey]
1052 "git"?: #Git
1053 "report_sizes"?: bool
1054 "metadata"?: #ProjectMetadata
1055 "makeselfs"?: [...#Makeself]
1056 "universal_binaries"?: [...#UniversalBinary]
1057 "upx"?: [...#UPX]
1058 "mcp"?: #MCP
1059 "retry"?: #Retry
1060 "force_token"?: "github" | "gitlab" | "gitea" | ""
1061 "github_urls"?: #GitHubURLs
1062 "gitlab_urls"?: #GitLabURLs
1063 "gitea_urls"?: #GiteaURLs
1064 "brews"?: [...#Homebrew]
1065 "dockers"?: [...#Docker]
1066 "docker_manifests"?: [...#DockerManifest]
1067 })
1068
1069 #ProjectMetadata: close({
1070 "mod_timestamp"?: string
1071 })
1072
1073 #Publisher: close({
1074 "name"?: string
1075 "ids"?: [...string]
1076 "checksum"?: bool
1077 "signature"?: bool
1078 "meta"?: bool
1079 "dir"?: string
1080 "cmd"?: string
1081 "env"?: [...string]
1082 "extra_files"?: [...#ExtraFile]
1083 "disable"?: bool | string
1084 })
1085
1086 #PullRequest: close({
1087 "enabled"?: bool
1088 "base"?: #PullRequestBase
1089 "draft"?: bool
1090 })
1091
1092 #PullRequestBase: matchN(1, [string, _#defs."/$defs/PullRequestBase/oneOf/1"])
1093
1094 #Reddit: close({
1095 "enabled"?: bool | string
1096 "application_id"?: string
1097 "username"?: string
1098 "title_template"?: string
1099 "url_template"?: string
1100 "sub"?: string
1101 })
1102
1103 #Release: close({
1104 "github"?: #Repo
1105 "gitlab"?: #Repo
1106 "gitea"?: #Repo
1107 "draft"?: bool
1108 "replace_existing_draft"?: bool
1109 "use_existing_draft"?: bool
1110 "target_commitish"?: string
1111 "disable"?: bool | string
1112 "skip_upload"?: bool | string
1113 "prerelease"?: string
1114 "make_latest"?: bool | string
1115 "name_template"?: string
1116 "ids"?: [...string]
1117 "extra_files"?: [...#ExtraFile]
1118 "discussion_category_name"?: string
1119 "header"?: string
1120 "footer"?: string
1121 "mode"?: "keep-existing" | "append" | "prepend" | "replace"
1122 "replace_existing_artifacts"?: bool
1123 "include_meta"?: bool
1124 })
1125
1126 #Repo: close({
1127 "owner"?: string
1128 "name"?: string
1129 "token"?: string
1130 })
1131
1132 #RepoRef: close({
1133 "owner"?: string
1134 "name"?: string
1135 "token"?: string
1136 "branch"?: string
1137 "git"?: #GitRepoRef
1138 "pull_request"?: #PullRequest
1139 })
1140
1141 #Retry: close({
1142 "attempts"?: int
1143 "delay"?: int
1144 "max_delay"?: int
1145 })
1146
1147 #SBOM: close({
1148 "id"?: string
1149 "cmd"?: string
1150 "env"?: [...string]
1151 "args"?: [...string]
1152 "documents"?: [...string]
1153 "artifacts"?: "source" | "package" | "archive" | "binary" | "any" | "none"
1154 "ids"?: [...string]
1155 "disable"?: bool | string
1156 })
1157
1158 #SMTP: close({
1159 "enabled"?: bool | string
1160 "host"?: string
1161 "port"?: int
1162 "username"?: string
1163 "from"?: string
1164 "to"?: [...string]
1165 "subject_template"?: string
1166 "body_template"?: string
1167 "insecure_skip_verify"?: bool
1168 })
1169
1170 #SRPM: close({
1171 "summary"?: string
1172 "group"?: string
1173 "compression"?: string
1174 "signature"?: #NFPMRPMSignature
1175 "scripts"?: #NFPMRPMScripts
1176 "prefixes"?: [...string]
1177 "packager"?: string
1178 "buildhost"?: string
1179 "enabled"?: bool
1180 "package_name"?: string
1181 "epoch"?: string
1182 "import_path"?: string
1183 "section"?: string
1184 "maintainer"?: string
1185 "file_name_template"?: string
1186 "spec_file"?: string
1187 "license"?: string
1188 "license_file_name"?: string
1189 "vendor"?: string
1190 "url"?: string
1191 "description"?: string
1192 "bins"?: {
1193 [string]: string
1194 }
1195 "docs"?: [...string]
1196 "contents"?: [...#NFPMContent]
1197 })
1198
1199 #Scoop: close({
1200 "name"?: string
1201 "ids"?: [...string]
1202 "repository"?: #RepoRef
1203 "directory"?: string
1204 "commit_author"?: #CommitAuthor
1205 "commit_msg_template"?: string
1206 "homepage"?: string
1207 "description"?: string
1208 "license"?: string
1209 "url_template"?: string
1210 "persist"?: [...string]
1211 "skip_upload"?: bool | string
1212 "pre_install"?: [...string]
1213 "post_install"?: [...string]
1214 "depends"?: [...string]
1215 "shortcuts"?: [...[...string]]
1216 "goamd64"?: string
1217 })
1218
1219 #Sign: close({
1220 "id"?: string
1221 "cmd"?: string
1222 "args"?: [...string]
1223 "signature"?: string
1224 "artifacts"?: "all" | "manifests" | "images" | "checksum" | "source" | "package" | "archive" | "binary" | "sbom"
1225 "ids"?: [...string]
1226 "stdin"?: string
1227 "stdin_file"?: string
1228 "env"?: [...string]
1229 "certificate"?: string
1230 "output"?: bool | string
1231 })
1232
1233 #Slack: close({
1234 "enabled"?: bool | string
1235 "message_template"?: string
1236 "channel"?: string
1237 "username"?: string
1238 "icon_emoji"?: string
1239 "icon_url"?: string
1240 "blocks"?: [...#SlackBlock]
1241 "attachments"?: [...#SlackAttachment]
1242 })
1243
1244 #SlackAttachment: close({
1245 "Internal"!: _
1246 })
1247
1248 #SlackBlock: close({
1249 "Internal"!: _
1250 })
1251
1252 #Snapcraft: close({
1253 "name_template"?: string
1254 "publish"?: bool
1255 "id"?: string
1256 "ids"?: [...string]
1257 "name"?: string
1258 "title"?: string
1259 "summary"!: string
1260 "description"!: string
1261 "icon"?: string
1262 "base"?: string
1263 "license"?: string
1264 "grade"?: "stable" | "devel"
1265 "channel_templates"?: [...string]
1266 "confinement"?: "strict" | "classic" | "devmode"
1267 "assumes"?: [...string]
1268 "layout"?: {
1269 [string]: #SnapcraftLayoutMetadata
1270 }
1271 "apps"?: {
1272 [string]: #SnapcraftAppMetadata
1273 }
1274 "hooks"?: {
1275 ...
1276 }
1277 "plugs"?: {
1278 ...
1279 }
1280 "disable"?: bool | string
1281 "extra_files"?: [...#SnapcraftExtraFiles]
1282 "builds"?: [...string]
1283 })
1284
1285 #SnapcraftAppMetadata: close({
1286 "command"!: string
1287 "args"?: string
1288 "adapter"?: string
1289 "after"?: [...string]
1290 "aliases"?: [...string]
1291 "autostart"?: string
1292 "before"?: [...string]
1293 "bus_name"?: string
1294 "command_chain"?: [...string]
1295 "common_id"?: string
1296 "completer"?: string
1297 "daemon"?: string
1298 "desktop"?: string
1299 "environment"?: {
1300 ...
1301 }
1302 "extensions"?: [...string]
1303 "install_mode"?: string
1304 "passthrough"?: {
1305 ...
1306 }
1307 "plugs"?: [...string]
1308 "post_stop_command"?: string
1309 "refresh_mode"?: string
1310 "reload_command"?: string
1311 "restart_condition"?: string
1312 "restart_delay"?: string
1313 "slots"?: [...string]
1314 "sockets"?: {
1315 ...
1316 }
1317 "start_timeout"?: string
1318 "stop_command"?: string
1319 "stop_mode"?: string
1320 "stop_timeout"?: string
1321 "timer"?: string
1322 "watchdog_timeout"?: string
1323 })
1324
1325 #SnapcraftExtraFiles: close({
1326 "source"!: string
1327 "destination"?: string
1328 "mode"?: int
1329 })
1330
1331 #SnapcraftLayoutMetadata: close({
1332 "symlink"?: string
1333 "bind"?: string
1334 "bind_file"?: string
1335 "type"?: string
1336 })
1337
1338 #Snapshot: close({
1339 "name_template"?: string
1340 "version_template"?: string
1341 })
1342
1343 #Source: close({
1344 "name_template"?: string
1345 "format"?: "tar" | "tgz" | "tar.gz" | "zip"
1346 "enabled"?: bool
1347 "prefix_template"?: string
1348 "files"?: [...#File]
1349 })
1350
1351 #StringArray: matchN(1, [string, [...string]])
1352
1353 #Teams: close({
1354 "enabled"?: bool | string
1355 "title_template"?: string
1356 "message_template"?: string
1357 "color"?: string
1358 "icon_url"?: string
1359 })
1360
1361 #Telegram: close({
1362 "enabled"?: bool | string
1363 "message_template"?: string
1364 "chat_id"?: matchN(1, [string, int])
1365 "parse_mode"?: "MarkdownV2" | "HTML"
1366 "message_thread_id"?: matchN(1, [string, int])
1367 })
1368
1369 #Twitter: close({
1370 "enabled"?: bool | string
1371 "message_template"?: string
1372 })
1373
1374 #UPX: close({
1375 "enabled"?: bool | string
1376 "ids"?: [...string]
1377 "goos"?: [...string]
1378 "goarch"?: [...string]
1379 "goarm"?: [...string]
1380 "goamd64"?: [...string]
1381 "binary"?: string
1382 "compress"?: "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "best" | ""
1383 "lzma"?: bool
1384 "brute"?: bool
1385 })
1386
1387 #UniversalBinary: close({
1388 "id"?: string
1389 "ids"?: [...string]
1390 "name_template"?: string
1391 "replace"?: bool
1392 "hooks"?: #BuildHookConfig
1393 "mod_timestamp"?: string
1394 })
1395
1396 #Upload: close({
1397 "name"?: string
1398 "ids"?: [...string]
1399 "exts"?: [...string]
1400 "target"?: string
1401 "username"?: string
1402 "mode"?: "binary" | "archive"
1403 "method"?: string
1404 "checksum_header"?: string
1405 "client_x509_cert"?: string
1406 "client_x509_key"?: string
1407 "trusted_certificates"?: string
1408 "checksum"?: bool
1409 "signature"?: bool
1410 "meta"?: bool
1411 "custom_artifact_name"?: bool
1412 "custom_headers"?: {
1413 [string]: string
1414 }
1415 "extra_files"?: [...#ExtraFile]
1416 "extra_files_only"?: bool
1417 "skip"?: bool | string
1418 "password"?: string
1419 })
1420
1421 #Webhook: close({
1422 "enabled"?: bool | string
1423 "skip_tls_verify"?: bool
1424 "message_template"?: string
1425 "endpoint_url"?: string
1426 "headers"?: {
1427 [string]: string
1428 }
1429 "content_type"?: string
1430 "expected_status_codes"?: [...int]
1431 })
1432
1433 #Winget: close({
1434 "name"?: string
1435 "package_name"?: string
1436 "package_identifier"?: string
1437 "default_locale"?: string
1438 "publisher"!: string
1439 "publisher_url"?: string
1440 "publisher_support_url"?: string
1441 "privacy_url"?: string
1442 "copyright"?: string
1443 "copyright_url"?: string
1444 "author"?: string
1445 "path"?: string
1446 "repository"!: #RepoRef
1447 "commit_author"?: #CommitAuthor
1448 "commit_msg_template"?: string
1449 "ids"?: [...string]
1450 "goamd64"?: string
1451 "skip_upload"?: bool | string
1452 "url_template"?: string
1453 "short_description"!: string
1454 "description"?: string
1455 "homepage"?: string
1456 "license"!: string
1457 "license_url"?: string
1458 "release_notes"?: string
1459 "release_notes_url"?: string
1460 "installation_notes"?: string
1461 "tags"?: [...string]
1462 "dependencies"?: [...#WingetDependency]
1463 })
1464
1465 #WingetDependency: close({
1466 "package_identifier"!: string
1467 "minimum_version"?: string
1468 })
1469
1470 _#defs: "/$defs/File/oneOf/1": {
1471 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/file-alias")
1472 close({
1473 "src"?: string
1474 "dst"?: string
1475 "strip_parent"?: bool
1476 "info"?: _#defs."/$defs/File/oneOf/1/$defs/FileInfo"
1477 })
1478 }
1479
1480 _#defs: "/$defs/File/oneOf/1/$defs/FileInfo": close({
1481 "owner"?: string
1482 "group"?: string
1483 "mode"?: int
1484 "mtime"?: string
1485 })
1486
1487 _#defs: "/$defs/FileInfo/$defs/FileInfo": close({
1488 "owner"?: string
1489 "group"?: string
1490 "mode"?: int
1491 "mtime"?: string
1492 })
1493
1494 _#defs: "/$defs/HomebrewDependency/oneOf/1": {
1495 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/homebrew-dependency-alias")
1496 close({
1497 "name"?: string
1498 "type"?: string
1499 "version"?: string
1500 "os"?: "mac" | "linux"
1501 })
1502 }
1503
1504 _#defs: "/$defs/Hooks/oneOf/1/items": {
1505 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/hook")
1506 matchN(1, [string, _#defs."/$defs/Hooks/oneOf/1/items/oneOf/1"])
1507 }
1508
1509 _#defs: "/$defs/Hooks/oneOf/1/items/oneOf/1": {
1510 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/hook-alias")
1511 close({
1512 "dir"?: string
1513 "cmd"?: string
1514 "env"?: [...string]
1515 "output"?: bool
1516 })
1517 }
1518
1519 _#defs: "/$defs/NixDependency/oneOf/1": {
1520 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/nix-dependency-alias")
1521 close({
1522 "name"!: string
1523 "os"?: "linux" | "darwin"
1524 })
1525 }
1526
1527 _#defs: "/$defs/PullRequestBase/oneOf/1": {
1528 @jsonschema(id="https://github.com/goreleaser/goreleaser/v2/pkg/config/pull-request-base-alias")
1529 close({
1530 "owner"?: string
1531 "name"?: string
1532 "branch"?: string
1533 })
1534 }
1535}