5 %define url $URL: svn+ssh://svn.planet-lab.org/svn/PLCRT/trunk/plcrt.spec $
11 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
16 Source0: %{name}-%{version}.tar.bz2
18 Group: Applications/System
19 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
22 Packager: PlanetLab Central <support@planet-lab.org>
23 Distribution: PlanetLab %{plrelease}
24 URL: %(echo %{url} | cut -d ' ' -f 2)
26 Summary: PLCRT account initialization for the root image.
27 Group: Applications/System
31 Requires: rt3-mailgate
35 PLCRT is a collection of configuration scripts for configuring RT.
36 By default RT does not come with all the settings needed for a standard PLC,
37 or PlanetLab in particular.
44 install -d $RPM_BUILD_ROOT/%{_datadir}/%{name}
45 install -D -m 755 plcrt.init $RPM_BUILD_ROOT/%{_sysconfdir}/plc.d/plcrt
47 echo " * Installing core scripts"
48 rsync -a ./ $RPM_BUILD_ROOT/%{_datadir}/%{name}/
50 echo " * Installing cron scripts"
51 install -D -m 644 rt.cron $RPM_BUILD_ROOT/%{_sysconfdir}/cron.d/rt.cron
53 chmod 755 $RPM_BUILD_ROOT/%{_datadir}/%{name}/adduserstort.pl
54 chmod 755 $RPM_BUILD_ROOT/%{_datadir}/%{name}/cron.d/*.sh
57 rm -rf $RPM_BUILD_ROOT
61 #%config /etc/plcrt.conf
63 %{_sysconfdir}/plc.d/plcrt
64 %{_sysconfdir}/cron.d/rt.cron
67 if grep 'pam_loginuid.so' /etc/pam.d/crond ; then
68 sed -i -e 's/^session required pam_loginuid.so/#session required pam_loginuid.so/g' /etc/pam.d/crond
71 if ! grep '<category id="plc_rt">' /etc/planetlab/default_config.xml ; then
72 sed -i 's|<category id="plc_net">| <category id="plc_rt">\n <name>RT Configuration</name>\n <description>RT</description>\n <variablelist>\n <variable id="enabled" type="boolean">\n <name>Enabled</name>\n <value>false</value>\n <description>Enable on this machine.</description>\n </variable>\n <variable id="host" type="hostname">\n <name>Hostname</name>\n <value>localhost.localdomain</value>\n <description>The fully qualified hostname.</description>\n </variable>\n <variable id="ip" type="ip">\n <name>IP Address</name>\n <value/>\n <description>The IP address of the RT server.</description>\n </variable>\n <variable id="web_user" type="string">\n <name>username</name>\n <value>root</value>\n <description>The user name for RT access.</description>\n </variable>\n <variable id="web_password" type="password">\n <name>password</name>\n <value>password</value>\n <description>password to the rt user.</description>\n </variable>\n
73 <variable id="dbpassword" type="password">\n <name>Database Password</name>\n <value></value>\n <description>Password to use when accessing the RT database.</description>\n </variable>\n </variablelist>\n </category>\n <category id="plc_net">|' /etc/planetlab/default_config.xml
76 mkdir -p /etc/planetlab/configs
77 plc-config --category plc_rt --variable enabled --value true \
78 --save /etc/planetlab/configs/site.xml /etc/planetlab/default_config.xml
80 # NOTE: setup default values until myplc includes them by default.
81 plc-config --category plc_rt --variable host --value localhost.localdomain \
82 --save /etc/planetlab/configs/site.xml /etc/planetlab/configs/site.xml
83 plc-config --category plc_rt --variable ip --value "" \
84 --save /etc/planetlab/configs/site.xml /etc/planetlab/configs/site.xml
85 plc-config --category plc_rt --variable web_user --value root \
86 --save /etc/planetlab/configs/site.xml /etc/planetlab/configs/site.xml
87 plc-config --category plc_rt --variable web_password --value password \
88 --save /etc/planetlab/configs/site.xml /etc/planetlab/configs/site.xml
89 plc-config --category plc_rt --variable dbpassword --value "" \
90 --save /etc/planetlab/configs/site.xml /etc/planetlab/configs/site.xml
92 # NOTE: not sure why these aren't setup by the rt package...
94 touch /var/log/rt3/rt.log
95 chown apache.apache /var/log/rt3/rt.log
97 cp /usr/share/rt3/html/NoAuth/images/bplogo.gif /var/www/html/misc/logo.gif
100 * Sat Jul 04 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - PLCRT-1.0-3
101 - renamed getpersons.py to accept a given 'role'
102 - changed syncadmins.sh to use callplcsh.py
103 - added callplcsh.py to allow either a local or remote plc using plcsh
105 * Tue Jun 30 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - PLCRT-1.0-2
106 - improved init setup
107 - added plcsh version of getadmins script to add users to RT's db.
108 - improved %post code for installation
110 * Fri Jun 26 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - PLCRT-1.0-1
111 - trying to get the tag to work for new package.
113 * Thu Jun 26 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - PLCRT-1.0-1