From 14f16d6c2e8db1d99268c44a59aa86132c00eca3 Mon Sep 17 00:00:00 2001 From: Thorben Date: Wed, 9 May 2018 16:52:51 +0200 Subject: snap-packaging for gitea (#2568) * Modify tbraeutigam/gogs-snap for gitea * Fix building on 16.04 (manually build go-bindata). -> add _source.tar.bz2 to .gitignore (used by snapcraft cleanbuild) * Streamline Snap packaging: - Take advantage of install-hooks (snapd 2.27) - Use snapctl configuration storage for unchanging values * Move to using Snap Hooks for configuration * Missed re-adding daemon statement * Fix two warnings from Codacy. --- snap/hooks/configure | 3 +++ snap/hooks/install | 45 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100755 snap/hooks/configure create mode 100755 snap/hooks/install (limited to 'snap/hooks') diff --git a/snap/hooks/configure b/snap/hooks/configure new file mode 100755 index 0000000000..fd7bc3da18 --- /dev/null +++ b/snap/hooks/configure @@ -0,0 +1,3 @@ +#!/bin/bash + +$SNAP/bin/gconfig configure diff --git a/snap/hooks/install b/snap/hooks/install new file mode 100755 index 0000000000..dea6c268fb --- /dev/null +++ b/snap/hooks/install @@ -0,0 +1,45 @@ +#!/bin/bash + +export SDATA=$(echo $SNAP_DATA | sed "s|$SNAP_REVISION|current|") +export SCOMMON="$SNAP_COMMON" +export isRoot=`true` +snapctl set gitea.snap.workdir="$SDATA/custom" +snapctl set gitea.snap.custom="$SCOMMON" + +function mkDirCommon(){ + for dir in $@; do + mkdir -p "$SCOMMON/$dir" + done +} + +function mkdirData(){ + for dir in $@; do + mkdir -p "$SDATA/$dir" + if [ -d $SNAP/$dir ]; then + cp -r --preserve=mode \ + $SNAP/$dir/* \ + $SNAP/$dir/.[a-zA-Z0-9-]* \ + $SDATA/$dir/ 2> $SCOMMON/log/snap-mkdirData.log + fi + done +} + +mkDirCommon pictures \ + repositories \ + attachments \ + data \ + log + +mkdirData certs \ + sshkeytest \ + custom/conf \ + static/templates \ + static/scripts \ + static/public + +[[ -f $SNAP_COMMON/conf/app.ini ]] || $SNAP/bin/gconfig install + +# Configure Git to use the right templates +mkdir -p $SDATA/git/ +cp -r --preserve=mode $SNAP/usr/share/git-core/templates $SDATA/git/ +$SNAP/usr/bin/git config --global init.templateDir $SDATA/git/templates/ -- cgit v1.2.3