cue.dev/x/goreleaser@v0.3.0

schema.cue raw

   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}