-
Notifications
You must be signed in to change notification settings - Fork 14
Expand file tree
/
Copy path.goreleaser.yaml
More file actions
191 lines (174 loc) · 4.62 KB
/
Copy path.goreleaser.yaml
File metadata and controls
191 lines (174 loc) · 4.62 KB
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
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
# Copyright (c) 2026, NVIDIA CORPORATION. All rights reserved.
# Licensed under the Apache License, Version 2.0.
#
# GoReleaser config for cross-building holodeck binaries, publishing them as
# GitHub Release assets, and auto-updating the Homebrew tap on every v* tag.
#
# Homebrew distribution split:
# - macOS → Cask at Casks/holodeck.rb (avoids brew's Formula sandbox
# PTY bug on macOS Tahoe 26.x; see
# docs/release.md)
# - Linux → Formula at Formula/holodeck.rb
#
# See docs/release.md for the release process.
version: 2
project_name: holodeck
before:
hooks:
- go mod tidy
builds:
# Split the holodeck CLI into per-OS builds so the Linux Formula and macOS
# Cask can each target only their platform via archive ids.
- id: holodeck-linux
main: ./cmd/cli
binary: holodeck
env:
- CGO_ENABLED=0
goos:
- linux
goarch:
- amd64
- arm64
ldflags:
- -s -w
- -X main.ProgramVersion={{ .Version }}
- id: holodeck-darwin
main: ./cmd/cli
binary: holodeck
env:
- CGO_ENABLED=0
goos:
- darwin
goarch:
- amd64
- arm64
ldflags:
- -s -w
- -X main.ProgramVersion={{ .Version }}
- id: holodeck-action
main: ./cmd/action
binary: holodeck-action
env:
- CGO_ENABLED=0
goos:
- linux
goarch:
- amd64
- arm64
ldflags:
- -s -w
archives:
- id: holodeck-linux
ids:
- holodeck-linux
name_template: "holodeck_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
formats:
- tar.gz
files:
- LICENSE
- README.md
- id: holodeck-darwin
ids:
- holodeck-darwin
name_template: "holodeck_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
formats:
- tar.gz
files:
- LICENSE
- README.md
- id: holodeck-action
ids:
- holodeck-action
name_template: "holodeck-action_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
formats:
- tar.gz
files:
- LICENSE
checksum:
name_template: checksums.txt
algorithm: sha256
source:
enabled: true
changelog:
use: github
sort: asc
filters:
exclude:
- '^docs:'
- '^chore:'
- '^test:'
release:
github:
owner: NVIDIA
name: holodeck
draft: false
prerelease: auto
# Linux-only Homebrew Formula. macOS users install via the Cask block below.
brews:
- name: holodeck
ids:
- holodeck-linux
repository:
owner: NVIDIA
name: holodeck
branch: main
pull_request:
enabled: true
draft: false
base:
branch: main
token: "{{ .Env.HOMEBREW_TAP_GITHUB_TOKEN }}"
directory: Formula
homepage: "https://github.com/NVIDIA/holodeck"
description: "Tool for creating and managing GPU-ready cloud test environments"
license: "Apache-2.0"
commit_author:
name: nvidia-ci
email: nvidia-ci@users.noreply.github.com
commit_msg_template: |
chore(brew): bump {{ .ProjectName }} formula to {{ .Tag }}
Signed-off-by: nvidia-ci <nvidia-ci@users.noreply.github.com>
install: |
bin.install "holodeck"
test: |
system "#{bin}/holodeck", "--version"
# macOS-only Homebrew Cask. Casks skip brew's Formula build sandbox, which
# avoids the PTY.open failure that breaks Formula installs on macOS Tahoe
# 26.x with brew 5.1.x + portable-ruby 4.0.x. The xattr hook strips the
# com.apple.quarantine attribute Gatekeeper attaches to downloads of
# unsigned binaries — until we set up Apple Developer signing/notarization,
# this is what lets `brew install nvidia/holodeck/holodeck` run cleanly.
homebrew_casks:
- name: holodeck
ids:
- holodeck-darwin
binaries:
- holodeck
repository:
owner: NVIDIA
name: holodeck
branch: main
pull_request:
enabled: true
draft: false
base:
branch: main
token: "{{ .Env.HOMEBREW_TAP_GITHUB_TOKEN }}"
directory: Casks
homepage: "https://github.com/NVIDIA/holodeck"
description: "Tool for creating and managing GPU-ready cloud test environments"
license: "Apache-2.0"
commit_author:
name: nvidia-ci
email: nvidia-ci@users.noreply.github.com
commit_msg_template: |
chore(brew): bump {{ .ProjectName }} cask to {{ .Tag }}
Signed-off-by: nvidia-ci <nvidia-ci@users.noreply.github.com>
hooks:
post:
install: |
if OS.mac?
system_command "/usr/bin/xattr",
args: ["-dr", "com.apple.quarantine", "#{staged_path}/holodeck"],
sudo: false
end