From: Angus Thomas <athomas(a)redhat.com>
Spec file packages the image_factory_connector gem and the init script.
---
.../image_factory_connector/aeolus-connector.init | 77 ++++++++++++++++++++
.../rubygem-image_factory_connector.spec | 61 ++++++++++++++++
2 files changed, 138 insertions(+), 0 deletions(-)
create mode 100755 services/image_factory/image_factory_connector/aeolus-connector.init
create mode 100644
services/image_factory/image_factory_connector/rubygem-image_factory_connector.spec
diff --git a/services/image_factory/image_factory_connector/aeolus-connector.init
b/services/image_factory/image_factory_connector/aeolus-connector.init
new file mode 100755
index 0000000..e4237fd
--- /dev/null
+++ b/services/image_factory/image_factory_connector/aeolus-connector.init
@@ -0,0 +1,77 @@
+#!/bin/bash
+#
+# aeolus-connector startup script for aeolus-connector
+#
+# chkconfig: - 2345 97 03
+# description: aeolus-connector is a microapp to talk to
+# Aeolus Image Factory QMF console
+
+RETVAL=0
+prog="aeolus-connector"
+exec=/usr/bin/image_factory_connector
+lockfile=/var/lock/subsys/aeolus-connector
+
+# Source function library.
+. /etc/rc.d/init.d/functions
+
+port=2003
+logfile=/var/log/aeolus-conductor/aeolus-connector.log
+[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
+
+start() {
+ if [ -e $lockfile ] ; then
+ echo "$prog subsystem locked"
+ exit 1
+ fi
+ if [ $UID -ne 0 ] ; then
+ echo "User has insufficient privilege."
+ exit 2
+ fi
+ [ -x $exec ] || exit 3
+ echo -n $"Starting $prog: "
+ daemon $exec -p $port start >> $logfile 2>&1 &
+ retval=$?
+ echo
+ [ $retval -eq 0 ] && touch $lockfile
+}
+
+stop() {
+ if [ $UID -ne 0 ] ; then
+ echo "User has insufficient privilege."
+ exit 4
+ fi
+ echo -n $"Stopping $prog: "
+ killall image_factory_connector
+ retval=$?
+ echo
+ [ $retval -eq 0 ] && rm -f $lockfile
+}
+
+restart() {
+ stop
+ start
+}
+
+rh_status() {
+ status image_factory_connector
+}
+
+case "$1" in
+ start)
+ $1
+ ;;
+ stop)
+ $1
+ ;;
+ restart)
+ $1
+ ;;
+ status)
+ rh_status
+ ;;
+ *)
+ echo $"Usage: $0 {start|stop|status|restart}"
+ exit 2
+esac
+exit $?
+
diff --git
a/services/image_factory/image_factory_connector/rubygem-image_factory_connector.spec
b/services/image_factory/image_factory_connector/rubygem-image_factory_connector.spec
new file mode 100644
index 0000000..c3a4a78
--- /dev/null
+++ b/services/image_factory/image_factory_connector/rubygem-image_factory_connector.spec
@@ -0,0 +1,61 @@
+# Generated from image_factory_connector-0.0.1.gem by gem2rpm -*- rpm-spec -*-
+%define ruby_sitelib %(ruby -rrbconfig -e "puts
Config::CONFIG['sitelibdir']")
+%define gemdir %(ruby -rubygems -e 'puts Gem::dir' 2>/dev/null)
+%define gemname image_factory_connector
+%define geminstdir %{gemdir}/gems/%{gemname}-%{version}
+
+Summary: Sinatra microapp to talk to Aeolus Image Factory QMF console
+Name: rubygem-%{gemname}
+Version: 0.0.1
+Release: 1%{?dist}
+Group: Development/Languages
+License: GPLv2+ or Ruby
+URL:
http://aeolusproject.org
+Source0: %{gemname}-%{version}.gem
+Source1: aeolus-connector.init
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+Requires: rubygems
+Requires: rubygem(image_factory_console) >= 0.2.0
+Requires: rubygem(builder) >= 2.1.2
+Requires: rubygem(sinatra) >= 1.0
+Requires: rubygem(rspec) >= 1.3.0
+BuildRequires: rubygems
+BuildArch: noarch
+Provides: rubygem(%{gemname}) = %{version}
+
+%description
+REST api and callback mechanism to wrap qmf for the Aeolus project
+
+
+%prep
+
+%build
+
+%install
+rm -rf %{buildroot}
+mkdir -p %{buildroot}%{gemdir}
+gem install --local --install-dir %{buildroot}%{gemdir} \
+ --force --rdoc %{SOURCE0}
+mkdir -p %{buildroot}/%{_bindir}
+mv %{buildroot}%{gemdir}/bin/* %{buildroot}/%{_bindir}
+rmdir %{buildroot}%{gemdir}/bin
+find %{buildroot}%{geminstdir}/bin -type f | xargs chmod a+x
+mkdir -p %{buildroot}/etc/init.d
+cp %{SOURCE1} %{buildroot}/etc/init.d/aeolus-connector
+
+%clean
+rm -rf %{buildroot}
+
+%files
+%defattr(-, root, root, -)
+%{_bindir}/image_factory_connector
+%{gemdir}/gems/%{gemname}-%{version}/
+%doc %{gemdir}/doc/%{gemname}-%{version}
+%{gemdir}/cache/%{gemname}-%{version}.gem
+%{gemdir}/specifications/%{gemname}-%{version}.gemspec
+%attr(755,root,root) /etc/init.d/aeolus-connector
+
+
+%changelog
+* Mon Mar 14 2011 Angus Thomas <athomas(a)redhat.com> - 0.0.1-1
+- Initial package
--
1.7.4