Accepting request 133409 from home:jimfunk

Web application container server that speaks it's own uwsgi protocol in addition to HTTP. Mainly used in conjunction with Nginx and Python, but supports other servers and languages as well.

OBS-URL: https://build.opensuse.org/request/show/133409
OBS-URL: https://build.opensuse.org/package/show/server:http/uwsgi?expand=0&rev=1
This commit is contained in:
Ismail Dönmez 2012-09-10 10:57:08 +00:00 committed by Git OBS Bridge
commit a5f0e22c8a
13 changed files with 860 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

35
README.openSUSE Normal file
View File

@ -0,0 +1,35 @@
====================
openSUSE uWSGI Notes
====================
Emperor Mode
------------
The included init script runs uWSGI in Emperor mode. It will monitor the
/etc/uwsgi/vassals directory for configurations and will automatically load
and restart uWSGI processes when configuration files are placed there or
modified. Some example configurations are provided in the directory. To enable
one, rename it without the .example at the end and edit for your application.
For more information on Emperor mode, see
http://projects.unbit.it/uwsgi/wiki/Emperor
Plugins
-------
This uWSGI package is fully modular. Some plugins, such as the Python plugin,
are not embedded in the main server binary.
This means that your application configurations need to specify the plugins it
uses. For example, a Python application will need the following option
specified:
plugins = python
Alternatively, uWSGI has a autoload option that will load any plugins when it
encounters options for those plugins in the configuration. To enable that, use
the following in the configuration:
autoload = 1

9
django.ini.example Normal file
View File

@ -0,0 +1,9 @@
[uwsgi]
socket = 127.0.0.1:3034
threads = 40
master = 1
autoload = 1
env = DJANGO_SETTINGS_MODULE=myapp.settings
module = django.core.handlers.wsgi:WSGIHandler()
chdir = /srv/djangoapp001

5
opensuse.ini.in Normal file
View File

@ -0,0 +1,5 @@
[uwsgi]
inherit = base
plugin_dir = @@LIBDIR@@/uwsgi
embedded_plugins = null
plugins = @@PLUGINS@@

10
rails.yml.example Normal file
View File

@ -0,0 +1,10 @@
uwsgi:
plugins: rack
rack: config.ru
master: 1
autoload: 1
processes: 8
socket: 127.0.0.1:3033
post-buffering: 4096
chdir: /srv/railsapp001

8
trac.ini.example Normal file
View File

@ -0,0 +1,8 @@
[uwsgi]
master = true
autoload = true
processes = 2
module = trac.web.main:dispatch_request
env = TRAC_ENV=/srv/project001
socket = 127.0.0.1:3032

View File

