~alpine/aports

testing/tlsrouter: new aport v4 REJECTED

Leo: 1
 testing/tlsrouter: new aport
Marvin Preuss: 1
 testing/tlsrouter: new aport

 8 files changed, 88 insertions(+), 2 deletions(-)
i tried to add this but `abuild -r` throws this:

```
localhost:~/wip/aports/testing/tlsrouter$ abuild -r
> >> tlsrouter: Building testing/tlsrouter 0_git20210817-r0 (using abuild 3.8.0_rc4-r0) started Mon, 23 Aug 2021 07:36:00 +0000
> >> tlsrouter: Checking sanity of /home/marv/wip/aports/testing/tlsrouter/APKBUILD...
> >> tlsrouter: Analyzing dependencies...
> >> tlsrouter: Installing for build: build-base go libcap
WARNING: Ignoring /home/marv/packages//main: No such file or directory
(1/2) Installing libcap (2.53-r0)
(2/2) Installing .makedepends-tlsrouter (20210823.073601)
Executing busybox-1.33.1-r5.trigger
OK: 1594 MiB in 215 packages
> >> tlsrouter: Cleaning up srcdir
> >> tlsrouter: Cleaning up pkgdir
> >> tlsrouter: Fetching tlsrouter-0_git20210817.tar.gz::https://github.com/inetaf/tcpproxy/tarball/b6bb9b5
> >> tlsrouter: Fetching tlsrouter-0_git20210817.tar.gz::https://github.com/inetaf/tcpproxy/tarball/b6bb9b5
> >> tlsrouter: Checking sha512sums...
tlsrouter-0_git20210817.tar.gz: OK
tlsrouter.initd: OK
tlsrouter.confd: OK
go.mod: OK
go.sum: OK
> >> tlsrouter: Unpacking /var/cache/distfiles/tlsrouter-0_git20210817.tar.gz...
> >> tlsrouter: Entering fakeroot...
install: can't change ownership of /home/marv/wip/aports/testing/tlsrouter/pkg/tlsrouter/etc/tlsrouter: Permission denied
> >> ERROR: tlsrouter*: package failed
> >> ERROR: tlsrouter: rootpkg failed
> >> tlsrouter: Uninstalling dependencies...
(1/2) Purging .makedepends-tlsrouter (20210823.073601)
(2/2) Purging libcap (2.53-r0)
Executing busybox-1.33.1-r5.trigger
OK: 1594 MiB in 213 packages
```

-- 
via https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/24498#note_176195
can't reproduce it here, using docker-abuilde

-- 
via https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/24498#note_176201
Export patchset (mbox)
How do I use this?

Copy & paste the following snippet into your terminal to import this patchset into git:

curl -s https://lists.alpinelinux.org/~alpine/aports/patches/3621/mbox | git am -3
Learn more about email & git

[PATCH v4] testing/tlsrouter: new aport Export this patch

set prepare in the chronological order like leo suggested: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/24423#note_176100

---
 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..9383ff46a2
--- /dev/null
+++ b/testing/tlsrouter/APKBUILD
@@ -0,0 +1,52 @@
# Contributor: Marvin Preuss <marvin@xsteadfastx.org>
# Maintainer: Marvin Preuss <marvin@xsteadfastx.org>
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"

prepare() {
	default_prepare
	cp "$srcdir/go.mod" "$builddir"
	cp "$srcdir/go.sum" "$builddir"
}

build() {
	go build .
}

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

Re: [PATCH v4] testing/tlsrouter: new aport Export this patch

Please apply:

```diff
diff --git a/testing/tlsrouter/APKBUILD b/testing/tlsrouter/APKBUILD
index 9383ff46a2..e8086af58d 100644
--- a/testing/tlsrouter/APKBUILD
+++ b/testing/tlsrouter/APKBUILD
@@ -11,6 +11,8 @@ license="Apache-2.0"
options="!check" # some tests are failing
makedepends="go libcap"
subpackages="$pkgname-openrc"
pkgusers="tlsrouter"
pkggroups="tlsrouter"
install="$pkgname.pre-install"
source="tlsrouter-$pkgver.tar.gz::https://github.com/inetaf/tcpproxy/tarball/$_short_commit
	$pkgname.initd
@@ -41,6 +43,8 @@ package() {
	install -Dm644 "$srcdir/$pkgname.confd" \
		"$pkgdir/etc/conf.d/$pkgname"

	install -d -m644 -o tlsrouter -g tlsrouter "$pkgdir"/etc/tlsrouter

	setcap cap_net_bind_service=+ep "$pkgdir/usr/bin/$pkgname"
}
sha512sums="
diff --git a/testing/tlsrouter/tlsrouter.pre-install b/testing/tlsrouter/tlsrouter.pre-install
index e8bec36487..f1821892ca 100644
--- a/testing/tlsrouter/tlsrouter.pre-install
+++ b/testing/tlsrouter/tlsrouter.pre-install
@@ -2,7 +2,5 @@

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
```

-- 
via https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/24498#note_176179
i tried to add this but `abuild -r` throws this:

```
localhost:~/wip/aports/testing/tlsrouter$ abuild -r
> >> tlsrouter: Building testing/tlsrouter 0_git20210817-r0 (using abuild 3.8.0_rc4-r0) started Mon, 23 Aug 2021 07:36:00 +0000
> >> tlsrouter: Checking sanity of /home/marv/wip/aports/testing/tlsrouter/APKBUILD...
> >> tlsrouter: Analyzing dependencies...
> >> tlsrouter: Installing for build: build-base go libcap
WARNING: Ignoring /home/marv/packages//main: No such file or directory
(1/2) Installing libcap (2.53-r0)
(2/2) Installing .makedepends-tlsrouter (20210823.073601)
Executing busybox-1.33.1-r5.trigger
OK: 1594 MiB in 215 packages
> >> tlsrouter: Cleaning up srcdir
> >> tlsrouter: Cleaning up pkgdir
> >> tlsrouter: Fetching tlsrouter-0_git20210817.tar.gz::https://github.com/inetaf/tcpproxy/tarball/b6bb9b5
> >> tlsrouter: Fetching tlsrouter-0_git20210817.tar.gz::https://github.com/inetaf/tcpproxy/tarball/b6bb9b5
> >> tlsrouter: Checking sha512sums...
tlsrouter-0_git20210817.tar.gz: OK
tlsrouter.initd: OK
tlsrouter.confd: OK
go.mod: OK
go.sum: OK
> >> tlsrouter: Unpacking /var/cache/distfiles/tlsrouter-0_git20210817.tar.gz...
> >> tlsrouter: Entering fakeroot...
install: can't change ownership of /home/marv/wip/aports/testing/tlsrouter/pkg/tlsrouter/etc/tlsrouter: Permission denied
> >> ERROR: tlsrouter*: package failed
> >> ERROR: tlsrouter: rootpkg failed
> >> tlsrouter: Uninstalling dependencies...
(1/2) Purging .makedepends-tlsrouter (20210823.073601)
(2/2) Purging libcap (2.53-r0)
Executing busybox-1.33.1-r5.trigger
OK: 1594 MiB in 213 packages
```

-- 
via https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/24498#note_176195