From a21d2fb5361c1c3d5229f895222d7dce15eab34a Mon Sep 17 00:00:00 2001 From: Craig Johnston Date: Sun, 18 Oct 2020 22:53:25 -0700 Subject: [PATCH] updated goreleaser config --- .goreleaser.yml | 267 ++++++++++++++++++------------------------------ 1 file changed, 98 insertions(+), 169 deletions(-) diff --git a/.goreleaser.yml b/.goreleaser.yml index 53bf0a7d..74599225 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -1,179 +1,108 @@ -# Build customization -build: - # Path to main.go file. - # Default is `main.go` - main: ./cmd/kubefwd/kubefwd.go - binary: kubefwd - - env: +env: - GO111MODULE=on - GOPROXY=https://gocenter.io - - CGO_ENABLED=0 - - # GOOS list to build in. - # For more info refer to https://golang.org/doc/install/source#environment - # Defaults are darwin and linux - goos: - - linux - - darwin - - arm - - windows +before: + hooks: + - go mod download + +builds: + - id: kubefwd + main: ./cmd/kubefwd/kubefwd.go + binary: kubefwd + goos: + - linux + - darwin + - windows + goarch: + - 386 + - amd64 + - arm + - arm64 + mod_timestamp: '{{ .CommitTimestamp }}' + flags: + - -trimpath + ldflags: -s -w -X main.Version={{.Version}} + +checksum: + name_template: '{{ .ProjectName }}_checksums.txt' + +changelog: + sort: asc + filters: + exclude: + - '^docs:' + - '^test:' + - Merge pull request + - Merge branch + - go mod tidy - # GOARCH to build in. - # For more info refer to https://golang.org/doc/install/source#environment - # Defaults are 386 and amd64 - goarch: - - amd64 - - arm - - ldflags: -s -w -X main.Version={{.Version}} +dockers: + - + goos: linux + goarch: amd64 + goarm: '' + binaries: + - kubefwd + dockerfile: Dockerfile + image_templates: + - "txn2/kubefwd:latest" + - "txn2/kubefwd:{{ .Tag }}" + - "txn2/kubefwd:v{{ .Major }}" + - "txn2/kubefwd:amd64-{{ .Tag }}" + - "txn2/kubefwd:amd64-v{{ .Major }}" + build_flag_templates: + - "--label=org.label-schema.schema-version=1.0" + - "--label=org.label-schema.version={{.Version}}" + - "--label=org.label-schema.name={{.ProjectName}}" + +archives: + - name_template: '{{ .ProjectName }}_{{ .Os }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}' + replacements: + darwin: Darwin + linux: Linux + windows: Windows + 386: i386 + amd64: x86_64 + format_overrides: + - goos: windows + format: zip + +nfpms: + - file_name_template: '{{ .ProjectName }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}' + homepage: https://github.com/txn2/kubefwd + description: Kubernetes bulk port forwarding utility. + maintainer: Craig Johnston https://twitter.com/cjimti + license: Apache 2.0 + vendor: https://github.com/txn2 + formats: + - apk + - deb + - rpm + dependencies: + - git + recommends: + - golang release: - # Repo in which the release will be created. - # Default is extracted from the origin remote URL. github: owner: txn2 name: kubefwd - - # If set to true, will not auto-publish the release. - # Default is false. - draft: false - - # If set to true, will mark the release as not ready for production. - # Default is false. - prerelease: false - - # You can change the name of the GitHub release. - # Default is `` name_template: "{{.ProjectName}}-v{{.Version}} {{.Env.USER}}" - # You can disable this pipe in order to not upload any artifacts to - # GitHub. - # Defaults to false. - disable: false - -nfpm: - name_template: '{{ .ProjectName }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}' - homepage: https://github.com/txn2/kubefwd - description: Kubernetes bulk port forwarding utility. - maintainer: Craig Johnston - license: Apache 2.0 - vendor: TXN2 - formats: - - deb - - rpm - recommends: - - rpm - -# Archive customization -archive: - # You can change the name of the archive. - # This is parsed with Golang template engine and the following variables. - name_template: "{{.ProjectName}}_{{.Os}}_{{.Arch}}" - - # Archive format. Valid options are `tar.gz` and `zip`. - # Default is `zip` - format: tar.gz - - # Replacements for GOOS and GOARCH on the archive name. - # The keys should be valid GOOS or GOARCH values followed by your custom - # replacements. - # By default, `replacements` replace GOOS and GOARCH values with valid outputs - # of `uname -s` and `uname -m` respectively. - replacements: - amd64: amd64 - 386: 386 - darwin: Darwin - linux: linux - - format_overrides: - - goos: windows - format: zip - - # Additional files you want to add to the archive. - # Defaults are any files matching `LICENCE*`, `LICENSE*`, - # `README*` and `CHANGELOG*` (case-insensitive) - files: - - LICENSE - -brew: - name: kubefwd - - github: - owner: txn2 - name: homebrew-tap - - commit_author: - name: Craig Johnston - email: cjimti@gmail.com - - folder: Formula - - homepage: https://github.com/txn2/kubefwd - - description: "Kubernetes bulk port forwarding utility." - - skip_upload: false - - test: |- - kubefwd version - -snapcraft: - name_template: '{{ .ProjectName }}_{{ .Arch }}{{ if .Arm }}v{{ .Arm }}{{ end }}' - summary: Kubernetes bulk port forwarding command link utility for local development. - description: | - Kubernetes bulk port forwarding utility for local development. - kubefwd allows you to port forward all Kubernetes Pods connected to Services on one or more - Namespaces and contexts (clusters). - See https://github.com/txn2/kubefwd - - replacements: - amd64: 64-bit - 386: 32-bit - darwin: macOS - linux: Tux - - publish: false - - grade: stable - confinement: strict - - apps: - kubefwd: - plugs: ["home", "network", "network-bind"] - - -dockers: -- - goos: linux - goarch: amd64 - goarm: '' - binaries: - - kubefwd - dockerfile: Dockerfile - image_templates: - - "txn2/kubefwd:latest" - - "txn2/kubefwd:{{ .Tag }}" - - "txn2/kubefwd:v{{ .Major }}" - - "txn2/kubefwd:amd64-{{ .Tag }}" - - "txn2/kubefwd:amd64-v{{ .Major }}" - build_flag_templates: - - "--label=org.label-schema.schema-version=1.0" - - "--label=org.label-schema.version={{.Version}}" - - "--label=org.label-schema.name={{.ProjectName}}" -- - goos: linux - goarch: arm - goarm: 6 - binaries: - - kubefwd - dockerfile: Dockerfile - image_templates: - - "txn2/kubefwd:armv6-latest" - - "txn2/kubefwd:armv6-{{ .Tag }}" - - "txn2/kubefwd:armv6-{{ .Tag }}-arm6" - - "txn2/kubefwd:armv6-v{{ .Major }}" - build_flag_templates: - - "--label=org.label-schema.schema-version=1.0" - - "--label=org.label-schema.version={{.Version}}" - - "--label=org.label-schema.name={{.ProjectName}}" \ No newline at end of file +brews: + - name: kubefwd + tap: + owner: txn2 + name: homebrew-tap + commit_author: + name: Craig Johnston + email: cj@imti.co + folder: Formula + homepage: https://github.com/txn2/kubefwd + description: "Kubernetes bulk port forwarding utility." + skip_upload: false + dependencies: + - name: kubectl + type: optional + test: |- + kubefwd version \ No newline at end of file