Author: Adam <git@apiote.xyz>
honk
honk/Dockerfile | 9 +++++++++ honk/build.sh | 38 ++++++++++++++++++++++++++++++++++++++
diff --git a/honk/Dockerfile b/honk/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..46103e28292be128860da5d479b9230ae8e89edf --- /dev/null +++ b/honk/Dockerfile @@ -0,0 +1,9 @@ +FROM alpine +RUN apk add mercurial go openssh-client make +WORKDIR /root +RUN mkdir .ssh +COPY ssh_key .ssh/id_ed25519 +COPY known_hosts .ssh/known_hosts +COPY build.sh build.sh +RUN chmod 755 build.sh +ENTRYPOINT ["./build.sh"] diff --git a/honk/build.sh b/honk/build.sh new file mode 100755 index 0000000000000000000000000000000000000000..cfd38278a9b23f9ab2729566c6b16f6214ff9c5d --- /dev/null +++ b/honk/build.sh @@ -0,0 +1,38 @@ +#!/bin/sh + +set -ex + +item="$1" + +DATE=$(date '+%Y%m%dT%H%M') + +hg clone https://humungus.tedunangst.com/r/honk +cd honk +TAG=$(hg tags | head -n2 | tail -n1 | cut -d ' ' -f1) +hg checkout "$TAG" +make +mkdir "honk-$TAG" +cp honk "honk-$TAG/" +cp -r views "honk-$TAG/" +tar cf honk.tar "honk-$TAG/" +# memes/ -> ręcznie # how does it still work? +# honk.db -> ręcznie +# blob.db -> ręcznie + +# custom css (views/local.css) +# honk backup to backup +# honk cleanup in cron + +scp ./honk.tar "deploy@host.containers.internal:toys/honk/${item}/honk-${TAG}.tar" +ssh deploy@host.containers.internal "cp ~/toys/honk/${item}/honk-${TAG}.tar /tmp/honk.tar" +ssh deploy@host.containers.internal "cd /tmp; tar xf honk.tar" +ssh deploy@host.containers.internal "chmod -R a+rwX /tmp/honk-${TAG}" +ssh deploy@host.containers.internal "mv /tmp/honk-${TAG} /tmp/honk-release" +ssh deploy@host.containers.internal "doas cp /tmp/honk-release/honk /usr/bin/honk" +ssh deploy@host.containers.internal "rm -rf /usr/share/honk/views" +ssh deploy@host.containers.internal "doas cp -r /tmp/honk-release/views /usr/share/honk/" +ssh deploy@host.containers.internal "rm /tmp/honk-release" +ssh deploy@host.containers.internal "doas -u www doas /etc/init.d/honk stop" +ssh deploy@host.containers.internal "doas -u www honk -datadir /usr/share/honk/ backup /usr/share/honk/backup/" +ssh deploy@host.containers.internal "doas -u www honk -datadir /usr/share/honk/ upgrade" +ssh deploy@host.containers.internal "doas -u www doas /etc/init.d/honk start"