Subject: [PATCH v3] testing/tlsrouter: new aport

From: Marvin Preuss <[email-masked]>
Date: Fri, 20 Aug 2021 09:21:51 +0200

forgot to call "default_prepare" in "prepare".

---
 testing/tlsrouter/APKBUILD              | 52 +++++++++++++++++++++++++
 testing/tlsrouter/go.mod                |  5 +++
 testing/tlsrouter/go.sum                |  2 +
 testing/tlsrouter/tlsrouter.confd       |  3 ++
 testing/tlsrouter/tlsrouter.initd       | 14 +++++++
 testing/tlsrouter/tlsrouter.pre-install |  8 ++++
 6 files changed, 84 insertions(+)
 create mode 100644 testing/tlsrouter/APKBUILD
 create mode 100644 testing/tlsrouter/go.mod
 create mode 100644 testing/tlsrouter/go.sum
 create mode 100644 testing/tlsrouter/tlsrouter.confd
 create mode 100644 testing/tlsrouter/tlsrouter.initd
 create mode 100644 testing/tlsrouter/tlsrouter.pre-install

diff --git a/testing/tlsrouter/APKBUILD b/testing/tlsrouter/APKBUILD
new file mode 100644
index 0000000000..db6993db2b
--- /dev/null
+++ b/testing/tlsrouter/APKBUILD
@@ -0,0 +1,52 @@
+# Contributor: Marvin Preuss <[email-masked]>
+# Maintainer: Marvin Preuss <[email-masked]>
+pkgname=tlsrouter
+pkgver=0_git20210817
+pkgrel=0
+_short_commit=b6bb9b5
+pkgdesc="tls proxy that routes connections to backends based on tls sni"
+url="https://github.com/inetaf/tcpproxy/tree/master/cmd/tlsrouter"
+arch="all"
+license="Apache-2.0"
+options="!check" # some tests are failing
+makedepends="go libcap"
+subpackages="$pkgname-openrc"
+install="$pkgname.pre-install"
+source="tlsrouter-$pkgver.tar.gz::https://github.com/inetaf/tcpproxy/tarball/$_short_commit
+	$pkgname.initd
+	$pkgname.confd
+	go.mod
+	go.sum
+	"
+builddir="$srcdir/inetaf-tcpproxy-$_short_commit/cmd/tlsrouter"
+
+export GOFLAGS="$GOFLAGS -modcacherw"
+
+build() {
+	go build .
+}
+
+prepare() {
+	default_prepare
+	cp "$srcdir/go.mod" "$builddir"
+	cp "$srcdir/go.sum" "$builddir"
+}
+
+package() {
+	install -Dm755 "$builddir/$pkgname" "$pkgdir/usr/bin/$pkgname"
+
+	install -Dm755 "$srcdir/$pkgname.initd" \
+		"$pkgdir/etc/init.d/$pkgname"
+
+	install -Dm644 "$srcdir/$pkgname.confd" \
+		"$pkgdir/etc/conf.d/$pkgname"
+
+	setcap cap_net_bind_service=+ep "$pkgdir/usr/bin/$pkgname"
+}
+sha512sums="
+668dff16cdd7078b2fa1e363743ff642ef5e4bff20a7f320d855b6db8e69fd70b940875251950ec332ada8d1d4eb79649c30729fdf8a501e4fb5d8abc456de10  tlsrouter-0_git20210817.tar.gz
+495b26eaba88b57f4e363b7e89e302ba73c89a38f69c3c299ba4dd3531e5a2231c92b90c11d79a0199fbe602059c43ad52ae3d6cdfe532b350a884a90b21983e  tlsrouter.initd
+7dde09a46fa706fc7ef511c034bd8e1cb58a29d55320cc5fae9fdd6a5dc053948cb28ef76f1f8893edd656a3b99dd222a54f660b12a220011fcb949c1f64874c  tlsrouter.confd
+aa271f389bb13defd50234623e03ae4246db5a3c5fc81fa40f02f277b9cec1b463e61bd44151ffbfae5f579087d89da9d91cf2e54db8a011c0e3c6bb46933aae  go.mod
+c9c7f86b7810aa098cc8dd5137502ec7683dc8141db07bc1dc0977b55f56adc2205219b76af96805a2d4ab7817a32f09f85df117e0179460a22a268f11f0e68c  go.sum
+"
diff --git a/testing/tlsrouter/go.mod b/testing/tlsrouter/go.mod
new file mode 100644
index 0000000000..1aac78ca5b
--- /dev/null
+++ b/testing/tlsrouter/go.mod
@@ -0,0 +1,5 @@
+module tlsrouter
+
+go 1.16
+
+require github.com/armon/go-proxyproto v0.0.0-20210323213023-7e956b284f0a
diff --git a/testing/tlsrouter/go.sum b/testing/tlsrouter/go.sum
new file mode 100644
index 0000000000..de51fb1c3d
--- /dev/null
+++ b/testing/tlsrouter/go.sum
@@ -0,0 +1,2 @@
+github.com/armon/go-proxyproto v0.0.0-20210323213023-7e956b284f0a h1:AP/vsCIvJZ129pdm9Ek7bH7yutN3hByqsMoNrWAxRQc=
+github.com/armon/go-proxyproto v0.0.0-20210323213023-7e956b284f0a/go.mod h1:QmP9hvJ91BbJmGVGSbutW19IC0Q9phDCLGaomwTJbgU=
diff --git a/testing/tlsrouter/tlsrouter.confd b/testing/tlsrouter/tlsrouter.confd
new file mode 100644
index 0000000000..3332390b62
--- /dev/null
+++ b/testing/tlsrouter/tlsrouter.confd
@@ -0,0 +1,3 @@
+# tlsrouter options
+
+tlsrouter_opts="-conf /etc/tlsrouter/tlsrouter.conf -listen :443"
diff --git a/testing/tlsrouter/tlsrouter.initd b/testing/tlsrouter/tlsrouter.initd
new file mode 100644
index 0000000000..3f2bfa3388
--- /dev/null
+++ b/testing/tlsrouter/tlsrouter.initd
@@ -0,0 +1,14 @@
+#!/sbin/openrc-run
+
+supervisor=supervise-daemon
+
+name=tlsrouter
+command="/usr/bin/tlsrouter"
+command_args="$tlsrouter_opts"
+command_user="tlsrouter"
+start_stop_daemon_args="--quiet"
+
+depend() {
+	need net
+	after firewall
+}
diff --git a/testing/tlsrouter/tlsrouter.pre-install b/testing/tlsrouter/tlsrouter.pre-install
new file mode 100644
index 0000000000..e8bec36487
--- /dev/null
+++ b/testing/tlsrouter/tlsrouter.pre-install
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+addgroup -S tlsrouter 2>/dev/null
+adduser -S -D -h /var/lib/tlsrouter -s /sbin/nologin -G tlsrouter -g tlsrouter tlsrouter 2>/dev/null
+mkdir -p /etc/tlsrouter 2>/dev/null
+chown tlsrouter:tlsrouter /etc/tlsrouter 2>/dev/null
+
+exit 0
-- 
2.33.0