[arch-commits] Commit in postorius/trunk (5 files)
David Runge
dvzrv at archlinux.org
Sat Feb 1 23:52:07 UTC 2020
Date: Saturday, February 1, 2020 @ 23:52:07
Author: dvzrv
Revision: 561202
upgpkg: postorius 1.3.2-2: Changing to correct dir in uwsgi config. Patching global FHS paths in settings.py specifically.
Installing state dir and log dir more restrictively. Using .install file to explain post-install/upgrade steps.
Added:
postorius/trunk/postorius.install
Modified:
postorius/trunk/PKGBUILD
postorius/trunk/postorius-1.3.2-settings.patch
postorius/trunk/postorius.tmpfiles
postorius/trunk/postorius.uwsgi
--------------------------------+
PKGBUILD | 24 +++++++++++++++---------
postorius-1.3.2-settings.patch | 28 ++++++++++------------------
postorius.install | 9 +++++++++
postorius.tmpfiles | 6 ++++--
postorius.uwsgi | 5 +++--
5 files changed, 41 insertions(+), 31 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2020-02-01 23:24:40 UTC (rev 561201)
+++ PKGBUILD 2020-02-01 23:52:07 UTC (rev 561202)
@@ -2,7 +2,7 @@
pkgname=postorius
pkgver=1.3.2
-pkgrel=1
+pkgrel=2
pkgdesc="The New Mailman Web UI"
arch=('any')
url="https://gitlab.com/mailman/postorius"
@@ -12,10 +12,12 @@
makedepends=('python-setuptools')
checkdepends=('mailman3' 'python-beautifulsoup4' 'python-isort' 'python-mock'
'python-pytest' 'python-pytest-django' 'python-vcrpy')
-optdepends=('uwsgi-plugin-python: for running inside uwsgi')
+optdepends=('mailman3: for configuring a local mailman instance'
+ 'uwsgi-plugin-python: for running inside uwsgi')
replaces=('python-django-postorius')
backup=("etc/uwsgi/${pkgname}.ini"
"etc/webapps/${pkgname}/settings.py")
+install="${pkgname}.install"
source=("https://files.pythonhosted.org/packages/source/${pkgname::1}/${pkgname}/${pkgname}-${pkgver}.tar.gz"{,.asc}
"${pkgname}.sysusers"
"${pkgname}.tmpfiles"
@@ -24,9 +26,9 @@
sha512sums=('41ff225fa574dd4bd0ac88419a10a55a71c52a64df01a1a593963fdfa62baf16a0df735364688ea24680c8e88093841892474279d40c1428948375db7eb6333b'
'SKIP'
'3884b818da2deb148279e50316f720c95f0aaa529777b1b3662d8ab253cda823a90682a9eb47e941ca5ba80eefcb9a2d4afacd29f0340d7f9828b36ebcee23b3'
- '0be8c2bac3feb69519a8d7039002b43b7a705db638d7385b925a4c9fd6ba70d4707954872cabbe5fab2176f48d48fabd8f31338064bb630d02ad1380536915c4'
- 'f7ec287cac22679166398f53b6db440f0defa022554dd8997092b99eab972bb8ba8d158e7415da939645d2e5ff298e496eb46011c6391b9857e6405c9f0c2c47'
- '811d52a246d55c900ee07cdb7572410aebc7eff05261166287c196ae9994079ee3e925bbf5e539155ecf452328316ae8dac2176dfb4398df1acb519a2accf0b8')
+ '0fe9517bb56c241d38e97e0141e499480760b3c6e786e78a4e6f5825fc319a4b518649a2457a5a224e49decaeb0340cbb0929ec82d51b66afe9cce7f9d270f1d'
+ 'c042f00d0d8dc72dadd19023152e55246c4d7a4b9d53bca3a05e7b8cb38cac5116417440d4ae82350820c7cb0cd414dcce45fa6af9be19296c4ebd0862dba896'
+ '589b000789375a1669eaa165c904e27fec097802fca39b4469b61cac6b615031a2ca6ece63f32cfd78f91ef249b0b15ec43c6ce6130166e7c127ef3d717e02f2')
validpgpkeys=('541EA0448453394FF77A0ECC9D9B2BA061D0A67C') # Abhilash Raj <raj.abhilash1 at gmail.com>
prepare() {
@@ -52,7 +54,6 @@
package() {
cd "$pkgname-$pkgver"
- local python_stdlib_basepath="$(python -c "from sysconfig import get_path; print(get_path('stdlib'))")"
python setup.py install --skip-build \
--optimize=1 \
--prefix=/usr \
@@ -60,11 +61,16 @@
# django project
install -vDm 644 example_project/{__init__,manage,urls,wsgi}.py \
-t "${pkgdir}/usr/share/webapps/${pkgname}"
- # symlink locale and static files (instead of generating them)
- ln -svf "$python_stdlib_basepath/site-packages/${pkgname}/locale/" \
+ # symlink locale and static dirs to state dir
+ ln -svf "/var/lib//${pkgname}/locale/" \
"${pkgdir}/usr/share/webapps/${pkgname}"
- ln -svf "$python_stdlib_basepath/site-packages/${pkgname}/static/" \
+ ln -svf "/var/lib/${pkgname}/static/" \
"${pkgdir}/usr/share/webapps/${pkgname}"
+ # state dir
+ install -vdm 750 "${pkgdir}/var/lib/${pkgname}"
+ install -vdm 755 "${pkgdir}/var/lib/${pkgname}/"{locale,static}
+ # log dir
+ install -vdm 750 "${pkgdir}/var/log/${pkgname}"
# config
install -vDm 640 example_project/settings.py \
-t "${pkgdir}/etc/webapps/${pkgname}"
Modified: postorius-1.3.2-settings.patch
===================================================================
--- postorius-1.3.2-settings.patch 2020-02-01 23:24:40 UTC (rev 561201)
+++ postorius-1.3.2-settings.patch 2020-02-01 23:52:07 UTC (rev 561202)
@@ -1,39 +1,31 @@
-diff -ruN a/example_project/settings.py b/example_project/settings.py
---- a/example_project/settings.py 2019-04-22 07:45:09.000000000 +0200
-+++ b/example_project/settings.py 2020-01-13 23:13:35.505547214 +0100
-@@ -33,7 +33,7 @@
- from django.contrib.messages import constants as messages
-
-
--BASE_DIR = os.path.dirname(os.path.abspath(__file__))
-+BASE_DIR = '/'
-
-
- # Quick-start development settings - unsuitable for production
-@@ -136,7 +136,7 @@
+diff --git c/example_project/settings.py w/example_project/settings.py
+index c54af7e..d05535b 100644
+--- c/example_project/settings.py
++++ w/example_project/settings.py
+@@ -136,7 +136,7 @@ WSGI_APPLICATION = 'wsgi.application'
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
- 'NAME': os.path.join(BASE_DIR, 'postorius.db'),
-+ 'NAME': os.path.join(BASE_DIR, '/var/lib/', 'postorius.db'),
++ 'NAME': '/var/lib/postorius/postorius.db',
}
}
-@@ -180,7 +180,7 @@
+@@ -180,7 +180,7 @@ USE_TZ = True
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/var/www/example.com/static/"
-STATIC_ROOT = os.path.join(BASE_DIR, 'static')
-+STATIC_ROOT = os.path.join(BASE_DIR, '/usr/share/webapps/postorius', 'static')
++STATIC_ROOT = '/var/lib/postorius/static'
# URL prefix for static files.
# Example: "http://example.com/static/", "http://static.example.com/"
-@@ -259,7 +259,7 @@
+@@ -259,7 +259,7 @@ LOGGING = {
'level': 'INFO',
#'class': 'logging.handlers.RotatingFileHandler',
'class': 'logging.handlers.WatchedFileHandler',
- 'filename': os.path.join(BASE_DIR, 'logs', 'postorius.log'),
-+ 'filename': os.path.join(BASE_DIR, '/var/log/postorius/', 'postorius.log'),
++ 'filename': '/var/log/postorius/postorius.log',
'formatter': 'verbose',
},
},
Added: postorius.install
===================================================================
--- postorius.install (rev 0)
+++ postorius.install 2020-02-01 23:52:07 UTC (rev 561202)
@@ -0,0 +1,9 @@
+post_install() {
+ echo "Run the following to create/migrate the database:"
+ echo "sudo -u postorius django-admin migrate --pythonpath /usr/share/webapps/postorius/ --settings settings"
+}
+
+post_upgrade() {
+ echo "Run the following to update static files and compress them:"
+ echo "sudo -u postorius django-admin collectstatic --pythonpath /usr/share/webapps/postorius --settings settings"
+}
Modified: postorius.tmpfiles
===================================================================
--- postorius.tmpfiles 2020-02-01 23:24:40 UTC (rev 561201)
+++ postorius.tmpfiles 2020-02-01 23:52:07 UTC (rev 561202)
@@ -1,4 +1,6 @@
z /etc/webapps/postorius/settings.py 0640 root postorius -
-d %L/postorius - postorius postorius -
-d %S/postorius - postorius postorius -
+d %L/postorius 750 postorius postorius -
+d %S/postorius 750 postorius postorius -
+d %S/postorius/static - postorius postorius -
+d %S/postorius/locale - postorius postorius -
d %t/postorius - postorius postorius -
Modified: postorius.uwsgi
===================================================================
--- postorius.uwsgi 2020-02-01 23:24:40 UTC (rev 561201)
+++ postorius.uwsgi 2020-02-01 23:52:07 UTC (rev 561202)
@@ -11,7 +11,8 @@
cheaper-step = 1
idle = 120
die-on-idle = true
-chdir = /usr/share/webapps
-module = postorius.wsgi
+chdir = /usr/share/webapps/postorius
+module = wsgi
home = /
+touch-reload = %p
vacuum = true
More information about the arch-commits
mailing list