123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211 |
- 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]
- hooks:
- post:
- - upx "{{ .Path }}" # apt install upx
- -
- 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]
- # No "upx" for ARM, see https://github.com/binwiederhier/ntfy/issues/191#issuecomment-1083406546
- -
- 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]
- # No "upx" for ARM, see https://github.com/binwiederhier/ntfy/issues/191#issuecomment-1083406546
- -
- 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]
- # No "upx" for ARM, see https://github.com/binwiederhier/ntfy/issues/191#issuecomment-1083406546
- -
- id: ntfy_windows_amd64
- binary: ntfy
- env:
- - CGO_ENABLED=0 # explicitly disable, since we don't need go-sqlite3
- ldflags:
- - "-X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}}"
- goos: [windows]
- goarch: [amd64]
- hooks:
- post:
- - upx "{{ .Path }}" # apt install upx
- -
- id: ntfy_darwin_all
- binary: ntfy
- env:
- - CGO_ENABLED=0 # explicitly disable, since we don't need go-sqlite3
- 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
- - 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/img/ntfy.png
- scripts:
- preinstall: "scripts/preinst.sh"
- postinstall: "scripts/postinst.sh"
- preremove: "scripts/prerm.sh"
- postremove: "scripts/postrm.sh"
- archives:
- -
- id: ntfy_linux
- builds:
- - 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
- replacements:
- amd64: x86_64
- -
- id: ntfy_windows
- builds:
- - ntfy_windows_amd64
- format: zip
- wrap_in_directory: true
- files:
- - LICENSE
- - README.md
- - client/client.yml
- replacements:
- amd64: x86_64
- -
- id: ntfy_darwin
- builds:
- - ntfy_darwin_all
- wrap_in_directory: true
- files:
- - LICENSE
- - README.md
- - client/client.yml
- replacements:
- darwin: macOS
- universal_binaries:
- -
- id: ntfy_darwin_all
- replace: true
- checksum:
- name_template: 'checksums.txt'
- snapshot:
- name_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
- goarch: arm64
- build_flag_templates:
- - "--platform=linux/arm64/v8"
- - image_templates:
- - &armv7_image "binwiederhier/ntfy:{{ .Tag }}-armv7"
- use: buildx
- dockerfile: Dockerfile
- goarch: arm
- goarm: 7
- build_flag_templates:
- - "--platform=linux/arm/v7"
- - image_templates:
- - &armv6_image "binwiederhier/ntfy:{{ .Tag }}-armv6"
- use: buildx
- dockerfile: Dockerfile
- 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
|