diff options
author | Carlo Landmeter <clandmeter@alpinelinux.org> | 2018-01-30 23:40:17 +0000 |
---|---|---|
committer | Carlo Landmeter <clandmeter@alpinelinux.org> | 2018-01-30 23:40:17 +0000 |
commit | d0d2c8164b2266ac86642397ba19baed2e6a5f55 (patch) | |
tree | 772b71c461dd0dba2ae02a960212bfaa11dc6d9f /community/patchwork | |
parent | 8b198b0998db2476459d39307b6b2996737a4298 (diff) | |
download | aports-d0d2c8164b2266ac86642397ba19baed2e6a5f55.tar.bz2 aports-d0d2c8164b2266ac86642397ba19baed2e6a5f55.tar.xz |
main/patchwork: move to community
Diffstat (limited to 'community/patchwork')
6 files changed, 208 insertions, 0 deletions
diff --git a/community/patchwork/0001-pwclient-set-default-url-to-alpine-patchwork.patch b/community/patchwork/0001-pwclient-set-default-url-to-alpine-patchwork.patch new file mode 100644 index 0000000000..511e9042f1 --- /dev/null +++ b/community/patchwork/0001-pwclient-set-default-url-to-alpine-patchwork.patch @@ -0,0 +1,25 @@ +From 304b9f210a6edccc33b5ead321b43f02884aca62 Mon Sep 17 00:00:00 2001 +From: Carlo Landmeter <clandmeter@gmail.com> +Date: Thu, 23 Apr 2015 10:01:18 +0200 +Subject: [PATCH] pwclient set default url to alpine patchwork + +--- + apps/patchwork/bin/pwclient | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/apps/patchwork/bin/pwclient b/apps/patchwork/bin/pwclient +index 2a80981..b1adad3 100755 +--- a/apps/patchwork/bin/pwclient ++++ b/apps/patchwork/bin/pwclient +@@ -35,7 +35,7 @@ import re + # This script will check the PW_XMLRPC_URL environment variable + # for the URL to access. If that is unspecified, it will fallback to + # the hardcoded default value specified here. +-DEFAULT_URL = "http://patchwork/xmlrpc/" ++DEFAULT_URL = "http://patchwork.alpinelinux.org/xmlrpc/" + CONFIG_FILE = os.path.expanduser('~/.pwclientrc') + + class Filter: +-- +2.3.5 + diff --git a/community/patchwork/0001-support-busybox-readlink.patch b/community/patchwork/0001-support-busybox-readlink.patch new file mode 100644 index 0000000000..3918b58f0e --- /dev/null +++ b/community/patchwork/0001-support-busybox-readlink.patch @@ -0,0 +1,13 @@ +diff --git a/patchwork/bin/parsemail.sh b/patchwork/bin/parsemail.sh +index a742f60e54..14a608616c 100755 +--- a/patchwork/bin/parsemail.sh ++++ b/patchwork/bin/parsemail.sh +@@ -20,7 +20,7 @@ + # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + BIN_DIR=$(dirname "$0") +-PATCHWORK_BASE=$(readlink -e "$BIN_DIR/../..") ++PATCHWORK_BASE=$(readlink -f "$BIN_DIR/../..") + + if [ -z "$PW_PYTHON" ]; then + PW_PYTHON=python2 diff --git a/community/patchwork/0002-remove-uneeded-bashism-from-tools-and-change-path.patch b/community/patchwork/0002-remove-uneeded-bashism-from-tools-and-change-path.patch new file mode 100644 index 0000000000..858568f7be --- /dev/null +++ b/community/patchwork/0002-remove-uneeded-bashism-from-tools-and-change-path.patch @@ -0,0 +1,29 @@ +diff --git a/tools/patchwork-update-commits b/tools/patchwork-update-commits +index c84a6305e3..2d34f4f9a9 100755 +--- a/tools/patchwork-update-commits ++++ b/tools/patchwork-update-commits +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + # + # Patchwork - automated patch tracking system + # Copyright (C) 2010 Jeremy Kerr <jk@ozlabs.org> +diff --git a/tools/post-receive.hook b/tools/post-receive.hook +index 8098ce825a..b8a1fd2f2a 100755 +--- a/tools/post-receive.hook ++++ b/tools/post-receive.hook +@@ -1,4 +1,4 @@ +-#!/bin/bash ++#!/bin/sh + # Patchwork - automated patch tracking system + # Copyright (C) 2010 martin f. krafft <madduck@madduck.net> + # +@@ -21,7 +21,7 @@ + # Git post-receive hook to update Patchwork patches after Git pushes + set -eu + +-PW_DIR=/opt/patchwork/patchwork ++PW_DIR=/usr/share/webapps/patchwork/patchwork + + #TODO: the state map should really live in the repo's git-config + STATE_MAP="refs/heads/master:Accepted" diff --git a/community/patchwork/APKBUILD b/community/patchwork/APKBUILD new file mode 100644 index 0000000000..787d0f3012 --- /dev/null +++ b/community/patchwork/APKBUILD @@ -0,0 +1,82 @@ +# Con#tributor: Francesco Colista <fcolista@alpinelinux.org> +# Maintainer: Francesco Colista <fcolista@alpinelinux.org> +pkgname=patchwork +pkgver=2.0.1 +pkgrel=0 +pkgdesc="Web-based patch tracking system" +url="https://github.com/getpatchwork/patchwork" +arch="noarch" +license="GPL" +depends="py-django py-django-registration git py-psycopg2" +subpackages="$pkgname-doc $pkgname-uwsgi-apache2:apache2_wsgi $pkgname-uwsgi-nginx:nginx_wsgi $pkgname-mysql + $pkgname-postgresql pwclient:pwclient" +source="$pkgname-$pkgver.tar.gz::https://github.com/getpatchwork/$pkgname/archive/v$pkgver.tar.gz + 0001-support-busybox-readlink.patch + 0002-remove-uneeded-bashism-from-tools-and-change-path.patch + nginx-uwsgi-patchwork-conf.ini + nginx-patchwork.conf" + +builddir="$srcdir"/$pkgname-$pkgver + +build() { + cd "$builddir" + return 0 +} + +package() { + cd "$builddir" + mkdir -p "$pkgdir"/usr/share/webapps/$pkgname + install -Dm644 COPYING \ + "$pkgdir"/usr/share/doc/$pkgname/COPYING + rm -f COPYING + install -Dm644 patchwork/settings/production.example.py \ + "$pkgdir"/etc/$pkgname/production.py + mv * "$pkgdir"/usr/share/webapps/$pkgname + cd "$pkgdir"/usr/share/webapps/patchwork/patchwork/settings + ln -sf /etc/patchwork/production.py +} + +apache2_wsgi() { + pkgdesc="$pkgname apache2 wsgi support" + depends="apache2 apache2-mod-wsgi" + replaces="$pkgname-apache2-wsgi" + install_if="$pkgname=$pkgver-r$pkgrel apache2-mod-wsgi" + install -Dm644 "$pkgdir"/usr/share/webapps/patchwork/lib/apache2/patchwork.wsgi.conf \ + "$subpkgdir"/etc/apache2/conf.d/patchwork.wsgi.conf +} + +nginx_wsgi() { + pkgdesc="$pkgname nginx wsgi support" + depends="nginx uwsgi-python" + replaces="$pkgname-nginx_wsgi" + install_if="nginx patchwork uwsgi" + install -Dm644 "$srcdir"/nginx-patchwork.conf \ + "$subpkgdir"/etc/nginx/conf.d/patchwork.conf + install -Dm644 "$srcdir"/nginx-uwsgi-patchwork-conf.ini \ + "$subpkgdir"/etc/uwsgi/conf.d/patchwork.ini +} + +mysql() { + pkgdesc="$pkgname mysql support" + depends="py-mysqldb" + mkdir -p "$subpkgdir" +} + +postgresql() { + pkgdesc="$pkgname postgresql support" + depends="py-psycopg2" + mkdir -p "$subpkgdir" +} + +pwclient() { + pkgdesc="command-line client for patchwork" + depends="python2" + install -Dm775 "$pkgdir"/usr/share/webapps/patchwork/patchwork/bin/pwclient \ + "$subpkgdir"/usr/bin/pwclient +} + +sha512sums="95dcfcdf19de0a65a77ab4274de82457c969e3a65705da25cbec742e4d6671e51e629d5366d47ee510a1ac622afde3e2637fa4a013fd576a66808be75a7e84b5 patchwork-2.0.1.tar.gz +5facc2c2620b2d614011bcdc06bb481fb1481c79333579e5a7fa5b8bc4f97d1651cc8c4632a5e150b62674d64c00345341229319f1edb2016721868e84146826 0001-support-busybox-readlink.patch +f6d3590b3ac53797e0ae25fe50ab0935608be5ded44665599cbc91e93558895eddc6a7a717153d81fc194b314d7854686577ef5ecf9e0302b7824ce3b3863f7b 0002-remove-uneeded-bashism-from-tools-and-change-path.patch +28911a25e00a254237f7214fb681e5e984a2eae331e610be62967d5e246958e0f8d3f84861d8fd17c1190c1df72a25f28ddb33843b3679a3864beb00cb4b4961 nginx-uwsgi-patchwork-conf.ini +862dd2522236a0b18d2a8d06f1ad91ad0fd0936fa502d95e09556641e67d42e1212821bfd7fb98923e4fe8b8a7369ded8c23831fb496b1e2833d9831c1b23725 nginx-patchwork.conf" diff --git a/community/patchwork/nginx-patchwork.conf b/community/patchwork/nginx-patchwork.conf new file mode 100644 index 0000000000..575bc3e0ba --- /dev/null +++ b/community/patchwork/nginx-patchwork.conf @@ -0,0 +1,33 @@ +server { + listen 80; + server_name domain.tld; + access_log /var/log/nginx/patchwork.log; + error_log /var/log/nginx/patchwork-error.log; + + tcp_nopush on; + tcp_nodelay on; + keepalive_timeout 65; + types_hash_max_size 2048; + + gzip on; + gzip_proxied any; + gzip_types text/plain text/css text/javascript application/x-javascript + text/xml application/xml image/svg+xml + application/vnd.ms-fontobject application/x-font-ttf font/opentype; + + location = favicon.ico { + access_log off; + log_not_found off; + } + + location /static { + alias /usr/share/webapps/patchwork/htdocs; + expires 3h; + } + + location / { + include uwsgi_params; + uwsgi_pass unix:/run/uwsgi/patchwork.sock; + uwsgi_modifier1 30; + } +} diff --git a/community/patchwork/nginx-uwsgi-patchwork-conf.ini b/community/patchwork/nginx-uwsgi-patchwork-conf.ini new file mode 100644 index 0000000000..2f76b80ddf --- /dev/null +++ b/community/patchwork/nginx-uwsgi-patchwork-conf.ini @@ -0,0 +1,26 @@ +[uwsgi] +project = patchwork +base = /usr/share/webapps +user = nginx +group = www-data + +chdir = %(base)/%(project) +pythonpath = %(base)/%(project) +module = %(project).wsgi:application +wsgi-file = %(project)/wsgi.py +plugins = python + +master = true +processes = 4 +# increase buffer size to avoid "502 bad gateway error" +# "recv() failed (104: Connection reset by peer) while reading response header from upstream" +buffer-size = 16384 + +uid = %(user) +gid = %(group) + +daemonize = /var/log/%(project).log +socket = /run/uwsgi/%(project).sock +chown-socket = nginx:www-data +chmod-socket = 665 +vacuum = true |