packages (upstart_native): openssh/openssh.spec, openssh/opensshd.init, ope...
jajcus
jajcus at pld-linux.org
Fri May 7 10:47:29 CEST 2010
Author: jajcus Date: Fri May 7 08:47:29 2010 GMT
Module: packages Tag: upstart_native
---- Log message:
- proof-of-concept upstart event-based startup
---- Files affected:
packages/openssh:
openssh.spec (1.335 -> 1.335.2.1) , opensshd.init (1.35 -> 1.35.2.1) , opensshd.upstart (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: packages/openssh/openssh.spec
diff -u packages/openssh/openssh.spec:1.335 packages/openssh/openssh.spec:1.335.2.1
--- packages/openssh/openssh.spec:1.335 Fri Apr 16 14:56:33 2010
+++ packages/openssh/openssh.spec Fri May 7 10:47:23 2010
@@ -32,7 +32,7 @@
Summary(uk.UTF-8): OpenSSH - вільна реалізація протоколу Secure Shell (SSH)
Name: openssh
Version: 5.5p1
-Release: 2
+Release: 2.1
Epoch: 2
License: BSD
Group: Applications/Networking
@@ -46,6 +46,7 @@
Source5: ssh-agent.sh
Source6: ssh-agent.conf
Source7: %{name}-lpk.schema
+Source8: %{name}d.upstart
Patch100: %{name}-heimdal.patch
Patch0: %{name}-no_libnsl.patch
Patch2: %{name}-pam_misc.patch
@@ -96,6 +97,24 @@
%define _privsepdir /usr/share/empty
%define schemadir /usr/share/openldap/schema
+## to be moved to rpm-build-macros
+## TODO: handle RPM_SKIP_AUTO_RESTART
+
+# migrate from init script to upstart job
+%define upstart_post() \
+ if [ -f /var/lock/subsys/"%1" ] ; then \
+ /sbin/service --no-upstart "%1" stop \
+ /sbin/service "%1" start \
+ fi
+
+# restart the job after upgrade or migrate to init script on removal
+%define upstart_postun() \
+ if [ -x /sbin/initctl ] && /sbin/initctl status "%1" 2>/dev/null | grep -q 'running' ; then \
+ /sbin/initctl stop "%1" 2>/dev/null \
+ [ -f "/etc/rc.d/init.d/%1" -o -f "/etc/init/%1.conf" ] && /sbin/service "%1" start \
+ fi
+
+
%description
Ssh (Secure Shell) a program for logging into a remote machine and for
executing commands in a remote machine. It is intended to replace
@@ -400,6 +419,20 @@
частина протоколу Secure Shell, яка дозволяє клієнтам ssh зв'язуватись
з вашим хостом.
+%package server-upstart
+Summary: Upstart job description for OpenSSH server
+Summary(pl.UTF-8): Opis zadania Upstart dla serwera OpenSSH
+Group: Daemons
+Requires: %{name}-server = %{epoch}:%{version}-%{release}
+Requires: upstart
+Requires: rc-scripts > 0.4.2.8
+
+%description server-upstart
+Upstart job description for OpenSSH.
+
+%description server-upstart -l pl.UTF-8
+Opis zadania Upstart dla OpenSSH.
+
%package gnome-askpass
Summary: OpenSSH GNOME passphrase dialog
Summary(de.UTF-8): OpenSSH GNOME Passwort-Dialog
@@ -538,7 +571,7 @@
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{pam.d,rc.d/init.d,sysconfig,security,env.d}} \
+install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{init,pam.d,rc.d/init.d,sysconfig,security,env.d}} \
$RPM_BUILD_ROOT{%{_libexecdir}/ssh,%{schemadir}}
install -d $RPM_BUILD_ROOT/etc/{profile.d,X11/xinit/xinitrc.d}
@@ -555,6 +588,8 @@
install %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}
install %{SOURCE7} $RPM_BUILD_ROOT%{schemadir}
+install %{SOURCE8} $RPM_BUILD_ROOT/etc/init/sshd.conf
+
%if %{with gnome}
install contrib/gnome-ssh-askpass1 $RPM_BUILD_ROOT%{_libexecdir}/ssh/ssh-askpass
%endif
@@ -623,6 +658,12 @@
%userremove sshd
fi
+%post server-upstart
+%upstart_post sshd
+
+%postun server-upstart
+%upstart_postun sshd
+
%post -n openldap-schema-openssh-lpk
%openldap_schema_register %{schemadir}/openssh-lpk.schema
%service -q ldap restart
@@ -714,12 +755,19 @@
%{schemadir}/openssh-lpk.schema
%endif
+%files server-upstart
+%defattr(644,root,root,755)
+%config(noreplace) %verify(not md5 mtime size) /etc/init/sshd.conf
+
%define date %(echo `LC_ALL="C" date +"%a %b %d %Y"`)
%changelog
* %{date} PLD Team <feedback at pld-linux.org>
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.335.2.1 2010/05/07 08:47:23 jajcus
+- proof-of-concept upstart event-based startup
+
Revision 1.335 2010/04/16 12:56:33 glen
- release 2
================================================================
Index: packages/openssh/opensshd.init
diff -u packages/openssh/opensshd.init:1.35 packages/openssh/opensshd.init:1.35.2.1
--- packages/openssh/opensshd.init:1.35 Wed Mar 24 16:27:15 2010
+++ packages/openssh/opensshd.init Fri May 7 10:47:23 2010
@@ -107,6 +107,9 @@
fi
}
+# init is handled by this script
+upstart_controlled start stop restart status reload force-reload try-restart
+
RETVAL=0
# See how we were called.
case "$1" in
================================================================
Index: packages/openssh/opensshd.upstart
diff -u /dev/null packages/openssh/opensshd.upstart:1.1
--- /dev/null Fri May 7 10:47:29 2010
+++ packages/openssh/opensshd.upstart Fri May 7 10:47:23 2010
@@ -0,0 +1,25 @@
+
+start on pld.network-started and started SERVICE=syslog
+stop on pld.shutdown-started
+
+respawn
+
+console output
+
+script
+ . /etc/rc.d/init.d/functions
+ . /etc/sysconfig/network
+
+ if [ ! -s /etc/ssh/ssh_host_key ] ; then
+ /etc/rc.d/init.d/sshd init
+ fi
+
+ if is_yes "$IPV4_NETWORKING" && is_no "$IPV6_NETWORKING"; then
+ OPTIONS="$OPTIONS -4"
+ fi
+ if is_yes "$IPV6_NETWORKING" && is_no "$IPV4_NETWORKING"; then
+ OPTIONS="$OPTIONS -6"
+ fi
+
+ exec /usr/sbin/sshd -D $OPTIONS
+end script
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/openssh/openssh.spec?r1=1.335&r2=1.335.2.1&f=u
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/openssh/opensshd.init?r1=1.35&r2=1.35.2.1&f=u
More information about the pld-cvs-commit
mailing list