zrok/.goreleaser-linux-armel.yml

145 lines
3.8 KiB
YAML
Raw Normal View History

# this is a DiY build config for the soft-float, armel platform (32bit ARMv7 devices lacking an FPU) see
# instructions to cross-build this binary in ./docker/images/cross-build/README.md or
# https://github.com/openziti/zrok/tree/main/docker/images/cross-build#readme
version: 2
builds:
- id: zrok-armel
main: ./cmd/zrok
binary: zrok
ldflags:
- "-s -w -X github.com/openziti/zrok/build.Version={{.Tag}} -X github.com/openziti/zrok/build.Hash={{.ShortCommit}}"
env:
- CC=arm-linux-gnueabi-gcc
- CGO_ENABLED=1
- CC_FOR_TARGET=gcc-arm-linux-gnueabi
goos:
- linux
goarch:
- arm
goarm:
- 7
nfpms:
- package_name: zrok
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.
builds:
- zrok-armel
# 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: /opt/openziti/bin
# Contents to add to the package.
contents:
- src: /opt/openziti/bin/zrok
dst: /usr/bin/zrok
type: "symlink"
- package_name: zrok-share
id: zrok-share
vendor: NetFoundry
homepage: https://zrok.io/
maintainer: support@zrok.io
description: |-
This package provides zrok-share.service. To enable, edit the "/opt/openziti/etc/zrok/zrok-share.env" file with the
desired target for sharing, and run "systemctl enable --now zrok-share.service".
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:
- zrok
# this allows users to satisfy the requirement for jq another way, not with the package manager, e.g.
# apt install --no-recommends zrok-share
recommends:
- jq
overrides:
# yum and dnf do not automatically install "weak deps" aka "recommends", so we need to add them as a dependency
rpm:
dependencies:
- zrok
- jq
# Contents to add to the package.
contents:
- dst: /lib/systemd/system/
src: ./nfpm/zrok-share.service
- dst: /etc/systemd/system/zrok-share.service.d/override.conf
src: ./nfpm/zrok-share.service.override.conf
- dst: /opt/openziti/etc/zrok
type: dir
file_info:
mode: 0755
- dst: /opt/openziti/bin/
src: ./nfpm/zrok-share.bash
file_info:
mode: 0755
- dst: /opt/openziti/bin/
src: ./nfpm/zrok-enable.bash
file_info:
mode: 0755
- dst: /opt/openziti/etc/zrok/
src: ./nfpm/zrok-share.env
type: config|noreplace
- dst: /opt/openziti/etc/zrok/
src: ./etc/caddy/multiple_upstream.Caddyfile
type: config|noreplace