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