Add mailhog
This commit is contained in:
parent
81f42e2ee2
commit
cef422a4ea
|
@ -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"
|
||||||
|
|
|
@ -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
|
||||||
|
}
|
|
@ -0,0 +1 @@
|
||||||
|
/etc/default/mailhog
|
|
@ -0,0 +1,7 @@
|
||||||
|
Package: mailhog
|
||||||
|
Version: %VERSION%
|
||||||
|
Section: base
|
||||||
|
Priority: optional
|
||||||
|
Architecture: all
|
||||||
|
Maintainer: Thomas Legay <thomas@syngate.fr>
|
||||||
|
Description: mailhog
|
|
@ -0,0 +1,4 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
id mailhog &> /dev/null || useradd mailhog -r -s /bin/false -d /
|
||||||
|
|
|
@ -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
|
|
@ -0,0 +1 @@
|
||||||
|
email-lanvin:$2y$10$vc.G.PfDFg/OCkvPif6/Q.ObkdNXnxAh5MfqCoHd/jVUEjKh/5Fxu
|
|
@ -0,0 +1 @@
|
||||||
|
|
|
@ -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
|
Loading…
Reference in New Issue