Page History
Related Contents
- Condor Native Package Repositories
- Condor Packages in the new build process (CMake)
- Condor Drone RPM
Background
Old Condor rpm is basically a Condor tar ball packaged inside RPM. It will install Condor into /opt/condor-{version} and runs condor_configure during post install.
Condor Packages by 3rd parties
Fedora - Current Condor package is based on this one.
http://cvs.fedoraproject.org/viewvc/rpms/condor/
Debian
http://www.dcl.hpi.uni-potsdam.de/debian/binary/
Ubuntu - by Ian
http://packages.ubuntu.com/lucid/condor
Design Ideas
- Use dynamic tar file as a source, Condor native package just relocate stuff in tar file to comply with FHS.
- During upgrade, there is no need to explicitly restart Condor because the Master daemon will detect file changes and gracefully restart the daemons by itself.
- Minimize post installation logic by using condor_config parameters than match the standard configuration of each distribution. This will allow RPM to detect configuration file changes. However, when using relocate feature, condor_config will be modified during post install.
- In multi-instance installation scenario, the second instance will be installed without touching the first instance. Thus, the proper upgrade path is to remove the second instance and then upgrade the first instance.
Implementation
RPM Installation Behavior
pre (pre-install)
- Add condor user/group if not exists
postinst
- (If relocated) Update condor_config, /etc/sysconfig/condor to match new location
- (If relocated) Install init script only if this is the first instance.
- (If relocated) Create soft link to man folder in same level as bin/sbin folder so man can automatically find manpages.
- Add Condor service (chkconfig --add)
- Run ldconfig (Might not be necessary because we do not put any lib directly into /usr/lib)
- Modify SElinux policy of condor_startd binary (Copy from Fedora package)
preun
- Call init script to stop Condor only if we are removing the last instance of Condor (not include upgrading). If the init script fails, abort the uninstall
- Remove Condor service (chkconfig --del)
- (If relocated) remove init script
postun
- Run ldconfig (Might not be necessary because we do not put any lib directly into /usr/lib)
Debian Installation Behavior
preinst
- Add condor user/group if not exists
postinst
- Add Condor service (update-rc.d)
- Change owner of some folders to condor
prerm
- (If remove) Stop condor
postrm
- Remove condor service
- (If purge) remove files created Condor daemons
Condor currently provide native packages in Debian and RPM format. Location of the repositories are listed below:
http://www.cs.wisc.edu/condor/yum
http://www.cs.wisc.edu/condor/debian
Related Tickets
Ticket #1166: Add native Linux distro packaging into the build process