mirror of
https://github.com/fleetdm/fleet
synced 2026-05-24 01:18:42 +00:00
This PR fixes a couple of issues introduced when we started releasing separate amd64 and arm64 versions of our windows and linux binaries: * Adds the architecture string to the download url in the fleetctl npm package * Updates the goreleaser templates to only add the architecture to non-macos (i.e. windows and linux) packages * Updates the script that the website uses to download fleetctl I did a weak test of the fleetctl npm installer by hardcoding what was returned for my system type and at least verified that the download url worked. Doing some more checks on VMs now.
154 lines
4.2 KiB
YAML
154 lines
4.2 KiB
YAML
version: 2
|
|
|
|
project_name: fleet
|
|
|
|
monorepo:
|
|
tag_prefix: fleet-
|
|
dir: .
|
|
|
|
before:
|
|
hooks:
|
|
- make deps
|
|
- make generate
|
|
|
|
# gomod:
|
|
# proxy: true
|
|
|
|
builds:
|
|
- id: fleet
|
|
dir: ./cmd/fleet/
|
|
binary: fleet
|
|
env:
|
|
- CGO_ENABLED=1
|
|
goos:
|
|
- linux
|
|
goarch:
|
|
- amd64
|
|
flags:
|
|
- -tags=full,fts5,netgo
|
|
- -trimpath
|
|
ldflags:
|
|
- -extldflags "-static"
|
|
- -X github.com/fleetdm/fleet/v4/server/version.appName={{ .ArtifactName }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.version={{ .Version }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.branch={{ .Branch }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.revision={{ .FullCommit }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.buildDate={{ time "2006-01-02" }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.buildUser={{ .Env.USER }}
|
|
|
|
- id: fleetctl
|
|
dir: ./cmd/fleetctl/
|
|
binary: fleetctl
|
|
env:
|
|
- CGO_ENABLED=0
|
|
goos:
|
|
- linux
|
|
- windows
|
|
goarch:
|
|
- amd64
|
|
- arm64
|
|
flags:
|
|
- -trimpath
|
|
ldflags:
|
|
- -X github.com/fleetdm/fleet/v4/server/version.appName={{ .ArtifactName }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.version={{ .Version }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.branch={{ .Branch }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.revision={{ .FullCommit }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.buildDate={{ time "2006-01-02" }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.buildUser={{ .Env.USER }}
|
|
|
|
- id: fleetctl-macos
|
|
dir: ./cmd/fleetctl/
|
|
binary: fleetctl
|
|
env:
|
|
- CGO_ENABLED=0
|
|
goos:
|
|
- darwin
|
|
goarch:
|
|
- amd64
|
|
- arm64
|
|
flags:
|
|
- -trimpath
|
|
ldflags:
|
|
- -X github.com/fleetdm/fleet/v4/server/version.appName={{ .ArtifactName }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.version={{ .Version }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.branch={{ .Branch }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.revision={{ .FullCommit }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.buildDate={{ time "2006-01-02" }}
|
|
- -X github.com/fleetdm/fleet/v4/server/version.buildUser={{ .Env.USER }}
|
|
|
|
universal_binaries:
|
|
- id: fleetctl # resulting binary id
|
|
ids: [fleetctl-macos] # source binaries
|
|
replace: true
|
|
name_template: fleetctl # resulting binary name
|
|
hooks:
|
|
post:
|
|
- sh -c "FLEETCTL_BINARY_PATH={{ .Path }} ./tools/sign-fleetctl/main.sh"
|
|
|
|
archives:
|
|
- id: fleet
|
|
builds:
|
|
- fleet
|
|
name_template: fleet_v{{.Version}}_{{- if eq .Os "darwin" }}macos{{- else }}{{ .Os }}{{ end }}
|
|
format_overrides:
|
|
- goos: windows
|
|
format: zip
|
|
wrap_in_directory: true
|
|
|
|
- id: fleetctl
|
|
builds:
|
|
- fleetctl
|
|
# Note -- changing this can break GitOps and other workflows that expect these filenames to be deterministic!
|
|
name_template: fleetctl_v{{.Version}}_{{- if eq .Os "darwin" }}macos{{- else }}{{ .Os }}_{{.Arch}}{{ end }}
|
|
wrap_in_directory: true
|
|
|
|
- id: fleetctl-zip
|
|
builds:
|
|
- fleetctl
|
|
# Note -- changing this can break GitOps and other workflows that expect these filenames to be deterministic!
|
|
name_template: fleetctl_v{{.Version}}_{{- if eq .Os "darwin" }}macos{{- else }}{{ .Os }}_{{.Arch}}{{ end }}
|
|
format: zip
|
|
wrap_in_directory: true
|
|
|
|
dockers:
|
|
- goos: linux
|
|
goarch: amd64
|
|
ids:
|
|
- fleet
|
|
- fleetctl
|
|
dockerfile: tools/fleet-docker/Dockerfile
|
|
image_templates:
|
|
- 'fleetdm/fleet:latest'
|
|
- 'fleetdm/fleet:{{ .Tag }}'
|
|
- 'fleetdm/fleet:{{ .Tag }}'
|
|
- 'fleetdm/fleet:v{{ .Major }}'
|
|
|
|
- goos: linux
|
|
goarch: amd64
|
|
ids:
|
|
- fleetctl
|
|
dockerfile: tools/fleetctl-docker/Dockerfile
|
|
build_flag_templates:
|
|
- "--build-arg=binpath=fleetctl"
|
|
image_templates:
|
|
- 'fleetdm/fleetctl:latest'
|
|
- 'fleetdm/fleetctl:{{ .Tag }}'
|
|
- 'fleetdm/fleetctl:{{ .Tag }}'
|
|
- 'fleetdm/fleetctl:v{{ .Major }}'
|
|
|
|
checksum:
|
|
name_template: 'checksums.txt'
|
|
|
|
snapshot:
|
|
version_template: "{{ .Tag }}-untagged"
|
|
|
|
changelog:
|
|
disable: true
|
|
|
|
release:
|
|
github:
|
|
owner: fleetdm
|
|
name: fleet
|
|
draft: true
|
|
prerelease: auto
|