@ -0,0 +1,11 @@
--- a/uwsgiconfig.py
+++ b/uwsgiconfig.py
@@ -902,7 +902,7 @@ def build_plugin(path, uc, cflags, ldfla
except:
pass
- plugin_dest = uc.get('plugin_dir') + '/' + name + '_plugin'
+ plugin_dest = name + '_plugin'
shared_flag = '-shared'

3
uwsgi-1.2.6.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:49d2fbedbd42b3c95a684f7ddf43302f881297f3614c7edd0af4a4c44e2032a5
size 515869

26
uwsgi.changes Normal file
View File

@ -0,0 +1,26 @@
-------------------------------------------------------------------
Sun Sep 9 19:11:43 UTC 2012 - jfunk@funktronics.ca
- Don't attempt to build Erlang plugins on openSUSE < 12.2
- Don't attempt to build Greenlet plugin on openSUSE < 12.1
-------------------------------------------------------------------
Sun Sep 9 18:56:43 UTC 2012 - jfunk@funktronics.ca
- Don't attempt to build Ruby 1.9 features on openSUSE < 12.2
-------------------------------------------------------------------
Sun Sep 9 00:19:40 UTC 2012 - jfunk@funktronics.ca
- Fix JVM build on i586
-------------------------------------------------------------------
Sat Sep 8 23:17:30 UTC 2012 - jfunk@funktronics.ca
- Fix lua requirement for openSUSE < 12.2
-------------------------------------------------------------------
Sat Sep 8 21:41:39 UTC 2012 - jfunk@funktronics.ca
- Initial release

89
uwsgi.init Normal file
View File

@ -0,0 +1,89 @@
#!/bin/sh
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# Author: James Oakley
#
# /etc/init.d/uwsgi
# and its symbolic link
# /(usr/)sbin/rcuwsgi
#
# LSB compatible service control script; see http://www.linuxbase.org/spec/
#
### BEGIN INIT INFO
# Provides: uwsgi
# Required-Start: $syslog $remote_fs
# Should-Start: $time ypbind smtp
# Required-Stop: $syslog $remote_fs
# Should-Stop: ypbind smtp
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Short-Description: Application Container Server for Networked/Clustered Web Applications
# Description: Application Container Server for Networked/Clustered Web Applications
### END INIT INFO
# Check for missing binaries (stale symlinks should not happen)
UWSGI_BIN=/usr/sbin/uwsgi
test -x $UWSGI_BIN || { echo "$UWSGI_BIN not installed";
if [ "$1" = "stop" ]; then exit 0;
else exit 5; fi; }
UWSGI_VASSALS=/etc/uwsgi/vassals
. /etc/rc.status
rc_reset
case "$1" in
start)
echo -n "Starting uWSGI "
/sbin/startproc $UWSGI_BIN --autoload --emperor $UWSGI_VASSALS
rc_status -v
;;
stop)
echo -n "Shutting down uWSGI "
/sbin/killproc $UWSGI_BIN
rc_status -v
;;
try-restart|condrestart)
if test "$1" = "condrestart"; then
echo "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}"
fi
$0 status
if test $? = 0; then
$0 restart
else
rc_reset
fi
rc_status
;;
restart)
$0 stop
$0 start
rc_status
;;
force-reload)
echo -n "Reload service uWSGI "
/sbin/killproc -HUP $UWSGI_BIN
rc_status -v
;;
reload)
echo -n "Reload service uWSGI "
/sbin/killproc -HUP $UWSGI_BIN
rc_status -v
;;
status)
echo -n "Checking for service uWSGI "
/sbin/checkproc $UWSGI_BIN
rc_status -v
;;
probe)
echo -n "uWSGI does not support probe "
rc_failed 3
rc_status -v
;;
*)
echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}"
exit 1
;;
esac
rc_exit

633
uwsgi.spec Normal file
View File

