Add .deb packaging
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -1,2 +1,2 @@
|
|||||||
/dist
|
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
/dist
|
||||||
|
|||||||
14
Makefile
14
Makefile
@@ -2,8 +2,18 @@ default:
|
|||||||
|
|
||||||
dist:
|
dist:
|
||||||
mkdir -p dist
|
mkdir -p dist
|
||||||
|
cp etc/litestream.yml dist/litestream.yml
|
||||||
docker run --rm -v "${PWD}":/usr/src/litestream -w /usr/src/litestream -e GOOS=linux -e GOARCH=amd64 golang:1.15 go build -v -o dist/litestream ./cmd/litestream
|
docker run --rm -v "${PWD}":/usr/src/litestream -w /usr/src/litestream -e GOOS=linux -e GOARCH=amd64 golang:1.15 go build -v -o dist/litestream ./cmd/litestream
|
||||||
tar -cz -f dist/litestream-linux-amd64.tar.gz -C dist litestream
|
tar -cz -f dist/litestream-linux-amd64.tar.gz -C dist litestream
|
||||||
rm dist/litestream
|
|
||||||
|
|
||||||
.PHONY: dist
|
deb: dist
|
||||||
|
ifndef VERSION
|
||||||
|
$(error VERSION is undefined)
|
||||||
|
endif
|
||||||
|
cat etc/nfpm.yml | envsubst > dist/nfpm.yml
|
||||||
|
nfpm pkg --config dist/nfpm.yml --packager deb --target dist/litestream.deb
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -rf dist
|
||||||
|
|
||||||
|
.PHONY: deb dist clean
|
||||||
|
|||||||
9
etc/litestream.service
Normal file
9
etc/litestream.service
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Litestream
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Restart=always
|
||||||
|
ExecStart=/usr/bin/litestream replicate
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
10
etc/litestream.yml
Normal file
10
etc/litestream.yml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
# AWS credentials
|
||||||
|
# access-key-id: AKIAxxxxxxxxxxxxxxxx
|
||||||
|
# secret-access-key: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/xxxxxxxxx
|
||||||
|
|
||||||
|
# dbs:
|
||||||
|
# - path: /path/to/primary/db # Database to replicate from
|
||||||
|
# replicas:
|
||||||
|
# - path: /path/to/replica # File-based replication
|
||||||
|
# - path: s3://my.bucket.com/db # S3-based replication
|
||||||
|
|
||||||
19
etc/nfpm.yml
Normal file
19
etc/nfpm.yml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
name: litestream
|
||||||
|
arch: amd64
|
||||||
|
platform: linux
|
||||||
|
version: "${LITESTREAM_VERSION}"
|
||||||
|
section: "default"
|
||||||
|
priority: "extra"
|
||||||
|
maintainer: "Ben Johnson <benbjohnson@yahoo.com>"
|
||||||
|
description: Litestream is a tool for real-time replication of SQLite databases.
|
||||||
|
homepage: "https://github.com/benbjohnson/litestream"
|
||||||
|
license: "GPLv3"
|
||||||
|
contents:
|
||||||
|
- src: ./dist/litestream
|
||||||
|
dst: /usr/bin/litestream
|
||||||
|
- src: ./etc/litestream.yml
|
||||||
|
dst: /etc/litestream.yml
|
||||||
|
type: config
|
||||||
|
- src: ./etc/litestream.service
|
||||||
|
dst: /usr/lib/systemd/system/litestream.service
|
||||||
|
type: config
|
||||||
Reference in New Issue
Block a user