-
Notifications
You must be signed in to change notification settings - Fork 34
/
.goreleaser.yml
152 lines (135 loc) · 3.73 KB
/
.goreleaser.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
# This is an example .goreleaser.yml file with some sane defaults.
# Make sure to check the documentation at http://goreleaser.com
version: 2
before:
hooks:
# You may remove this if you don't use go modules.
- go mod tidy
builds:
- id: gdg
env:
- CGO_ENABLED=0
binary: gdg
ldflags: -s -w -X github.com/esnet/gdg/internal/version.GitCommit={{ .Commit }} -X github.com/esnet/gdg/internal/version.BuildDate={{ .Date }} -X github.com/esnet/gdg/internal/version.Version={{ .Tag }}
main: ./cmd/gdg
goos:
- linux
- windows
- darwin
goarch:
- arm64
- 386
- amd64
- id: gdg-generate
env:
- CGO_ENABLED=0
binary: gdg-generate
ldflags: -s -w -X github.com/esnet/gdg/internal/version.GitCommit={{ .Commit }} -X github.com/esnet/gdg/internal/version.BuildDate={{ .Date }} -X github.com/esnet/gdg/internal/version.Version={{ .Tag }}
main: ./cmd/gdg-generate
goos:
- linux
- windows
- darwin
goarch:
- arm64
- 386
- amd64
nfpms:
- id: gdg
package_name: gdg
file_name_template: "{{ .ConventionalFileName }}"
homepage: https://software.es.net/gdg/
maintainer: GDG ESNet <[email protected]>
description: |-
GDG is a tool used to manage dashboards, connections, organizations and various entities of the Grafana application.
license: BSD License
builds:
- gdg
- gdg-generate
formats:
- apk
- deb
- rpm
# Template to the path that the binaries should be installed.
# Defaults to `/usr/bin`.
bindir: /usr/bin
# Section.
section: default
# Priority.
priority: extra
# Contents to add to the package.
# GoReleaser will automatically add the binaries.
contents:
# Simple config file
- src: config/importer-example.yml
dst: /etc/gdg/importer.yml
type: config
# Simple config file
- src: config/templates-example.yml
dst: /etc/gdg/templates.yml
type: config
universal_binaries:
- id: gdg
name_template: gdg
replace: true
ids: [gdg]
- id: gdg-generate
name_template: gdg-generate
replace: true
ids: [gdg-generate]
release:
prerelease: auto
dockers:
- id: gdg
# # You can have multiple Docker images.
# - # ID of the image, needed if you want to filter by it later on (e.g. on custom publishers).
goos: linux
goarch: amd64
#
image_templates:
- "ghcr.io/esnet/gdg:latest"
- "ghcr.io/esnet/gdg:{{ .RawVersion }}"
- "ghcr.io/esnet/gdg:{{ .Major }}.{{ .Minor }}"
skip_push: false
dockerfile: "docker/Dockerfile"
brews:
- name: gdg
homepage: https://software.es.net/gdg
commit_msg_template: "Brew formula update for {{ .ProjectName }} version {{ .Tag }}"
description: Grafana Dash-n-Grab (GDG) -- Dashboard/DataSource Manager for grafana supporting backup/restore to local filesystem, s3, gcs, azure, and other S3 compatible storage engines.
directory: Formula
repository:
owner: esnet
name: homebrew-gdg
token: "{{ .Env.HOMEBREW_TOKEN }}"
branch: main
commit_author:
name: GDG ESNet
email: [email protected]
archives:
- name_template: >-
{{ .ProjectName }}_
{{- title .Os }}_
{{- if eq .Arch "amd64" }}x86_64
{{- else if eq .Arch "386" }}i386
{{- else }}{{ .Arch }}{{ end }}
format_overrides:
- goos: windows
format: zip
builds:
- gdg
- gdg-generate
files:
- README*
- config/importer-example.yml
- config/templates-example.yml
checksum:
name_template: "checksums.txt"
snapshot:
version_template: "{{ .Tag }}-next"
changelog:
sort: asc
filters:
exclude:
- "^docs:"
- "^test:"