summaryrefslogtreecommitdiff
path: root/doc/ipmiutil.spec
diff options
context:
space:
mode:
Diffstat (limited to 'doc/ipmiutil.spec')
-rw-r--r--doc/ipmiutil.spec424
1 files changed, 424 insertions, 0 deletions
diff --git a/doc/ipmiutil.spec b/doc/ipmiutil.spec
new file mode 100644
index 0000000..cd849f2
--- /dev/null
+++ b/doc/ipmiutil.spec
@@ -0,0 +1,424 @@
+# spec file for package ipmiutil
+#
+# Copyright (c) 2012 Andy Cress
+#
+Name: ipmiutil
+Version: 2.9.3
+Release: 1%{?dist}
+Summary: Easy-to-use IPMI server management utilities
+License: BSD
+Group: System/Management
+Source: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
+URL: http://ipmiutil.sourceforge.net
+BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
+# Suggests: cron or vixie-cron or cronie or similar
+%if 0%{?fedora} >= 15
+BuildRequires: systemd
+Requires: systemd-units
+%endif
+%if 0%{?suse_version} >= 1210
+%define req_systemd 1
+%endif
+%if 0%{?req_systemd}
+BuildRequires: openssl-devel gcc gcc-c++ libtool systemd
+%define unit_dir %{_unitdir}
+%define systemd_fls %{unit_dir}
+# Requires: %{?systemd_requires}
+%else
+BuildRequires: openssl-devel gcc gcc-c++ libtool
+%if 0%{?fedora} == 16
+%define unit_dir /lib/systemd/system
+%else
+%define unit_dir %{_unitdir}
+%endif
+%define systemd_fls %{_datadir}/%{name}
+%endif
+%define init_dir %{_initrddir}
+
+%description
+The ipmiutil package provides easy-to-use utilities to view the SEL,
+perform an IPMI chassis reset, set up the IPMI LAN and Platform Event Filter
+entries to allow SNMP alerts, Serial-Over-LAN console, event daemon, and
+other IPMI tasks.
+These can be invoked with the metacommand ipmiutil, or via subcommand
+shortcuts as well. IPMIUTIL can also write sensor thresholds, FRU asset tags,
+and has a full IPMI configuration save/restore.
+An IPMI driver can be provided by either the OpenIPMI driver (/dev/ipmi0)
+or the Intel IPMI driver (/dev/imb), etc. If used locally and no driver is
+detected, ipmiutil will use user-space direct I/Os instead.
+
+%package devel
+Group: Development/Libraries
+Summary: Includes libraries and headers for the ipmiutil package
+Provides: ipmiutil-static = %{version}-%{release}
+
+%description devel
+The ipmiutil-devel package contains headers and libraries which are
+useful for building custom IPMI applications.
+
+%prep
+%setup -q
+
+%build
+%if 0%{?fedora} >= 15
+autoconf
+%endif
+%if 0%{?req_systemd}
+%configure --enable-systemd
+%else
+%configure
+%endif
+make
+
+%install
+rm -rf %{buildroot}
+make install DESTDIR=%{buildroot}
+
+%clean
+rm -rf %{buildroot}
+
+%files
+%defattr(-, root, root, -)
+%dir %{_datadir}/%{name}
+%dir %{_var}/lib/%{name}
+%{_bindir}/ipmiutil
+%{_bindir}/idiscover
+%{_bindir}/ievents
+%{_sbindir}/iseltime
+%{_sbindir}/ipmi_port
+%{_sbindir}/ialarms
+%{_sbindir}/iconfig
+%{_sbindir}/icmd
+%{_sbindir}/ifru
+%{_sbindir}/igetevent
+%{_sbindir}/ihealth
+%{_sbindir}/ilan
+%{_sbindir}/ireset
+%{_sbindir}/isel
+%{_sbindir}/isensor
+%{_sbindir}/iserial
+%{_sbindir}/isol
+%{_sbindir}/iwdt
+%{_sbindir}/ipicmg
+%{_sbindir}/ifirewall
+%{_sbindir}/ifwum
+%{_sbindir}/ihpm
+%{_datadir}/%{name}/ipmiutil_evt
+%{_datadir}/%{name}/ipmiutil_asy
+%{_datadir}/%{name}/ipmiutil_wdt
+%{_datadir}/%{name}/ipmi_port
+%{_datadir}/%{name}/ipmi_info
+%{_datadir}/%{name}/checksel
+%{systemd_fls}/ipmiutil_evt.service
+%{systemd_fls}/ipmiutil_asy.service
+%{systemd_fls}/ipmiutil_wdt.service
+%{systemd_fls}/ipmi_port.service
+%{_datadir}/%{name}/ipmiutil.env
+%{_datadir}/%{name}/ipmiutil.pre
+%{_datadir}/%{name}/ipmiutil.setup
+%{_datadir}/%{name}/ipmi_if.sh
+%{_datadir}/%{name}/evt.sh
+%{_datadir}/%{name}/ipmi.init.basic
+%{_datadir}/%{name}/bmclanpet.mib
+%{_mandir}/man8/isel.8*
+%{_mandir}/man8/isensor.8*
+%{_mandir}/man8/ireset.8*
+%{_mandir}/man8/igetevent.8*
+%{_mandir}/man8/ihealth.8*
+%{_mandir}/man8/iconfig.8*
+%{_mandir}/man8/ialarms.8*
+%{_mandir}/man8/iwdt.8*
+%{_mandir}/man8/ilan.8*
+%{_mandir}/man8/iserial.8*
+%{_mandir}/man8/ifru.8*
+%{_mandir}/man8/icmd.8*
+%{_mandir}/man8/isol.8*
+%{_mandir}/man8/ipmiutil.8*
+%{_mandir}/man8/idiscover.8*
+%{_mandir}/man8/ievents.8*
+%{_mandir}/man8/ipmi_port.8*
+%{_mandir}/man8/ipicmg.8*
+%{_mandir}/man8/ifirewall.8*
+%{_mandir}/man8/ifwum.8*
+%{_mandir}/man8/ihpm.8*
+%{_mandir}/man8/isunoem.8*
+%{_mandir}/man8/idelloem.8*
+%{_mandir}/man8/ismcoem.8*
+%{_mandir}/man8/iekanalyzer.8*
+%{_mandir}/man8/itsol.8*
+%{_mandir}/man8/idcmi.8*
+%doc AUTHORS ChangeLog COPYING NEWS README TODO
+%doc doc/UserGuide
+
+%files devel
+%defattr(-,root,root)
+# %{_datadir}/%{name} is used by both ipmiutil and ipmituil-devel
+%dir %{_datadir}/%{name}
+%{_datadir}/%{name}/ipmi_sample.c
+%{_datadir}/%{name}/ipmi_sample_evt.c
+%{_datadir}/%{name}/isensor.c
+%{_datadir}/%{name}/ievents.c
+%{_datadir}/%{name}/isensor.h
+%{_datadir}/%{name}/ievents.h
+%{_datadir}/%{name}/Makefile
+%{_includedir}/ipmicmd.h
+%{_libdir}/libipmiutil.a
+%{_libdir}/libipmiutil.so
+
+
+%pre
+%if 0%{?req_systemd}
+%service_add_pre ipmi_port.service ipmiutil_evt.service ipmiutil_asy.service ipmiutil_wdt.service
+%endif
+
+%post
+# POST_INSTALL, $1 = 1 if rpm -i, $1 = 2 if rpm -U
+if [ "$1" = "1" ]
+then
+ # doing rpm -i, first time
+ vardir=%{_var}/lib/%{name}
+ scr_dir=%{_datadir}/%{name}
+
+%if 0%{?req_systemd}
+%service_add_post ipmi_port.service ipmiutil_evt.service ipmiutil_asy.service ipmiutil_wdt.service
+%else
+ if [ -x /bin/systemctl ]; then
+ echo "IINITDIR=%{init_dir}" >>%{_datadir}/%{name}/ipmiutil.env
+ cp -f ${scr_dir}/ipmiutil_evt.service %{unit_dir}
+ cp -f ${scr_dir}/ipmiutil_asy.service %{unit_dir}
+ cp -f ${scr_dir}/ipmiutil_wdt.service %{unit_dir}
+ cp -f ${scr_dir}/ipmi_port.service %{unit_dir}
+ # systemctl enable ipmi_port.service >/dev/null 2>&1 || :
+ else
+ cp -f ${scr_dir}/ipmiutil_wdt %{init_dir}
+ cp -f ${scr_dir}/ipmiutil_asy %{init_dir}
+ cp -f ${scr_dir}/ipmiutil_evt %{init_dir}
+ cp -f ${scr_dir}/ipmi_port %{init_dir}
+ cp -f ${scr_dir}/ipmi_info %{init_dir}
+ fi
+%endif
+
+ # Run some ipmiutil command to see if any IPMI interface works.
+ %{_bindir}/ipmiutil sel -v >/dev/null 2>&1 || :
+ IPMIret=$?
+ # If IPMIret==0, the IPMI cmd was successful, and IPMI is enabled locally.
+ if [ $IPMIret -eq 0 ]; then
+ # If IPMI is enabled, automate managing the IPMI SEL
+ if [ -d %{_sysconfdir}/cron.daily ]; then
+ cp -f %{_datadir}/%{name}/checksel %{_sysconfdir}/cron.daily
+ fi
+ # IPMI_IS_ENABLED, so enable services, but only if Red Hat
+ if [ -f /etc/redhat-release ]; then
+ if [ -x /bin/systemctl ]; then
+ touch ${scr_dir}/ipmi_port.service
+ elif [ -x /sbin/chkconfig ]; then
+ /sbin/chkconfig --add ipmi_port
+ /sbin/chkconfig --add ipmiutil_wdt
+ /sbin/chkconfig --add ipmiutil_evt
+ /sbin/chkconfig --add ipmi_info
+ fi
+ fi
+
+ # Capture a snapshot of IPMI sensor data once now for later reuse.
+ sensorout=$vardir/sensor_out.txt
+ if [ ! -f $sensorout ]; then
+ %{_bindir}/ipmiutil sensor -q >$sensorout || :
+ if [ $? -ne 0 ]; then
+ # remove file if error, try again in ipmi_port on reboot.
+ rm -f $sensorout
+ fi
+ fi
+ fi
+else
+ # postinstall, doing rpm update
+ %{_bindir}/ipmiutil sel -v >/dev/null 2>&1 || :
+ if [ $? -eq 0 ]; then
+ if [ -d %{_sysconfdir}/cron.daily ]; then
+ cp -f %{_datadir}/%{name}/checksel %{_sysconfdir}/cron.daily
+ fi
+ fi
+fi
+%if 0%{?fedora} >= 18
+%systemd_post ipmiutil_evt.service
+%systemd_post ipmiutil_asy.service
+%systemd_post ipmiutil_wdt.service
+%systemd_post ipmi_port.service
+%endif
+
+%preun
+# before uninstall, $1 = 1 if rpm -U, $1 = 0 if rpm -e
+if [ "$1" = "0" ]
+then
+%if 0%{?req_systemd}
+%service_del_preun ipmi_port.service ipmiutil_evt.service ipmiutil_asy.service ipmiutil_wdt.service
+%else
+ if [ -x /bin/systemctl ]; then
+ if [ -f %{unit_dir}/ipmiutil_evt.service ]; then
+%if 0%{?fedora} >= 18
+%systemd_preun ipmiutil_evt.service
+%systemd_preun ipmiutil_asy.service
+%systemd_preun ipmiutil_wdt.service
+%systemd_preun ipmi_port.service
+%else
+ systemctl disable ipmi_port.service >/dev/null 2>&1 || :
+ systemctl disable ipmiutil_evt.service >/dev/null 2>&1 || :
+ systemctl disable ipmiutil_asy.service >/dev/null 2>&1 || :
+ systemctl disable ipmiutil_wdt.service >/dev/null 2>&1 || :
+ systemctl stop ipmiutil_evt.service >/dev/null 2>&1 || :
+ systemctl stop ipmiutil_asy.service >/dev/null 2>&1 || :
+ systemctl stop ipmiutil_wdt.service >/dev/null 2>&1 || :
+ systemctl stop ipmi_port.service >/dev/null 2>&1 || :
+%endif
+ fi
+ else
+ if [ -x /sbin/service ]; then
+ /sbin/service ipmi_port stop >/dev/null 2>&1 || :
+ /sbin/service ipmiutil_wdt stop >/dev/null 2>&1 || :
+ /sbin/service ipmiutil_asy stop >/dev/null 2>&1 || :
+ /sbin/service ipmiutil_evt stop >/dev/null 2>&1 || :
+ fi
+ if [ -x /sbin/chkconfig ]; then
+ /sbin/chkconfig --del ipmi_port >/dev/null 2>&1 || :
+ /sbin/chkconfig --del ipmiutil_wdt >/dev/null 2>&1 || :
+ /sbin/chkconfig --del ipmiutil_asy >/dev/null 2>&1 || :
+ /sbin/chkconfig --del ipmiutil_evt >/dev/null 2>&1 || :
+ fi
+ fi
+%endif
+ if [ -f %{_sysconfdir}/cron.daily/checksel ]; then
+ rm -f %{_sysconfdir}/cron.daily/checksel
+ fi
+fi
+
+%postun
+%if 0%{?req_systemd}
+%service_del_postun ipmi_port.service ipmiutil_evt.service ipmiutil_asy.service ipmiutil_wdt.service
+%else
+if [ -x /bin/systemctl ]; then
+%if 0%{?fedora} >= 18
+%systemd_postun_with_restart ipmi_port.service
+%else
+ systemctl daemon-reload || :
+ if [ $1 -ge 1 ] ; then
+ # Package upgrade, not uninstall
+ systemctl try-restart ipmi_port.service || :
+ fi
+%endif
+ if [ -f %{unit_dir}/ipmiutil_evt.service ]; then
+ rm -f %{unit_dir}/ipmiutil_evt.service 2>/dev/null || :
+ rm -f %{unit_dir}/ipmiutil_asy.service 2>/dev/null || :
+ rm -f %{unit_dir}/ipmiutil_wdt.service 2>/dev/null || :
+ rm -f %{unit_dir}/ipmi_port.service 2>/dev/null || :
+ fi
+else
+ if [ -f %{init_dir}/ipmiutil_evt.service ]; then
+ rm -f %{init_dir}/ipmiutil_wdt 2>/dev/null || :
+ rm -f %{init_dir}/ipmiutil_asy 2>/dev/null || :
+ rm -f %{init_dir}/ipmiutil_evt 2>/dev/null || :
+ rm -f %{init_dir}/ipmi_port 2>/dev/null || :
+ fi
+fi
+%endif
+
+%changelog
+* Tue Aug 21 2012 Andrew Cress <arcress at users.sourceforge.net> 2.8.5-2
+ Added F18 systemd macros for RH bug #850163
+* Fri May 04 2012 Andrew Cress <arcress at users.sourceforge.net> 2.8.4-1
+ Fixups for devel rpm (RH bug #818910)
+* Tue Apr 24 2012 Andrew Cress <arcress at users.sourceforge.net> 2.8.3-1
+ Use service_* macros if req_systemd is set
+* Thu Mar 08 2012 Andrew Cress <arcress at users.sourceforge.net> 2.8.2-1
+ reworked systemd logic/macros, moved ipmiutil from sbindir to bindir
+* Mon Dec 12 2011 Andrew Cress <arcress at users.sourceforge.net> 2.8.0-1
+ added devel package files
+* Fri Nov 11 2011 Andrew Cress <arcress at users.sourceforge.net> 2.7.9-3
+ fix RH bug #752319 to not copy checksel to cron.daily if IPMI not enabled
+* Tue Sep 13 2011 Andrew Cress <arcress at users.sourceforge.net> 2.7.8-1
+ added systemd scripts, added idelloem.8
+* Mon Jun 06 2011 Andrew Cress <arcress at users.sourceforge.net> 2.7.7-1
+ add gcc,gcc-c++ to BuildRequires to detect broken build systems
+* Mon May 09 2011 Andrew Cress <arcress at users.sourceforge.net> 2.7.6-1
+ updated ipmiutil
+* Fri Nov 12 2010 Andrew Cress <arcress at users.sourceforge.net> 2.7.3-1
+ updated package description
+* Fri Oct 15 2010 Andrew Cress <arcress at users.sourceforge.net> 2.7.1-1
+ skip chkconfig --add if not Red Hat
+* Mon Sep 27 2010 Andrew Cress <arcress at users.sourceforge.net> 2.7.0-1
+ added fwum, hpm, sunoem, ekanalyzer man pages
+* Mon Jul 19 2010 Andrew Cress <arcress at users.sourceforge.net> 2.6.8-1
+ cleaned up two more rpmlint issues
+* Mon Jul 12 2010 Andrew Cress <arcress at users.sourceforge.net> 2.6.7-1
+ cleaned up some rpmlint issues, include ipmiutil_evt in chkconfig's
+* Thu Apr 29 2010 Andrew Cress <arcress at users.sourceforge.net> 2.6.4-1
+ cleaned up some style issues
+* Fri Mar 5 2010 Andrew Cress <arcress at users.sourceforge.net> 2.6.1-1
+ cleaned up some style issues
+* Tue Feb 16 2010 Andrew Cress <arcress at users.sourceforge.net> 2.6.0-1
+ cleaned up some script clutter, changed naming scheme for sub-commands
+* Tue Jan 26 2010 Andrew Cress <arcress at users.sourceforge.net> 2.5.3-1
+ cleaned up some rpmlint issues, removed bmclanaol.mib
+* Mon Nov 9 2009 Andrew Cress <arcress at users.sourceforge.net> 2.5.1-1
+ do not gzip man files, clean up scripts, move distro specifics to configure
+* Tue Jun 23 2009 Andrew Cress <arcress at users.sourceforge.net> 2.4.0-1
+ moved all progs to sbin, install init/cron scripts via files not post
+* Wed Dec 10 2008 Andrew Cress <arcress at users.sourceforge.net> 2.3.2-1
+ changes for Fedora with ipmiutil-2.3.2
+* Fri Jun 08 2007 Andrew Cress <arcress at users.sourceforge.net>
+ rpmlint tweaks for ipmiutil-1.9.8
+* Mon May 21 2007 Andrew Cress <arcress at users.sourceforge.net>
+ added isroot flag for chroot cases
+* Mon May 18 2007 Andrew Cress <arcress at users.sourceforge.net>
+ added ipmi_port init handling
+* Mon Jul 10 2006 Andrew Cress <arcress at users.sourceforge.net>
+ changed to libfreeipmi.so.2, include and run ipmi_if.sh
+* Tue Aug 02 2005 Andrew Cress <arcress at users.sourceforge.net>
+ changed not to run pefconfig if already configured
+* Wed Feb 03 2005 Andrew Cress <arcress at users.sourceforge.net>
+ changed /usr/man to /usr/share/man,
+ fixed postun to recognize rpm -U via arg 1
+* Mon Nov 1 2004 Andrew Cress <arcress at users.sourceforge.net>
+ added freeipmi install files and logic
+* Tue Aug 23 2004 Andrew Cress <arcress at users.sourceforge.net>
+- added MIB links to /usr/share/snmp/mibs
+* Tue Aug 10 2004 Andrew Cress <arcress at users.sourceforge.net>
+- added icmd utility to the rpm
+* Thu Aug 05 2004 Andrew Cress <arcress at users.sourceforge.net>
+- added special logic for SuSE snmpd.conf
+* Fri Apr 02 2004 Andrew Cress <arcress at users.sourceforge.net>
+- added checksel cron job
+* Tue Jan 28 2003 Andrew Cress <arcress at users.sourceforge.net>
+- added sensor & fruconfig for ipmiutil 1.2.8
+* Tue Aug 2 2002 Andrew Cress <arcress at users.sourceforge.net>
+- fixed bug 793 (dont need Require:ipmidrvr) for ipmiutil 1.2.2
+* Tue Jul 2 2002 Andrew Cress <arcress at users.sourceforge.net>
+- fixed bug 555 in showsel for ipmiutil 1.2.1
+* Fri May 10 2002 Andrew Cress <arcress at users.sourceforge.net>
+- fixed bug 504 in pefconfig for ipmiutil 1.1.5
+* Thu Apr 11 2002 Andrew Cress <arcress at users.sourceforge.net>
+- updated pathnames for ipmiutil 1.1.4, some cleanup
+* Mon Mar 18 2002 Andrew Cress <arcress at users.sourceforge.net>
+- updated for 1.1.3-2, added checking for grub vs. lilo to .spec
+* Tue Mar 12 2002 Andrew Cress <arcress at users.sourceforge.net>
+- updated for 1.1.3, added source rpm, changed license, etc.
+* Thu Jan 31 2002 Andrew Cress <arcress at users.sourceforge.net>
+- updated for 1.1.0-2, changed selpef to pefconfig
+* Thu Jan 25 2002 Andrew Cress <arcress at users.sourceforge.net>
+- updated for 1.1.0, changed to ipmidrvr rather than isc dependency
+* Thu Jan 16 2002 Andrew Cress <arcress at users.sourceforge.net>
+- updated for 1.1.0, added hwreset utility
+* Thu Dec 14 2001 Andrew Cress <arcress at users.sourceforge.net>
+- updated for 1.0.0, man page updates
+* Thu Nov 19 2001 Andrew Cress <arcress at users.sourceforge.net>
+- updated for 0.9.0, uses new OSS bmc_panic, so don't install module.
+* Thu Nov 13 2001 Andrew Cress <arcress at users.sourceforge.net>
+- updated for 0.8.5, add "Requires: isc" (#32), hide selpef output (#38)
+* Thu Nov 8 2001 Andrew Cress <arcress at users.sourceforge.net>
+- updated for 0.8.4, eliminate "file exists" messages by fixing removal
+* Thu Oct 25 2001 Andrew Cress <arcress at users.sourceforge.net>
+- updated for 0.8.2, run selpef (objdump:applypatch gives bogus warning)
+* Thu Oct 25 2001 Andrew Cress <arcress at users.sourceforge.net>
+- updated for 0.8.2, run selpef (objdump:applypatch gives bogus warning)
+* Wed Oct 24 2001 Andrew Cress <arcress at users.sourceforge.net>
+- created ipmiutil package 0.8.1 without kbuild
+* Tue Oct 23 2001 Andrew Cress <arcress at users.sourceforge.net>
+- created ipmiutil package 0.8.0