diff --git a/.pkgr.yml b/.pkgr.yml new file mode 100644 index 00000000000..9988ad4d3af --- /dev/null +++ b/.pkgr.yml @@ -0,0 +1,14 @@ +buildpack: "https://github.com/kr/heroku-buildpack-go.git" +targets: + ubuntu-14.04: +build_dependencies: + - mercurial + - bzr +dependencies: + - git +before: + - mv packager/Procfile . + - mv packager/.godir . +after: + - mv bin/main gogs +after_install: ./packager/debian/postinst diff --git a/packager/.godir b/packager/.godir new file mode 100644 index 00000000000..ba2906d0666 --- /dev/null +++ b/packager/.godir @@ -0,0 +1 @@ +main diff --git a/packager/Procfile b/packager/Procfile new file mode 100644 index 00000000000..efa00d25a9d --- /dev/null +++ b/packager/Procfile @@ -0,0 +1 @@ +web: ./gogs web diff --git a/packager/debian/postinst b/packager/debian/postinst new file mode 100755 index 00000000000..90ff2b46187 --- /dev/null +++ b/packager/debian/postinst @@ -0,0 +1,51 @@ +#!/bin/sh + +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-remove' +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + +APP_NAME="gogs" +CLI="${APP_NAME}" +APP_USER=$(${CLI} config:get APP_USER) +APP_GROUP=$(${CLI} config:get APP_GROUP) +APP_CONFIG="/etc/${APP_NAME}/conf/app.ini" + +# source debconf library +. /usr/share/debconf/confmodule + +case "$1" in + + configure) + mkdir -p $(dirname ${APP_CONFIG}) + chown ${APP_USER}.${APP_GROUP} $(dirname ${APP_CONFIG}) + [ -f ${APP_CONFIG} ] || ${CLI} run cp conf/app.ini ${APP_CONFIG} + ${CLI} config:set USER=${APP_USER} + ${CLI} config:set GOGS_CUSTOM="/etc/${APP_NAME}" + PORT=$(${CLI} config:get PORT || echo "6000") + sed -i "s|HTTP_PORT = 3000|HTTP_PORT = ${PORT}|" ${APP_CONFIG} + sed -i "s|RUN_USER = git|RUN_USER = ${APP_USER}|" ${APP_CONFIG} + sed -i "s|RUN_MODE = dev|RUN_MODE = prod|" ${APP_CONFIG} + + # scale + ${CLI} scale web=1 || true + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + exit 0 + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac