Add mailhog

This commit is contained in:
Thomas Legay 2022-06-16 19:21:21 +02:00
parent 81f42e2ee2
commit cef422a4ea
10 changed files with 95 additions and 1 deletions

View File

@ -100,7 +100,6 @@ debmaker_run(){
} }
debmaker_debootstrapUpdate(){ debmaker_debootstrapUpdate(){
zdebmaker_getDep
[ -d ${DEBOOTSTRAP_DIR} ] || mkdir ${DEBOOTSTRAP_DIR} [ -d ${DEBOOTSTRAP_DIR} ] || mkdir ${DEBOOTSTRAP_DIR}
URL=https://salsa.debian.org/installer-team/debootstrap/-/archive/master/debootstrap-master.tar.gz URL=https://salsa.debian.org/installer-team/debootstrap/-/archive/master/debootstrap-master.tar.gz
FILES="debootstrap-master/debootstrap debootstrap-master/scripts/ debootstrap-master/functions" FILES="debootstrap-master/debootstrap debootstrap-master/scripts/ debootstrap-master/functions"

40
ressources/mailhog/debmaker Executable file
View File

@ -0,0 +1,40 @@
#!/bin/bash
VERSION=1.1.0
[ -e ./lib/function.sh ] && source ./lib/function.sh
APP=mailhog
DEPOT=https://github.com/mailhog/MailHog.git
GIT_VERSION=v$VERSION-beta1
DEB_VERSION=$VERSION-$(date +%Y%m%d%H%M)
DEBIAN_VERSION_CODENAME=bullseye
IMAGE_SIZE=2
STEP="envinit prebuild build makedeb"
envinit() {
apt-get update
apt-get dist-upgrade -y
apt install -y --no-install-recommends build-essential git wget ca-certificates dpkg fakeroot
wget -qO - https://go.dev/dl/go1.18.linux-amd64.tar.gz | tar -C /usr/local -xz
}
prebuild(){
[ -e /tmp/${APP} ] && rm -fr /tmp/${APP}
git clone --depth 1 -b ${GIT_VERSION} ${DEPOT} /tmp/${APP}
}
build() {
cd /tmp/${APP}
PATH=$PATH:/usr/local/go/bin
go build -o mailhog main.go
}
makedeb(){
PATH_DEB=/tmp/src/rootfs
cp /tmp/${APP}/mailhog ${PATH_DEB}/usr/bin/mailhog
sed -i "s/%VERSION%/$DEB_VERSION/" ${PATH_DEB}/DEBIAN/control
fakeroot dpkg-deb -Z gzip --build ${PATH_DEB} /tmp/dist
}

View File

@ -0,0 +1 @@
/etc/default/mailhog

View File

@ -0,0 +1,7 @@
Package: mailhog
Version: %VERSION%
Section: base
Priority: optional
Architecture: all
Maintainer: Thomas Legay <thomas@syngate.fr>
Description: mailhog

View File

@ -0,0 +1,4 @@
#!/bin/bash
id mailhog &> /dev/null || useradd mailhog -r -s /bin/false -d /

View File

@ -0,0 +1,4 @@
MH_AUTH_FILE=/etc/mailhog/passwd
MH_API_BIND_ADDR=127.0.0.1:8025
MH_UI_BIND_ADDR=127.0.0.1:8025
MH_SMTP_BIND_ADDR=172.16.1.247:1025

View File

@ -0,0 +1 @@
email-lanvin:$2y$10$vc.G.PfDFg/OCkvPif6/Q.ObkdNXnxAh5MfqCoHd/jVUEjKh/5Fxu

View File

@ -0,0 +1 @@

View File

@ -0,0 +1,37 @@
[Unit]
Description=service mailhog
Documentation=https://github.com/mautrix/MailHog
After=network.target
[Service]
User=mailhog
Group=mailhog
EnvironmentFile=/etc/default/mailhog
ExecStart=/usr/bin/mailhog
WorkingDirectory=/tmp
Restart=on-failure
RestartSec=30s
#ReadWritePaths=/tmp
NoNewPrivileges=yes
MemoryDenyWriteExecute=true
PrivateDevices=yes
PrivateTmp=yes
ProtectHome=yes
ProtectSystem=strict
ProtectControlGroups=true
RestrictSUIDSGID=true
RestrictRealtime=true
LockPersonality=true
ProtectKernelLogs=true
ProtectKernelTunables=true
ProtectHostname=true
ProtectKernelModules=true
PrivateUsers=true
ProtectClock=true
SystemCallArchitectures=native
SystemCallErrorNumber=EPERM
SystemCallFilter=@system-service
[Install]
WantedBy=multi-user.target