blueprints.git

commit 71606027e36c28ceb73e93bed64b3c08863223eb

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"