github.com/goreleaser/goreleaser@v1.25.1/www/docs/customization/winget.md (about)

     1  # Winget
     2  
     3  > Since: v1.19
     4  
     5  After releasing to GitHub, GitLab, or Gitea, GoReleaser can generate and publish
     6  a _winget manifest_ and commit to a git repository, and PR it to `winget-pkgs`
     7  if instructed to.
     8  
     9  The `winget` section specifies how the **manifests** should be created:
    10  
    11  ```yaml
    12  # .goreleaser.yaml
    13  winget:
    14    - # Name of the recipe
    15      #
    16      # Default: ProjectName
    17      # Templates: allowed
    18      name: myproject
    19  
    20      # Publisher name.
    21      #
    22      # Templates: allowed
    23      # Required
    24      publisher: Foo Inc
    25  
    26      # Your app's description.
    27      #
    28      # Templates: allowed
    29      # Required
    30      short_description: "Software to create fast and easy drum rolls."
    31  
    32      # License name.
    33      #
    34      # Templates: allowed
    35      # Required
    36      license: "mit"
    37  
    38      # Publisher URL.
    39      #
    40      # Templates: allowed
    41      publisher_url: https://goreleaser.com
    42  
    43      # Publisher support URL.
    44      #
    45      # Templates: allowed
    46      publisher_support_url: "https://github.com/user/repo/issues/new"
    47  
    48      # Package identifier.
    49      #
    50      # Default: Publisher.ProjectName
    51      # Templates: allowed
    52      package_identifier: myproject.myproject
    53  
    54      # IDs of the archives to use.
    55      # Empty means all IDs.
    56      ids:
    57        - foo
    58        - bar
    59  
    60      # Which format to use.
    61      #
    62      # Valid options are:
    63      # - '':        archives or binaries
    64      # - 'msi':     msi installers (requires the MSI pipe configured, Pro only)
    65      # - 'archive': archives (only if format is zip),
    66      # - 'binary':  binaries
    67      #
    68      # Default: ''
    69      # Since: v1.24 (pro)
    70      use: msi
    71  
    72      # GOAMD64 to specify which amd64 version to use if there are multiple
    73      # versions from the build section.
    74      #
    75      # Default: v1
    76      goamd64: v1
    77  
    78      # Product code to be used.
    79      #
    80      # Usually needed when `use: msi`.
    81      #
    82      # Since: v1.24 (pro)
    83      product_code: AAAA-BBB-CCC-DDD-EEEFFF
    84  
    85      # URL which is determined by the given Token (github, gitlab or gitea).
    86      #
    87      # Default depends on the client.
    88      # Templates: allowed
    89      url_template: "https://github.mycompany.com/foo/bar/releases/download/{{ .Tag }}/{{ .ArtifactName }}"
    90  
    91      # Git author used to commit to the repository.
    92      commit_author:
    93        name: goreleaserbot
    94        email: bot@goreleaser.com
    95  
    96      # The project name and current git tag are used in the format string.
    97      #
    98      # Templates: allowed
    99      commit_msg_template: "{{ .PackageIdentifier }}: {{ .Tag }}"
   100  
   101      # Path for the file inside the repository.
   102      #
   103      # Default: manifests/<lowercased first char of publisher>/<publisher>/<version>
   104      path: manifests/g/goreleaser/1.19
   105  
   106      # Your app's homepage.
   107      homepage: "https://example.com/"
   108  
   109      # Your app's long description.
   110      #
   111      # Templates: allowed
   112      description: "Software to create fast and easy drum rolls."
   113  
   114      # License URL.
   115      #
   116      # Templates: allowed
   117      license_url: "https://goreleaser.com/license"
   118  
   119      # Copyright.
   120      #
   121      # Templates: allowed
   122      copyright: "Becker Software LTDA"
   123  
   124      # Copyright URL.
   125      #
   126      # Templates: allowed
   127      copyright_url: "https://goreleaser.com/copyright"
   128  
   129      # Setting this will prevent goreleaser to actually try to commit the updated
   130      # package - instead, it will be stored on the dist directory only,
   131      # leaving the responsibility of publishing it to the user.
   132      #
   133      # If set to auto, the release will not be uploaded to the repository
   134      # in case there is an indicator for prerelease in the tag e.g. v1.0.0-rc1
   135      #
   136      # Templates: allowed
   137      skip_upload: true
   138  
   139      # Release notes.
   140      #
   141      # If you want to use the release notes generated by GoReleaser, use
   142      # `{{.Changelog}}` as the value.
   143      #
   144      # Templates: allowed
   145      release_notes: "{{.Changelog}}"
   146  
   147      # Release notes URL.
   148      #
   149      # Templates: allowed
   150      release_notes_url: "https://foo.bar/changelog/{{.Version}}"
   151  
   152      # Tags.
   153      tags:
   154        - golang
   155        - cli
   156  
   157      # Package dependencies.
   158      #
   159      # Since: v1.21
   160      # Templates: allowed
   161      dependencies:
   162        - package_identifier: Foo.Bar
   163          minimum_version: 1.2.3
   164  
   165  
   166  {% include-markdown "../includes/repository.md" comments=false %}
   167  ```
   168  
   169  !!! tip
   170  
   171      Learn more about the [name template engine](/customization/templates/).
   172  
   173  {% include-markdown "../includes/prs.md" comments=false %}