Added goreleaser file

This commit is contained in:
Nick Gerakines 2020-03-24 13:36:08 -04:00
parent 6187aa0cec
commit 6032a8f1e0
No known key found for this signature in database
GPG Key ID: 33D43D854F96B2E4
10 changed files with 140 additions and 2 deletions

3
.gitignore vendored
View File

@ -44,3 +44,6 @@ public/fa-solid-900.svg
public/fa-solid-900.ttf
public/fa-solid-900.woff
public/fa-solid-900.woff2
# release files
dist/

81
.goreleaser.yml Normal file
View File

@ -0,0 +1,81 @@
project_name: tavern
before:
hooks:
- go mod download
- go generate ./...
builds:
- binary: tavern
env:
- CGO_ENABLED=0
flags:
- -tags=prod
ldflags:
- -w
- -s
- -extldflags '-static'
- -X main.Release={{.Version}}
- -X main.GitCommit={{.Commit}}
- -X main.BuildTime={{.Date}}
archives:
- format: zip
files:
- LICENSE
- README*
- CHANGELOG*
checksum:
name_template: 'checksums.txt'
signs:
- signature: "${artifact}_sig"
artifacts: all
snapshot:
name_template: "{{ .Tag }}-next"
nfpms:
-
vendor: Nick Gerakines
homepage: https://tavern.town/
maintainer: Nick Gerakines <nick.gerakines@gmail.com>
description: A self-contained and configurable Activity Pub server.
license: mit
empty_folders:
- /usr/share/tavern/
formats:
- deb
- rpm
suggests:
- postgres-server
- systemd
- rsyslog
files:
./templates/**/*: "/usr/share/tavern/templates"
./public/**/*: "/usr/share/tavern/public"
config_files:
./scripts/tavern_rsyslog.conf: "/etc/rsyslog.d/tavern.conf"
./scripts/tavern_env: "/usr/share/tavern/env"
./scripts/tavern.service: "/etc/systemd/system/tavern.service"
overrides:
deb:
scripts:
postinstall: ./scripts/postinst
preremove: ./scripts/prerm
postremove: ./scripts/postrm
changelog:
sort: asc
filters:
exclude:
- '^docs:'
- '^test:'
- '^assets:'
release:
gitlab:
owner: ngerakines
name: tavern

View File

@ -1,5 +1,5 @@
// Code generated by go generate; DO NOT EDIT.
// This file was generated by herr at 2020-03-24 11:10:55.384793105 -0400 EDT m=+0.009454825
// This file was generated by herr at 2020-03-24 13:33:44.957849681 -0400 EDT m=+0.009274100
package errors
import (

View File

@ -1,5 +1,5 @@
// Code generated by go generate; DO NOT EDIT.
// This file was generated by herr at 2020-03-24 11:10:55.411481094 -0400 EDT m=+0.036142781
// This file was generated by herr at 2020-03-24 13:33:44.982147915 -0400 EDT m=+0.033572306
package errors
import (

16
scripts/postinst Executable file
View File

@ -0,0 +1,16 @@
#!/bin/sh
set -e
if which systemctl > /dev/null; then
systemctl daemon-reload || :
systemctl enable tavern || :
systemctl start tavern || :
else
echo "Couldn't find systemd to control tavern, cannot proceed."
exit 1
fi
#DEBHELPER#
exit 0

11
scripts/postrm Executable file
View File

@ -0,0 +1,11 @@
#!/bin/sh
set -e
if which systemctl > /dev/null; then
systemctl daemon-reload || :
fi
#DEBHELPER#
exit 0

11
scripts/prerm Executable file
View File

@ -0,0 +1,11 @@
#!/bin/sh
set -e
if which systemctl > /dev/null; then
systemctl stop tavern || :
fi
#DEBHELPER#
exit 0

14
scripts/tavern.service Normal file
View File

@ -0,0 +1,14 @@
[Unit]
Description=tavern
[Service]
EnvironmentFile=-/etc/default/tavern
Restart=on-failure
WorkingDirectory=/usr/share/tavern/
ExecStart=/usr/local/bin/tavern server
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=tavern
[Install]
WantedBy=multi-user.target

0
scripts/tavern_env Normal file
View File

View File

@ -0,0 +1,2 @@
if $programname == 'tavern' then /var/log/tavern.log
& stop