add: core and controller for prod

This commit is contained in:
Tobias Reisinger 2020-07-01 23:28:49 +02:00
parent e8596a8e70
commit 0d54ce7c6e
10 changed files with 211 additions and 0 deletions

47
core/PKGBUILD Normal file
View file

@ -0,0 +1,47 @@
# Maintainer: Tobias Reisinger <tobias@msrg.cc>
pkgname=emgauwa-core
pkgver=0.2.1
pkgrel=1
epoch=
pkgdesc=""
arch=('any')
url="https://git.serguzim.me/emgauwa/core"
license=('unknown')
groups=()
depends=('glibc' 'sqlite')
makedepends=('make' 'cmake' 'gcc')
conflicts=('emgauwa-core')
backup=('etc/emgauwa/core.ini')
source=("https://git.serguzim.me/emgauwa/core/archive/v$pkgver.tar.gz"
"core.ini"
"emgauwa-core-testing.service"
"emgauwa-core-testing.sysusers"
"emgauwa-core-testing.tmpfiles")
sha256sums=('f1869e952835308ca921b96c9d2160c74ed511fcd3da6c5bd47a4e87302da67a'
'6f113aa1c6ddbf982674ee192db2462758f83dfff12ab85ed4e221c0fdcf7de8'
'c781f4d50da8e158551a47a8549981dad05faaf2d632c4fde8b36b48474ab0ec'
'b9cde58b9e9b0605ca4a1eddd78067c55aa3c8d40f80cde0a25c4da9f6f95798'
'0531f10303410afd7e53099e66b124ef2fd14afec9d33c4a0146793375acb6c2')
prepare() {
cd "$pkgname"
mkdir -p "build"
}
build() {
cd "$pkgname/build" || exit 1
cmake ..
make
}
package() {
install -Dm755 "${pkgname}/build/core" "${pkgdir}/usr/bin/emgauwa-core"
install -Dm600 "core.ini" "${pkgdir}/etc/emgauwa/core.ini"
install -Dm644 "${pkgname}.service" "${pkgdir}/usr/lib/systemd/system/${pkgname}.service"
install -Dm644 "${pkgname}.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf"
install -Dm644 "${pkgname}.sysusers" "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf"
install -Ddm750 "${pkgdir}/var/lib/emgauwa"
install -Ddm750 "${pkgdir}/var/lib/emgauwa/core"
}

18
core/core.ini Normal file
View file

@ -0,0 +1,18 @@
[core]
server-port = 80
user = emgauwa
group = emgauwa
database = /var/lib/emgauwa/core/db.sqlite
not-found-file = 404.html
not-found-file-mime = text/html
not-found-content = 404 - NOT FOUND
not-found-content-type = text/plain
: 4421 for dev-env; 4420 for testing-env; 4419 for prod-env; 4422 for testing
discovery-port = 4419
: 1886 for testing; 1885 for dev-env; 1884 for testing-env; 1883 for prod-env
mqtt-port = 1883
log-level = info

View file

@ -0,0 +1,12 @@
[Unit]
Description=Emgauwa Core Launcher
After=network.target
[Service]
Type=simple
WorkingDirectory=/var/lib/emgauwa/core/
ExecStart=emgauwa-core start -c /etc/emgauwa/core.ini
Restart=on-failure
[Install]
WantedBy=multi-user.target

View file

@ -0,0 +1 @@
u emgauwa - "Emgauwa daemon user" /var/lib/emgauwa /bin/bash

View file

@ -0,0 +1,5 @@
d /var/lib/emgauwa 0750
d /var/lib/emgauwa/core 0750
Z /var/lib/emgauwa - emgauwa emgauwa
z /etc/emgauwa 0755 root emgauwa
z /etc/emgauwa/core.ini 0660 root emgauwa