mirror of
https://github.com/binwiederhier/ntfy.git
synced 2025-07-20 10:04:08 +00:00
204 lines
No EOL
5.9 KiB
YAML
204 lines
No EOL
5.9 KiB
YAML
version: 2
|
|
before:
|
|
hooks:
|
|
- go mod download
|
|
- go mod tidy
|
|
builds:
|
|
- id: ntfy_linux_amd64
|
|
binary: ntfy
|
|
env:
|
|
- CGO_ENABLED=1 # required for go-sqlite3
|
|
tags: [ sqlite_omit_load_extension,osusergo,netgo ]
|
|
ldflags:
|
|
- "-linkmode=external -extldflags=-static -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}}"
|
|
goos: [ linux ]
|
|
goarch: [ amd64 ]
|
|
- id: ntfy_linux_armv6
|
|
binary: ntfy
|
|
env:
|
|
- CGO_ENABLED=1 # required for go-sqlite3
|
|
- CC=arm-linux-gnueabi-gcc # apt install gcc-arm-linux-gnueabi
|
|
tags: [ sqlite_omit_load_extension,osusergo,netgo ]
|
|
ldflags:
|
|
- "-linkmode=external -extldflags=-static -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}}"
|
|
goos: [ linux ]
|
|
goarch: [ arm ]
|
|
goarm: [ 6 ]
|
|
- id: ntfy_linux_armv7
|
|
binary: ntfy
|
|
env:
|
|
- CGO_ENABLED=1 # required for go-sqlite3
|
|
- CC=arm-linux-gnueabi-gcc # apt install gcc-arm-linux-gnueabi
|
|
tags: [ sqlite_omit_load_extension,osusergo,netgo ]
|
|
ldflags:
|
|
- "-linkmode=external -extldflags=-static -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}}"
|
|
goos: [ linux ]
|
|
goarch: [ arm ]
|
|
goarm: [ 7 ]
|
|
- id: ntfy_linux_arm64
|
|
binary: ntfy
|
|
env:
|
|
- CGO_ENABLED=1 # required for go-sqlite3
|
|
- CC=aarch64-linux-gnu-gcc # apt install gcc-aarch64-linux-gnu
|
|
tags: [ sqlite_omit_load_extension,osusergo,netgo ]
|
|
ldflags:
|
|
- "-linkmode=external -extldflags=-static -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}}"
|
|
goos: [ linux ]
|
|
goarch: [ arm64 ]
|
|
- id: ntfy_windows_amd64
|
|
binary: ntfy
|
|
env:
|
|
- CGO_ENABLED=0 # explicitly disable, since we don't need go-sqlite3
|
|
tags: [ noserver ] # don't include server files
|
|
ldflags:
|
|
- "-X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}}"
|
|
goos: [ windows ]
|
|
goarch: [ amd64 ]
|
|
- id: ntfy_darwin_all
|
|
binary: ntfy
|
|
env:
|
|
- CGO_ENABLED=0 # explicitly disable, since we don't need go-sqlite3
|
|
tags: [ noserver ] # don't include server files
|
|
ldflags:
|
|
- "-X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}}"
|
|
goos: [ darwin ]
|
|
goarch: [ amd64, arm64 ] # will be combined to "universal binary" (see below)
|
|
nfpms:
|
|
- package_name: ntfy
|
|
homepage: https://heckel.io/ntfy
|
|
maintainer: Philipp C. Heckel <philipp.heckel@gmail.com>
|
|
description: Simple pub-sub notification service
|
|
license: Apache 2.0
|
|
formats:
|
|
- deb
|
|
- rpm
|
|
bindir: /usr/bin
|
|
contents:
|
|
- src: server/server.yml
|
|
dst: /etc/ntfy/server.yml
|
|
type: "config|noreplace"
|
|
- src: server/ntfy.service
|
|
dst: /lib/systemd/system/ntfy.service
|
|
- src: client/client.yml
|
|
dst: /etc/ntfy/client.yml
|
|
type: "config|noreplace"
|
|
- src: client/ntfy-client.service
|
|
dst: /lib/systemd/system/ntfy-client.service
|
|
- src: client/user/ntfy-client.service
|
|
dst: /lib/systemd/user/ntfy-client.service
|
|
- dst: /var/cache/ntfy
|
|
type: dir
|
|
- dst: /var/cache/ntfy/attachments
|
|
type: dir
|
|
- dst: /var/lib/ntfy
|
|
type: dir
|
|
- dst: /usr/share/ntfy/logo.png
|
|
src: web/public/static/images/ntfy.png
|
|
scripts:
|
|
preinstall: "scripts/preinst.sh"
|
|
postinstall: "scripts/postinst.sh"
|
|
preremove: "scripts/prerm.sh"
|
|
postremove: "scripts/postrm.sh"
|
|
archives:
|
|
- id: ntfy_linux
|
|
ids:
|
|
- ntfy_linux_amd64
|
|
- ntfy_linux_armv6
|
|
- ntfy_linux_armv7
|
|
- ntfy_linux_arm64
|
|
wrap_in_directory: true
|
|
files:
|
|
- LICENSE
|
|
- README.md
|
|
- server/server.yml
|
|
- server/ntfy.service
|
|
- client/client.yml
|
|
- client/ntfy-client.service
|
|
- client/user/ntfy-client.service
|
|
- id: ntfy_windows
|
|
ids:
|
|
- ntfy_windows_amd64
|
|
formats: [ zip ]
|
|
wrap_in_directory: true
|
|
files:
|
|
- LICENSE
|
|
- README.md
|
|
- client/client.yml
|
|
- id: ntfy_darwin
|
|
ids:
|
|
- ntfy_darwin_all
|
|
wrap_in_directory: true
|
|
files:
|
|
- LICENSE
|
|
- README.md
|
|
- client/client.yml
|
|
universal_binaries:
|
|
- id: ntfy_darwin_all
|
|
replace: true
|
|
name_template: ntfy
|
|
checksum:
|
|
name_template: 'checksums.txt'
|
|
snapshot:
|
|
version_template: "{{ .Tag }}-next"
|
|
changelog:
|
|
sort: asc
|
|
filters:
|
|
exclude:
|
|
- '^docs:'
|
|
- '^test:'
|
|
dockers:
|
|
- image_templates:
|
|
- &amd64_image "binwiederhier/ntfy:{{ .Tag }}-amd64"
|
|
use: buildx
|
|
dockerfile: Dockerfile
|
|
goarch: amd64
|
|
build_flag_templates:
|
|
- "--platform=linux/amd64"
|
|
- image_templates:
|
|
- &arm64v8_image "binwiederhier/ntfy:{{ .Tag }}-arm64v8"
|
|
use: buildx
|
|
dockerfile: Dockerfile-arm
|
|
goarch: arm64
|
|
build_flag_templates:
|
|
- "--platform=linux/arm64/v8"
|
|
- image_templates:
|
|
- &armv7_image "binwiederhier/ntfy:{{ .Tag }}-armv7"
|
|
use: buildx
|
|
dockerfile: Dockerfile-arm
|
|
goarch: arm
|
|
goarm: 7
|
|
build_flag_templates:
|
|
- "--platform=linux/arm/v7"
|
|
- image_templates:
|
|
- &armv6_image "binwiederhier/ntfy:{{ .Tag }}-armv6"
|
|
use: buildx
|
|
dockerfile: Dockerfile-arm
|
|
goarch: arm
|
|
goarm: 6
|
|
build_flag_templates:
|
|
- "--platform=linux/arm/v6"
|
|
docker_manifests:
|
|
- name_template: "binwiederhier/ntfy:latest"
|
|
image_templates:
|
|
- *amd64_image
|
|
- *arm64v8_image
|
|
- *armv7_image
|
|
- *armv6_image
|
|
- name_template: "binwiederhier/ntfy:{{ .Tag }}"
|
|
image_templates:
|
|
- *amd64_image
|
|
- *arm64v8_image
|
|
- *armv7_image
|
|
- *armv6_image
|
|
- name_template: "binwiederhier/ntfy:v{{ .Major }}"
|
|
image_templates:
|
|
- *amd64_image
|
|
- *arm64v8_image
|
|
- *armv7_image
|
|
- *armv6_image
|
|
- name_template: "binwiederhier/ntfy:v{{ .Major }}.{{ .Minor }}"
|
|
image_templates:
|
|
- *amd64_image
|
|
- *arm64v8_image
|
|
- *armv7_image
|
|
- *armv6_image |