Files
zrok/.goreleaser-linux-arm64.yml

264 lines
6.3 KiB
YAML

version: 2
builds:
- id: zrok-armv8
main: ./cmd/zrok2
binary: zrok2
ldflags: "-s -w -X github.com/openziti/zrok/v2/build.Version={{.Tag}} -X github.com/openziti/zrok/v2/build.Hash={{.ShortCommit}}"
env:
- CC=aarch64-linux-gnu-gcc
- CGO_ENABLED=1
- CC_FOR_TARGET=gcc-aarch64-linux-gnu
goos:
- linux
goarch:
- arm64
goarm:
- 8
nfpms:
- package_name: zrok2
id: zrok-cli
vendor: NetFoundry
homepage: https://zrok.io/
maintainer: support@zrok.io
description: |-
zrok is a next-generation sharing platform, designed to make sharing network and file resources simple and
secure.
license: Apache 2.0
# Build IDs for the builds you want to create NFPM packages for.
ids:
- zrok-armv8
# Formats to be generated.
formats:
- deb
- rpm
# {{ .ConventionalFileName }} satisfies the RPM name convention.
file_name_template: "{{ .ConventionalFileName }}"
# Umask to be used on files without explicit mode set. (overridable)
umask: 0o002
# Package version within this release version.
release: 1
# Section.
section: default
# Priority.
priority: optional
# GoReleaser will automatically add the binaries here
bindir: /usr/bin
# Contents to add to the package.
contents: []
- package_name: zrok2-controller
id: zrok-controller
vendor: NetFoundry
homepage: https://zrok.io/
maintainer: support@zrok.io
description: |-
This package provides zrok2-controller.service for running a self-hosted zrok controller.
Configure /etc/zrok2/ctrl.yml and run "systemctl enable --now zrok2-controller".
license: Apache 2.0
meta: true
formats:
- deb
- rpm
file_name_template: "{{ .ConventionalFileName }}"
umask: 0o002
release: 1
section: default
priority: optional
dependencies:
- zrok2
scripts:
postinstall: ./nfpm/postinstall-controller.bash
contents:
- dst: /lib/systemd/system/
src: ./nfpm/zrok2-controller.service
- dst: /usr/bin/zrok2-controller.bash
src: ./nfpm/zrok2-controller.bash
file_info:
mode: 0755
- dst: /etc/zrok2/ctrl.yml.example
src: ./etc/ctrl.yml
file_info:
mode: 0640
owner: zrok-controller
group: zrok-controller
- dst: /opt/openziti/etc/zrok2/zrok2-bootstrap.bash
src: ./nfpm/zrok2-bootstrap.bash
file_info:
mode: 0755
- dst: /etc/zrok2
type: dir
file_info:
mode: 0755
owner: root
group: root
- package_name: zrok2-metrics-bridge
id: zrok-metrics
vendor: NetFoundry
homepage: https://zrok.io/
maintainer: support@zrok.io
description: |-
This package provides zrok2-metrics-bridge.service for running the zrok controller metrics bridge.
Configure /etc/zrok2/ctrl.yml and run "systemctl enable --now zrok2-metrics-bridge".
license: Apache 2.0
meta: true
formats:
- deb
- rpm
file_name_template: "{{ .ConventionalFileName }}"
umask: 0o002
release: 1
section: default
priority: optional
dependencies:
- zrok2
scripts:
postinstall: ./nfpm/postinstall-metrics.bash
contents:
- dst: /lib/systemd/system/
src: ./nfpm/zrok2-metrics-bridge.service
- dst: /usr/bin/zrok2-metrics-bridge.bash
src: ./nfpm/zrok2-metrics-bridge.bash
file_info:
mode: 0755
- package_name: zrok2-frontend
id: zrok-frontend
vendor: NetFoundry
homepage: https://zrok.io/
maintainer: support@zrok.io
description: |-
This package provides zrok2-frontend.service for running a zrok public frontend.
Configure /etc/zrok2/frontend.yml and run "systemctl enable --now zrok2-frontend".
license: Apache 2.0
meta: true
formats:
- deb
- rpm
file_name_template: "{{ .ConventionalFileName }}"
umask: 0o002
release: 1
section: default
priority: optional
dependencies:
- zrok2
scripts:
postinstall: ./nfpm/postinstall-frontend.bash
contents:
- dst: /lib/systemd/system/
src: ./nfpm/zrok2-frontend.service
- dst: /usr/bin/zrok2-frontend.bash
src: ./nfpm/zrok2-frontend.bash
file_info:
mode: 0755
- dst: /etc/zrok2/frontend.yml.example
src: ./etc/dynamicProxy.yml
file_info:
mode: 0640
owner: zrok-frontend
group: zrok-frontend
- dst: /etc/zrok2
type: dir
file_info:
mode: 0755
owner: root
group: root
- package_name: zrok2-agent
id: zrok-agent
vendor: NetFoundry
homepage: https://zrok.io/
maintainer: support@zrok.io
description: |
This package provides zrok2-agent.service. Enable your zrok account on this device with "zrok2 enable". Run
"systemctl enable --user --now zrok2-agent.service" to enable the service for the current user and visit the agent
UI by running "zrok2 agent console".
license: Apache 2.0
# do not bundle the built binaries, only supporting files
meta: true
# Formats to be generated.
formats:
- deb
- rpm
# {{ .ConventionalFileName }} satisfies the RPM name convention.
file_name_template: "{{ .ConventionalFileName }}"
# Umask to be used on files without explicit mode set. (overridable)
umask: 0o002
# Package version within this release version.
release: 1
# Section.
section: default
# Priority.
priority: optional
# GoReleaser will automatically add the binaries here
dependencies:
- zrok2
# this allows users to satisfy the requirement for jq another way, not with the package manager, e.g.
# apt install --no-recommends zrok2-agent
recommends: []
overrides:
# yum and dnf do not automatically install "weak deps" aka "recommends", so we need to add them as a dependency
rpm:
dependencies:
- zrok2
# Contents to add to the package.
contents:
- dst: /usr/lib/systemd/user/
src: ./nfpm/zrok2-agent.service
- dst: /usr/bin/zrok2-enable
src: ./nfpm/zrok2-enable.bash
file_info:
mode: 0755
- dst: /etc/zrok2/
src: ./etc/caddy/multiple_upstream.Caddyfile
type: config|noreplace