summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Shumaker <LukeShu@sbcglobal.net>2011-12-04 15:31:43 -0500
committerLuke Shumaker <LukeShu@sbcglobal.net>2011-12-04 15:31:43 -0500
commit0e6ded19c27c847d49f76fc4391840f727379ff3 (patch)
treef201e7b3f46aad31bed26060a8652fd40e09abf9
Create a PKGBUILD to take care of maintaining parabolaweb.
-rw-r--r--PKGBUILD42
-rw-r--r--parabolaweb.install59
2 files changed, 101 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 0000000..9b2614e
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,42 @@
+# Maintainer: Luke Shumaker <lukeshu@sbcglobal.net>
+
+pkgname=parabolaweb-git
+pkgver=20111204
+pkgrel=1
+pkgdesc="The Parabola website, fork of archweb"
+arch=('any')
+url="https://projects.parabolagnulinux.org/parabolaweb.git/"
+license=('GPL2')
+depends=('python2' 'git'
+ 'django=1.3.1'
+ 'python-markdown=2.0.3'
+ 'python-south=0.7.3'
+ 'python2-pyinotify=0.9.2'
+ 'python-memcached=1.47'
+ 'python2-pytz>=2011n'
+
+ 'python2-psycopg2'
+)
+install=parabolaweb.install
+
+# These will make it install into /http/srv/web
+_install_dir=/srv/http
+_gitname=web
+
+_gitroot=https://projects.parabolagnulinux.org/parabolaweb.git
+_gitbranch="master"
+
+build() {
+ sed -i \
+ -e "s|^_install_dir=.*|_install_dir='$_install_dir'|" \
+ -e "s|^_gitname=.*|_gitname='$_gitname'|" \
+ -e "s|^_gitroot=.*|_gitroot='$_gitroot'|" \
+ -e "s|^_gitbranch=.*|_gitbranch='$_gitbranch'|" \
+ ../parabolaweb.install
+}
+
+package() {
+ install -d "${pkgdir}/${_install_dir}"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/parabolaweb.install b/parabolaweb.install
new file mode 100644
index 0000000..1cff041
--- /dev/null
+++ b/parabolaweb.install
@@ -0,0 +1,59 @@
+# These will make it install into /http/srv/web
+_install_dir='/srv/http'
+_gitname='web'
+
+_gitroot='https://projects.parabolagnulinux.org/parabolaweb.git'
+_gitbranch='master'
+
+msg() {
+ echo $@
+}
+
+_main() {
+ set -e
+ if [ ! -d "$_install_dir" ]; then
+ mkdir "$_install_dir"
+ fi
+ cd "$_install_dir"
+
+ msg "Connecting to GIT server...."
+
+ if [ -d ${_gitname} ] ; then
+ cd ${_gitname}
+ git pull ${_gitroot}
+ msg "The local files are updated."
+ else
+ git clone ${_gitroot} ${_gitname}
+ cd ${_gitname}
+ fi
+ git checkout ${_gitbranch}
+
+ msg "GIT checkout done or server timeout"
+
+ msg "Checking configuration...."
+
+ if [ ! -f local_settings.py ]; then
+ cp local_settings.py.example local_settings.py.tmp
+ $EDITOR local_settings.py.tmp || return 0
+ mv local_settings.py.tmp local_settings.py
+ msg "Creating database...."
+ ./manage.py syncdb
+ fi
+
+ find . -name '*.pyc' -delete
+ ./manage.py migrate
+ ./manage.py loaddata */fixtures/*.json
+}
+
+# arg 1: the new package version
+post_install() {
+ _main
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ _main
+}
+
+# vim:set ts=2 sw=2 et: