github.com/pluralsh/plural-cli@v0.9.5/.goreleaser.yaml (about)

     1  # This is an example .goreleaser.yml file with some sensible defaults.
     2  # Make sure to check the documentation at https://goreleaser.com
     3  
     4  # Requires a GoReleaser Pro to run
     5  partial:
     6    by: goos
     7  
     8  before:
     9    hooks:
    10      - go mod tidy
    11  
    12  builds:
    13    - id: plural-cli
    14      targets:
    15        - linux_amd64
    16        - linux_arm64
    17        - windows_amd64
    18        # TODO: Re-enable once fixed
    19        # Ref: https://github.com/golang/go/issues/51019
    20        # - windows_arm64
    21        - darwin_amd64
    22        - darwin_arm64
    23      env:
    24        - CGO_ENABLED=0
    25      ldflags:
    26        - -s
    27        - -w
    28        - -X "github.com/pluralsh/plural-cli/cmd/plural.Version={{.Version}}"
    29        - -X "github.com/pluralsh/plural-cli/cmd/plural.Commit={{.Commit}}"
    30        - -X "github.com/pluralsh/plural-cli/cmd/plural.Date={{.Date}}"
    31        - -X "github.com/pluralsh/plural-cli/pkg/scm.GitlabClientSecret={{.Env.GITLAB_CLIENT_SECRET}}"
    32      binary: plural
    33      # Do not embed UI into linux/arm64 and windows/arm64 binaries
    34      overrides:
    35        - goos: linux
    36          goarch: arm64
    37          tags: [ linux ]
    38          env:
    39            - CGO_ENABLED=0
    40        - goos: windows
    41          goarch: arm64
    42          tags: [ windows ]
    43          env:
    44            - CGO_ENABLED=0
    45    # Build CLI binary without embedded UI for linux.
    46  #  - id: plural-cli-console
    47  #    targets:
    48  #      - linux_amd64
    49  #      - linux_arm64
    50  #    ldflags:
    51  #      - -s
    52  #      - -w
    53  #      - -X "github.com/pluralsh/plural-cli/cmd/plural.Version={{.Version}}"
    54  #      - -X "github.com/pluralsh/plural-cli/cmd/plural.Commit={{.Commit}}"
    55  #      - -X "github.com/pluralsh/plural-cli/cmd/plural.Date={{.Date}}"
    56  #      - -X "github.com/pluralsh/plural-cli/pkg/scm.GitlabClientSecret={{.Env.GITLAB_CLIENT_SECRET}}"
    57  #    tags: [ linux ]
    58  #    env:
    59  #      - CGO_ENABLED=0
    60  #    binary: plural
    61  
    62  archives:
    63    - id: plural-cli
    64      builds: [ plural-cli ]
    65      name_template: >-
    66        {{ .ProjectName }}_{{ .Version }}_
    67        {{- title .Os }}_
    68        {{- if eq .Arch "386" }}i386
    69        {{- else }}{{ .Arch }}{{ end }}
    70  #  - id: plural-cli-console
    71  #    builds: [ plural-cli-console ]
    72  #    name_template: >-
    73  #      {{ .ProjectName }}_console_{{ .Version }}_
    74  #      {{- title .Os }}_
    75  #      {{- if eq .Arch "386" }}i386
    76  #      {{- else }}{{ .Arch }}{{ end }}
    77  
    78  checksum:
    79    name_template: 'checksums.txt'
    80  snapshot:
    81    name_template: "{{ incpatch .Version }}-next"
    82  changelog:
    83    sort: asc
    84    use: github-native
    85    filters:
    86      exclude:
    87        - '^docs:'
    88        - '^test:'
    89  
    90  release:
    91    name_template: "{{.ProjectName}}-v{{.Version}}"
    92    header: |
    93      ## Plural CLI release ({{ .Date }})
    94      Welcome to this new release of the Plural CLI!
    95    footer: |
    96      ## Thanks!
    97      We'd like to thank all contributors for helping with improving our CLI!
    98  
    99  git:
   100    # What should be used to sort tags when gathering the current and previous
   101    # tags if there are more than one tag in the same commit.
   102    #
   103    # Default: '-version:refname'
   104    tag_sort: -version:creatordate
   105  
   106  brews:
   107    - name: plural
   108      ids: [ plural-cli ]
   109      repository:
   110        owner: pluralsh
   111        name: homebrew-plural
   112  
   113        # Optionally a branch can be provided.
   114        # Defaults to the default repository branch.
   115        branch: main
   116  
   117        # Optionally a token can be provided, if it differs from the token provided to GoReleaser
   118        token: "{{ .Env.HOMEBREW_TAP_GITHUB_TOKEN }}"
   119  
   120      # Template for the url which is determined by the given Token (github, gitlab or gitea)
   121      #
   122      # Default depends on the client.
   123      url_template: "https://github.com/pluralsh/plural-cli/releases/download/{{ .Tag }}/{{ .ArtifactName }}"
   124  
   125      # Allows you to set a custom download strategy. Note that you'll need
   126      # to implement the strategy and add it to your tap repository.
   127      # Example: https://docs.brew.sh/Formula-Cookbook#specifying-the-download-strategy-explicitly
   128      # Default is empty.
   129      download_strategy: CurlDownloadStrategy
   130  
   131      # Git author used to commit to the repository.
   132      # Defaults are shown.
   133      commit_author:
   134        name: plural-bot
   135        email: gh-bot@plural.sh
   136  
   137      # The project name and current git tag are used in the format string.
   138      commit_msg_template: "Brew formula update for {{ .ProjectName }} version {{ .Tag }}"
   139  
   140      # Folder inside the repository to put the formula.
   141      # Default is the root folder.
   142      folder: Formula
   143  
   144      # Your app's homepage.
   145      # Default is empty.
   146      homepage: "https://docs.plural.sh"
   147  
   148      # Template of your app's description.
   149      # Default is empty.
   150      description: "CLI for interacting with the plural platform"
   151  
   152      # SPDX identifier of your app's license.
   153      # Default is empty.
   154      license: "MIT"
   155  
   156      # Setting this will prevent goreleaser to actually try to commit the updated
   157      # formula - instead, the formula file will be stored on the dist folder only,
   158      # leaving the responsibility of publishing it to the user.
   159      # If set to auto, the release will not be uploaded to the homebrew tap
   160      # in case there is an indicator for prerelease in the tag e.g. v1.0.0-rc1
   161      # Default is false.
   162      skip_upload: "auto"
   163  
   164      # Custom block for brew.
   165      # Can be used to specify alternate downloads for devel or head releases.
   166      # Default is empty.
   167      custom_block: |
   168        head "https://github.com/pluralsh/plural-cli.git"
   169  
   170      test: |
   171        system "#{bin}/plural", "--help"
   172  
   173      # # Packages your package depends on.
   174      # dependencies:
   175      #   - name: helm
   176      #     type: recommended
   177      #   - name: kubectl
   178      #     type: recommended
   179      #   - name: terraform
   180      #     type: recommended