[packages/supervisor] new, version 3.0a12

glen glen at pld-linux.org
Sat Mar 9 10:41:16 CET 2013


commit 915de068bc0790116eab02c0cd20ec60f71789a8
Author: Elan Ruusamäe <glen at delfi.ee>
Date:   Sat Mar 9 11:39:50 2013 +0200

    new, version 3.0a12
    
    based on fedora package
    eaf5aa68a1ba2e5e4fe89afab560404c9ea0a0ba

 supervisor.logrotate |   7 +++
 supervisor.spec      | 109 +++++++++++++++++++++++++++++++++++++++++++
 supervisord.conf     | 129 +++++++++++++++++++++++++++++++++++++++++++++++++++
 supervisord.service  |  11 +++++
 4 files changed, 256 insertions(+)
---
diff --git a/supervisor.spec b/supervisor.spec
new file mode 100644
index 0000000..6d1d736
--- /dev/null
+++ b/supervisor.spec
@@ -0,0 +1,109 @@
+# TODO
+# - use system python-medusa package
+%define		prever	a12
+%define		rel	0.1
+Summary:	A System for Allowing the Control of Process State on UNIX
+Name:		supervisor
+Version:	3.0
+Release:	0.%{prever}.%{rel}
+License:	ZPL v2.1 and BSD and MIT
+Group:		Base
+URL:		http://supervisord.org/
+Source0:	http://pypi.python.org/packages/source/s/supervisor/%{name}-%{version}%{prever}.tar.gz
+# Source0-md5:	eb2ea5a2c3b665ba9277d17d14584a25
+Source1:	%{name}d.service
+Source2:	%{name}d.conf
+Source3:	%{name}.logrotate
+BuildRequires:	python-devel
+BuildRequires:	python-setuptools
+BuildRequires:	rpm-pythonprov
+BuildRequires:	rpmbuild(macros) >= 1.647
+BuildRequires:	systemd-units
+Requires:	python-meld3 >= 0.6.5
+Requires:	python-setuptools
+Requires:	systemd-units >= 38
+BuildArch:	noarch
+BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+The supervisor is a client/server system that allows its users to
+control a number of processes on UNIX-like operating systems.
+
+%prep
+%setup -q -n %{name}-%{version}%{?prever}
+
+%build
+CC="%{__cc}" \
+CFLAGS="%{rpmcflags}" \
+%{__python} setup.py build
+
+%install
+rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT{/etc/logrotate.d,%{_sysconfdir}/supervisord.d,%{systemdunitdir},%{_localstatedir}/log/%{name}}
+
+%{__python} setup.py install \
+	--skip-build \
+	--optimize=2 \
+	--root=$RPM_BUILD_ROOT
+
+%py_postclean
+
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{systemdunitdir}/supervisord.service
+cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/supervisord.conf
+cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/supervisor
+sed -i s'/^#!.*//' $(find $RPM_BUILD_ROOT%{py_sitescriptdir}/supervisor -type f)
+
+# not useful as a library
+%{__rm} $RPM_BUILD_ROOT%{py_sitescriptdir}/supervisor/scripts/sample_*
+%{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/supervisor/tests
+%{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/supervisor/skel
+%{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/supervisor/medusa/debian
+%{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/supervisor/medusa/demo
+%{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/supervisor/medusa/docs
+%{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/supervisor/medusa/test
+%{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/supervisor/medusa/*.txt
+%{__rm} $RPM_BUILD_ROOT%{py_sitescriptdir}/supervisor/medusa/Makefile
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post
+# Don't restart supervisord here, we don't want its children to be restarted
+# when the supervisor package is upgraded. Admins need to manually reload or
+# restart supervisord.service.
+NORESTART=1
+%systemd_post %{name}.service
+
+%preun
+%systemd_preun %{name}.service
+
+%postun
+%systemd_reload
+
+%files
+%defattr(644,root,root,755)
+%doc CHANGES.txt COPYRIGHT.txt README.rst LICENSES.txt PLUGINS.rst TODO.txt
+%attr(755,root,root) %{_bindir}/supervisorctl
+%attr(755,root,root) %{_bindir}/supervisord
+%attr(755,root,root) %{_bindir}/echo_supervisord_conf
+%attr(755,root,root) %{_bindir}/pidproxy
+%{systemdunitdir}/supervisord.service
+%dir %{_sysconfdir}/supervisord.d
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/supervisord.conf
+%config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/supervisor
+%dir %attr(770,root,root) %{_localstatedir}/log/%{name}
+
+%{py_sitescriptdir}/supervisor/*.py[co]
+%{py_sitescriptdir}/supervisor/version.txt
+%dir %{py_sitescriptdir}/supervisor/scripts
+%{py_sitescriptdir}/supervisor/scripts/*.py[co]
+%{py_sitescriptdir}/supervisor/ui
+%{py_sitescriptdir}/supervisor-*-nspkg.pth
+%{py_sitescriptdir}/supervisor-*.egg-info
+
+# python-medusa
+%dir %{py_sitescriptdir}/supervisor/medusa
+%{py_sitescriptdir}/supervisor/medusa/*.py[co]
+%dir %{py_sitescriptdir}/supervisor/medusa/thread
+%{py_sitescriptdir}/supervisor/medusa/thread/*.py[co]
+%{py_sitescriptdir}/supervisor/medusa/MANIFEST
diff --git a/supervisor.logrotate b/supervisor.logrotate
new file mode 100644
index 0000000..d35c6be
--- /dev/null
+++ b/supervisor.logrotate
@@ -0,0 +1,7 @@
+/var/log/supervisor/*.log {
+       missingok
+       weekly
+       notifempty
+       nocompress
+}
+
diff --git a/supervisord.conf b/supervisord.conf
new file mode 100644
index 0000000..d916cee
--- /dev/null
+++ b/supervisord.conf
@@ -0,0 +1,129 @@
+; Sample supervisor config file.
+
+[unix_http_server]
+file=/var/tmp/supervisor.sock   ; (the path to the socket file)
+;chmod=0700                 ; sockef file mode (default 0700)
+;chown=nobody:nogroup       ; socket file uid:gid owner
+;username=user              ; (default is no username (open server))
+;password=123               ; (default is no password (open server))
+
+;[inet_http_server]         ; inet (TCP) server disabled by default
+;port=127.0.0.1:9001        ; (ip_address:port specifier, *:port for all iface)
+;username=user              ; (default is no username (open server))
+;password=123               ; (default is no password (open server))
+
+[supervisord]
+logfile=/var/log/supervisor/supervisord.log  ; (main log file;default $CWD/supervisord.log)
+logfile_maxbytes=50MB       ; (max main logfile bytes b4 rotation;default 50MB)
+logfile_backups=10          ; (num of main logfile rotation backups;default 10)
+loglevel=info               ; (log level;default info; others: debug,warn,trace)
+pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
+nodaemon=false              ; (start in foreground if true;default false)
+minfds=1024                 ; (min. avail startup file descriptors;default 1024)
+minprocs=200                ; (min. avail process descriptors;default 200)
+;umask=022                  ; (process file creation umask;default 022)
+;user=chrism                 ; (default is current user, required if root)
+;identifier=supervisor       ; (supervisord identifier, default is 'supervisor')
+;directory=/tmp              ; (default is not to cd during start)
+;nocleanup=true              ; (don't clean up tempfiles at start;default false)
+;childlogdir=/tmp            ; ('AUTO' child log dir, default $TEMP)
+;environment=KEY=value       ; (key value pairs to add to environment)
+;strip_ansi=false            ; (strip ansi escape codes in logs; def. false)
+
+; the below section must remain in the config file for RPC
+; (supervisorctl/web interface) to work, additional interfaces may be
+; added by defining them in separate rpcinterface: sections
+[rpcinterface:supervisor]
+supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
+
+[supervisorctl]
+serverurl=unix:///var/tmp/supervisor.sock ; use a unix:// URL  for a unix socket
+;serverurl=http://127.0.0.1:9001 ; use an http:// url to specify an inet socket
+;username=chris              ; should be same as http_username if set
+;password=123                ; should be same as http_password if set
+;prompt=mysupervisor         ; cmd line prompt (default "supervisor")
+;history_file=~/.sc_history  ; use readline history if available
+
+; The below sample program section shows all possible program subsection values,
+; create one or more 'real' program: sections to be able to control them under
+; supervisor.
+
+;[program:theprogramname]
+;command=/bin/cat              ; the program (relative uses PATH, can take args)
+;process_name=%(program_name)s ; process_name expr (default %(program_name)s)
+;numprocs=1                    ; number of processes copies to start (def 1)
+;directory=/tmp                ; directory to cwd to before exec (def no cwd)
+;umask=022                     ; umask for process (default None)
+;priority=999                  ; the relative start priority (default 999)
+;autostart=true                ; start at supervisord start (default: true)
+;autorestart=true              ; retstart at unexpected quit (default: true)
+;startsecs=10                  ; number of secs prog must stay running (def. 1)
+;startretries=3                ; max # of serial start failures (default 3)
+;exitcodes=0,2                 ; 'expected' exit codes for process (default 0,2)
+;stopsignal=QUIT               ; signal used to kill process (default TERM)
+;stopwaitsecs=10               ; max num secs to wait b4 SIGKILL (default 10)
+;user=chrism                   ; setuid to this UNIX account to run the program
+;redirect_stderr=true          ; redirect proc stderr to stdout (default false)
+;stdout_logfile=/a/path        ; stdout log path, NONE for none; default AUTO
+;stdout_logfile_maxbytes=1MB   ; max # logfile bytes b4 rotation (default 50MB)
+;stdout_logfile_backups=10     ; # of stdout logfile backups (default 10)
+;stdout_capture_maxbytes=1MB   ; number of bytes in 'capturemode' (default 0)
+;stdout_events_enabled=false   ; emit events on stdout writes (default false)
+;stderr_logfile=/a/path        ; stderr log path, NONE for none; default AUTO
+;stderr_logfile_maxbytes=1MB   ; max # logfile bytes b4 rotation (default 50MB)
+;stderr_logfile_backups=10     ; # of stderr logfile backups (default 10)
+;stderr_capture_maxbytes=1MB   ; number of bytes in 'capturemode' (default 0)
+;stderr_events_enabled=false   ; emit events on stderr writes (default false)
+;environment=A=1,B=2           ; process environment additions (def no adds)
+;serverurl=AUTO                ; override serverurl computation (childutils)
+
+; The below sample eventlistener section shows all possible
+; eventlistener subsection values, create one or more 'real'
+; eventlistener: sections to be able to handle event notifications
+; sent by supervisor.
+
+;[eventlistener:theeventlistenername]
+;command=/bin/eventlistener    ; the program (relative uses PATH, can take args)
+;process_name=%(program_name)s ; process_name expr (default %(program_name)s)
+;numprocs=1                    ; number of processes copies to start (def 1)
+;events=EVENT                  ; event notif. types to subscribe to (req'd)
+;buffer_size=10                ; event buffer queue size (default 10)
+;directory=/tmp                ; directory to cwd to before exec (def no cwd)
+;umask=022                     ; umask for process (default None)
+;priority=-1                   ; the relative start priority (default -1)
+;autostart=true                ; start at supervisord start (default: true)
+;autorestart=unexpected        ; restart at unexpected quit (default: unexpected)
+;startsecs=10                  ; number of secs prog must stay running (def. 1)
+;startretries=3                ; max # of serial start failures (default 3)
+;exitcodes=0,2                 ; 'expected' exit codes for process (default 0,2)
+;stopsignal=QUIT               ; signal used to kill process (default TERM)
+;stopwaitsecs=10               ; max num secs to wait b4 SIGKILL (default 10)
+;user=chrism                   ; setuid to this UNIX account to run the program
+;redirect_stderr=true          ; redirect proc stderr to stdout (default false)
+;stdout_logfile=/a/path        ; stdout log path, NONE for none; default AUTO
+;stdout_logfile_maxbytes=1MB   ; max # logfile bytes b4 rotation (default 50MB)
+;stdout_logfile_backups=10     ; # of stdout logfile backups (default 10)
+;stdout_events_enabled=false   ; emit events on stdout writes (default false)
+;stderr_logfile=/a/path        ; stderr log path, NONE for none; default AUTO
+;stderr_logfile_maxbytes=1MB   ; max # logfile bytes b4 rotation (default 50MB)
+;stderr_logfile_backups        ; # of stderr logfile backups (default 10)
+;stderr_events_enabled=false   ; emit events on stderr writes (default false)
+;environment=A=1,B=2           ; process environment additions
+;serverurl=AUTO                ; override serverurl computation (childutils)
+
+; The below sample group section shows all possible group values,
+; create one or more 'real' group: sections to create "heterogeneous"
+; process groups.
+
+;[group:thegroupname]
+;programs=progname1,progname2  ; each refers to 'x' in [program:x] definitions
+;priority=999                  ; the relative start priority (default 999)
+
+; The [include] section can just contain the "files" setting.  This
+; setting can list multiple files (separated by whitespace or
+; newlines).  It can also contain wildcards.  The filenames are
+; interpreted as relative to this file.  Included files *cannot*
+; include files themselves.
+
+[include]
+files = supervisord.d/*.ini
diff --git a/supervisord.service b/supervisord.service
new file mode 100644
index 0000000..4e6a489
--- /dev/null
+++ b/supervisord.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Process Monitoring and Control Daemon
+After=rc-local.service
+
+[Service]
+Type=forking
+ExecStart=/usr/bin/supervisord
+SysVStartPriority=99
+
+[Install]
+WantedBy=multi-user.target
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/supervisor.git/commitdiff/915de068bc0790116eab02c0cd20ec60f71789a8



More information about the pld-cvs-commit mailing list