@ -0,0 +1,633 @@
#
# spec file for package uwsgi
#
# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
Name: uwsgi
Version: 1.2.6
Release: 0
License: GPL-2.0+
Summary: Application Container Server for Networked/Clustered Web Applications
Url: http://projects.unbit.it/uwsgi/wiki
Group: Productivity/Networking/Web/Servers
Source: http://projects.unbit.it/downloads/uwsgi-%{version}.tar.gz
Source1: opensuse.ini.in
Source2: uwsgi.init
Source3: django.ini.example
Source4: rails.yml.example
Source5: trac.ini.example
Source6: werkzeug.xml.example
Source7: README.openSUSE
# PATCH-FIX-OPENSUSE uwsgi-1.2.6-plugin_build_path.patch - Don't attempt to install plugins to target dest during build
Patch0: uwsgi-1.2.6-plugin_build_path.patch
BuildRequires: gcc-c++
BuildRequires: java-devel
BuildRequires: libxml2-devel
BuildRequires: pam-devel
BuildRequires: postgresql-devel
BuildRequires: python-devel
BuildRequires: ruby-devel
%if 0%{?suse_version} && 0%{?suse_version} > 1210
BuildRequires: lua51-devel
BuildRequires: erlang
%else
BuildRequires: lua-devel
%endif
%if 0%{?suse_version} && 0%{?suse_version} > 1140
BuildRequires: python-greenlet-devel
%endif
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
%{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
%{!?python_sitearch: %global python_sitearch %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
%endif
%description
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
Born as a WSGI-only server, over time it has evolved in a complete stack for
networked/clustered web applications, implementing message/object passing,
caching, RPC and process management.
It uses the uwsgi (all lowercase, already included by default in the Nginx and
Cherokee releases) protocol for all the networking/interprocess communications,
but it can speak other protocols as well (http, fastcgi, mongrel2...)
It can be run in preforking mode, threaded, asynchronous/evented and supports
various forms of green threads/coroutines (such as uGreen, Greenlet, Stackless,
Gevent and Fiber).
Sysadmins will love it as it can be configured via several methods: command
line, environment variables, XML, .ini, yaml, json, sqlite3 database and via
LDAP.
On top of all this, it is designed to be fully modular. This means that
different plugins can be used in order to add compatibility with tons of
different technology on top of the same core.
%package carbon
Summary: Carbon Plugin for Graphite Integration for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description carbon
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains the carbon plugin for integration with the Graphite
realtime graphing server.
See http://projects.unbit.it/uwsgi/wiki/Carbon for more info.
%package cgi
Summary: CGI Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description cgi
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains the CGI plugin to support legacy CGI scripts.
See http://projects.unbit.it/uwsgi/wiki/CGI for more info.
%package fastrouter
Summary: Fastrouter Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description fastrouter
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains the fastrouter plugin for using uWSGI as a
proxy/load-balancer/router speaking the uwsgi protocol.
See http://projects.unbit.it/uwsgi/wiki/FastRouter for more info.
%package gevent
Summary: Gevent Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
Requires: %{name}-python = %{version}
%description gevent
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for Python Gevent, which is a non-blocking
networking framework.
See http://projects.unbit.it/uwsgi/wiki/Gevent for more info.
%package graylog2
Summary: Graylog2 Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description graylog2
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for logging to Graylog2 log servers.
%package http
Summary: HTTP Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description http
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for using uWSGI as a HTTP server.
See http://projects.unbit.it/uwsgi/wiki/HTTPserver for more info.
%package jvm
Summary: JVM Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description jvm
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for embedding a Java virtual machine in uWSGI.
See http://projects.unbit.it/uwsgi/wiki/JVM for more info.
%package jwsgi
Summary: Java WSGI Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
Requires: %{name}-jvm = %{version}
%description jwsgi
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for WSGI-style Java applications.
See http://projects.unbit.it/uwsgi/wiki/jwsgi for more info.
%package logsocket
Summary: Socket Logging Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description logsocket
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains the logsocket plugin for logging to UNIX and UDP sockets.
See http://projects.unbit.it/uwsgi/wiki/SocketLogging for more info.
%package lua
Summary: Lua Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description lua
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for Lua applications via the wsapi interface.
See http://projects.unbit.it/uwsgi/wiki/Lua for more info.
%package nagios
Summary: Nagios Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description nagios
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for Nagios monitoring of the uWSGI server.
See http://projects.unbit.it/uwsgi/wiki/Nagios for more info.
%package pam
Summary: PAM Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description pam
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for PAM authentication.
%package probepg
Summary: PostgreSQL Probe Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description probepg
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for probing PostgreSQL servers.
%package psgi
Summary: PSGI Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description psgi
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains the PSGI plugin for running Perl applications that
support the PSGI protocol.
See http://projects.unbit.it/uwsgi/wiki/PSGI for more info.
%package python
Summary: Python Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description python
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for Python applications via the WSGI protocol.
See http://projects.unbit.it/uwsgi/wiki/Quickstart for more info.
%package ruby
Summary: Ruby Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description ruby
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for Ruby applications.
See http://projects.unbit.it/uwsgi/wiki/Rack for more info.
%package redislog
Summary: Redis Logging Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description redislog
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for logging to a Redis server.
%package rrdtool
Summary: RRDTool Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description rrdtool
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for saving statistics in RRD bastabase files.
%package rsyslog
Summary: Rsyslog Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description rsyslog
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for logging to Rsyslog servers.
%package syslog
Summary: Syslog Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description syslog
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for logging to syslog servers.
%package ugreen
Summary: Green Threads Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
Requires: %{name}-python = %{version}
%description ugreen
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for green threads in Python applications.
See http://projects.unbit.it/uwsgi/wiki/uGreen for more info.
%package zergpool
Summary: Zerg Mode Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description zergpool
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for Zerg mode, which allows for dynamically added
workers under load.
See http://projects.unbit.it/uwsgi/wiki/ZergMode for more info.
%if 0%{?suse_version} && 0%{?suse_version} > 1210
%package fiber
Summary: Ruby Fibers Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
Requires: %{name}-ruby = %{version}
%description fiber
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for Ruby fibers. Fibers are a form of coroutine,
useful for implementing cooperative multitasking in your apps.
See http://projects.unbit.it/uwsgi/wiki/FiberLoop for more info.
%package erlang
Summary: Erlang Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
%description erlang
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for uWSGI to act as an Erlang C-Node and exchange
messages and rpc with Erlang nodes.
See http://projects.unbit.it/uwsgi/wiki/ErlangIntegration for more info.
%package pyerl
Summary: Python-Erlang Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
Requires: %{name}-erlang = %{version}
Requires: %{name}-python = %{version}
%description pyerl
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains the pyerl module for accessing Erlang functionality to
Python applications.
See http://projects.unbit.it/uwsgi/wiki/ErlangIntegration for more info.
%endif
%if 0%{?suse_version} && 0%{?suse_version} > 1140
%package greenlet
Summary: Greenlet Plugin for uWSGI
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
Requires: %{name}-python = %{version}
%description greenlet
uWSGI is a fast, self-healing and developer/sysadmin-friendly application
container server coded in pure C.
This package contains support for the Python Greenlet non-blocking network
framework.
See http://projects.unbit.it/uwsgi/wiki/AsyncSupport for more info.
%endif
%prep
%setup -q -n uwsgi-%{version}
%patch0 -p1
# Generate a config that builds all plugins except for examples and stuff we
# can't satisfy the requirements for
excluded_plugins="cheaper_backlog2 cplusplus dummy example mono pyuwsgi stackless pypy php"
%if 0%{?suse_version} && 0%{?suse_version} <= 1210
excluded_plugins="$excluded_plugins fiber ruby19 erlang pyerl"
%endif
%if 0%{?suse_version} && 0%{?suse_version} <= 1140
excluded_plugins="$excluded_plugins greenlet"
%endif
plugins=$(python -c "import sys, os; print ', '.join([p for p in os.listdir('plugins') if p not in sys.argv[1:]])" $excluded_plugins)
sed -e "s#@@LIBDIR@@#%{_libdir}#" -e "s#@@PLUGINS@@#$plugins#" %{SOURCE1} > buildconf/opensuse.ini
# README.openSUSE
cp %{SOURCE7} .
%build
# Find correct location for libjvm
jvmlib=$(dirname $(find %{_jvmdir}/java/jre/lib -name "libjvm.so" | grep server))
export CFLAGS="%{optflags} -I$(echo %{_libdir}/erlang/lib/erl_interface-*/include) -I%{_jvmdir}/java/include/ -I%{_jvmdir}/java/include/linux -L$jvmlib"
python uwsgiconfig.py --build opensuse
%install
install -D -m 0755 uwsgi %{buildroot}%{_sbindir}/uwsgi
install -d -m 0755 %{buildroot}%{_libdir}/uwsgi
install -m 0755 *_plugin.so %{buildroot}%{_libdir}/uwsgi
install -D -m 0755 %{SOURCE2} %{buildroot}%{_sysconfdir}/init.d/uwsgi
ln -sf %{_sysconfdir}/init.d/uwsgi %{buildroot}%{_sbindir}/rcuwsgi
install -d -m 0755 %{buildroot}%{_sysconfdir}/uwsgi/vassals
install -m 0644 %{SOURCE3} %{SOURCE4} %{SOURCE5} %{SOURCE6} %{buildroot}%{_sysconfdir}/uwsgi/vassals
install -m 0644 vassals/broodlord.ini %{buildroot}%{_sysconfdir}/uwsgi/vassals/broodlord.ini.example
install -m 0644 vassals/cc.ini %{buildroot}%{_sysconfdir}/uwsgi/vassals/cc.ini.example
install -m 0644 vassals/multi.xml %{buildroot}%{_sysconfdir}/uwsgi/vassals/multi.xml.example
%post
%fillup_and_insserv uwsgi
%preun
%stop_on_removal uwsgi
%postun
%restart_on_update uwsgi
%insserv_cleanup
%files
%defattr(-,root,root,-)
%doc CONTRIBUTORS ChangeLog LICENSE README uwsgi_API.txt README.openSUSE
%{_sbindir}/uwsgi
%dir %{_sysconfdir}/uwsgi/
%dir %{_sysconfdir}/uwsgi/vassals
%{_sysconfdir}/uwsgi/vassals/*
%dir %{_libdir}/uwsgi
%config %{_sysconfdir}/init.d/uwsgi
%{_sbindir}/rcuwsgi
%{_libdir}/uwsgi/admin_plugin.so
%{_libdir}/uwsgi/cache_plugin.so
%{_libdir}/uwsgi/echo_plugin.so
%{_libdir}/uwsgi/notfound_plugin.so
%{_libdir}/uwsgi/ping_plugin.so
%{_libdir}/uwsgi/probeconnect_plugin.so
%{_libdir}/uwsgi/router_basicauth_plugin.so
%{_libdir}/uwsgi/router_redirect_plugin.so
%{_libdir}/uwsgi/router_uwsgi_plugin.so
%{_libdir}/uwsgi/rpc_plugin.so
%{_libdir}/uwsgi/signal_plugin.so
%{_libdir}/uwsgi/spooler_plugin.so
%{_libdir}/uwsgi/symcall_plugin.so
%files carbon
%defattr(-,root,root,-)
%{_libdir}/uwsgi/carbon_plugin.so
%files cgi
%defattr(-,root,root,-)
%{_libdir}/uwsgi/cgi_plugin.so
%files fastrouter
%defattr(-,root,root,-)
%{_libdir}/uwsgi/fastrouter_plugin.so
%files gevent
%defattr(-,root,root,-)
%{_libdir}/uwsgi/gevent_plugin.so
%files graylog2
%defattr(-,root,root,-)
%{_libdir}/uwsgi/graylog2_plugin.so
%files http
%defattr(-,root,root,-)
%{_libdir}/uwsgi/http_plugin.so
%files jvm
%defattr(-,root,root,-)
%{_libdir}/uwsgi/jvm_plugin.so
%files jwsgi
%defattr(-,root,root,-)
%{_libdir}/uwsgi/jwsgi_plugin.so
%files logsocket
%defattr(-,root,root,-)
%{_libdir}/uwsgi/logsocket_plugin.so
%files lua
%defattr(-,root,root,-)
%{_libdir}/uwsgi/lua_plugin.so
%files nagios
%defattr(-,root,root,-)
%{_libdir}/uwsgi/nagios_plugin.so
%files pam
%defattr(-,root,root,-)
%{_libdir}/uwsgi/pam_plugin.so
%files probepg
%defattr(-,root,root,-)
%{_libdir}/uwsgi/probepg_plugin.so
%files psgi
%defattr(-,root,root,-)
%{_libdir}/uwsgi/psgi_plugin.so
%files python
%defattr(-,root,root,-)
%{_libdir}/uwsgi/python_plugin.so
%files ruby
%defattr(-,root,root,-)
%{_libdir}/uwsgi/rack_plugin.so
%if 0%{?suse_version} && 0%{?suse_version} > 1210
%{_libdir}/uwsgi/ruby19_plugin.so
%endif
%files redislog
%defattr(-,root,root,-)
%{_libdir}/uwsgi/redislog_plugin.so
%files rrdtool
%defattr(-,root,root,-)
%{_libdir}/uwsgi/rrdtool_plugin.so
%files rsyslog
%defattr(-,root,root,-)
%{_libdir}/uwsgi/rsyslog_plugin.so
%files syslog
%defattr(-,root,root,-)
%{_libdir}/uwsgi/syslog_plugin.so
%files ugreen
%defattr(-,root,root,-)
%{_libdir}/uwsgi/ugreen_plugin.so
%files zergpool
%defattr(-,root,root,-)
%{_libdir}/uwsgi/zergpool_plugin.so
%if 0%{?suse_version} && 0%{?suse_version} > 1210
%files fiber
%defattr(-,root,root,-)
%{_libdir}/uwsgi/fiber_plugin.so
%files erlang
%defattr(-,root,root,-)
%{_libdir}/uwsgi/erlang_plugin.so
%files pyerl
%defattr(-,root,root,-)
%{_libdir}/uwsgi/pyerl_plugin.so
%endif
%if 0%{?suse_version} && 0%{?suse_version} > 1140
%files greenlet
%defattr(-,root,root,-)
%{_libdir}/uwsgi/greenlet_plugin.so
%endif
%changelog

7
werkzeug.xml.example Normal file
View File

@ -0,0 +1,7 @@
<uwsgi>
<module>werkzeug.testapp:test_app</module>
<master/>
<processes>4</processes>
<socket>127.0.0.1:3031</socket>
</uwsgi>