[openstack-ironic] Initial import

Angus Thomas athomas at fedoraproject.org
Thu Apr 10 17:13:37 UTC 2014


commit 9de38d44d685831b41b441e308d4523a06456a5d
Author: Angus Thomas <athomas at redhat.com>
Date:   Thu Apr 10 18:12:52 2014 +0100

    Initial import

 .gitignore                                         |    1 +
 ...c-Remove-runtime-dependency-on-python-pbr.patch |   84 ++++++++
 0002-ironic-Default-DB-location.patch              |   25 +++
 openstack-ironic-api.service                       |   12 +
 openstack-ironic-conductor.service                 |   12 +
 openstack-ironic.spec                              |  211 ++++++++++++++++++++
 sources                                            |    1 +
 7 files changed, 346 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..dfb8c73 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/ironic-2014.1.rc1.tar.gz
diff --git a/0001-ironic-Remove-runtime-dependency-on-python-pbr.patch b/0001-ironic-Remove-runtime-dependency-on-python-pbr.patch
new file mode 100644
index 0000000..ffd4b33
--- /dev/null
+++ b/0001-ironic-Remove-runtime-dependency-on-python-pbr.patch
@@ -0,0 +1,84 @@
+From 286edfa2a66d2fde8d4655b1061e6703412d222d Mon Sep 17 00:00:00 2001
+From: Angus Thomas <athomas at redhat.com>
+Date: Mon, 7 Apr 2014 16:59:04 +0100
+Subject: [PATCH] Remove pbr dependency
+
+---
+ requirements.txt      | 30 ------------------------------
+ setup.py              |  1 -
+ test-requirements.txt | 16 ----------------
+ 3 files changed, 47 deletions(-)
+ delete mode 100644 requirements.txt
+ delete mode 100644 test-requirements.txt
+
+diff --git a/requirements.txt b/requirements.txt
+deleted file mode 100644
+index 520bf0a..0000000
+--- a/requirements.txt
++++ /dev/null
+@@ -1,30 +0,0 @@
+-pbr>=0.6,<1.0
+-SQLAlchemy>=0.7.8,<=0.9.99
+-alembic>=0.4.1
+-amqplib>=0.6.1
+-anyjson>=0.3.3
+-argparse
+-eventlet>=0.13.0
+-kombu>=2.4.8
+-lockfile>=0.8
+-lxml>=2.3
+-WebOb>=1.2.3
+-greenlet>=0.3.2
+-futures>=2.1.3
+-sqlalchemy-migrate>=0.8.2,!=0.8.4
+-netaddr>=0.7.6
+-paramiko>=1.9.0
+-iso8601>=0.1.9
+-python-neutronclient>=2.3.4,<3
+-python-glanceclient>=0.9.0
+-python-keystoneclient>=0.6.0
+-stevedore>=0.14
+-websockify>=0.5.1,<0.6
+-oslo.config>=1.2.0
+-oslo.rootwrap
+-pecan>=0.4.5
+-six>=1.5.2
+-jsonpatch>=1.1
+-WSME>=0.6
+-Jinja2
+-pyghmi>=0.5.8
+diff --git a/setup.py b/setup.py
+index 70c2b3f..afab729 100644
+--- a/setup.py
++++ b/setup.py
+@@ -18,5 +18,4 @@
+ import setuptools
+ 
+ setuptools.setup(
+-    setup_requires=['pbr'],
+     pbr=True)
+diff --git a/test-requirements.txt b/test-requirements.txt
+deleted file mode 100644
+index 9dd7463..0000000
+--- a/test-requirements.txt
++++ /dev/null
+@@ -1,16 +0,0 @@
+-hacking>=0.8.0,<0.9
+-coverage>=3.6
+-discover
+-fixtures>=0.3.14
+-mock>=1.0
+-Babel>=1.3
+-MySQL-python
+-psycopg2
+-python-subunit>=0.0.18
+-testrepository>=0.0.18
+-testtools>=0.9.34
+-
+-# Doc requirements
+-sphinx>=1.1.2,<1.2
+-sphinxcontrib-pecanwsme>=0.6
+-oslosphinx
+-- 
+1.9.0
+
diff --git a/0002-ironic-Default-DB-location.patch b/0002-ironic-Default-DB-location.patch
new file mode 100644
index 0000000..7a91168
--- /dev/null
+++ b/0002-ironic-Default-DB-location.patch
@@ -0,0 +1,25 @@
+From 2e78d652efd676c18716cfe286904f83f00765fe Mon Sep 17 00:00:00 2001
+From: Angus Thomas <athomas at redhat.com>
+Date: Mon, 7 Apr 2014 17:07:36 +0100
+Subject: [PATCH] Default DB location
+
+---
+ etc/ironic/ironic.conf.sample | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/etc/ironic/ironic.conf.sample b/etc/ironic/ironic.conf.sample
+index 76f6bae..3f2c3b5 100644
+--- a/etc/ironic/ironic.conf.sample
++++ b/etc/ironic/ironic.conf.sample
+@@ -528,7 +528,7 @@
+ # Deprecated group/name - [DEFAULT]/sql_connection
+ # Deprecated group/name - [DATABASE]/sql_connection
+ # Deprecated group/name - [sql]/connection
+-#connection=<None>
++connection=sqlite:////var/lib/ironic/$sqlite_db
+ 
+ # The SQL mode to be used for MySQL sessions (default is
+ # empty, meaning do not override any server-side SQL mode
+-- 
+1.9.0
+
diff --git a/openstack-ironic-api.service b/openstack-ironic-api.service
new file mode 100644
index 0000000..32b3251
--- /dev/null
+++ b/openstack-ironic-api.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=OpenStack Ironic API service
+After=syslog.target network.target
+
+[Service]
+Type=simple
+User=ironic
+ExecStart=/usr/bin/ironic-api
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/openstack-ironic-conductor.service b/openstack-ironic-conductor.service
new file mode 100644
index 0000000..d0e6f38
--- /dev/null
+++ b/openstack-ironic-conductor.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=OpenStack Ironic Conductor service
+After=syslog.target network.target
+
+[Service]
+Type=simple
+User=ironic
+ExecStart=/usr/bin/ironic-conductor
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/openstack-ironic.spec b/openstack-ironic.spec
new file mode 100644
index 0000000..88bbfa8
--- /dev/null
+++ b/openstack-ironic.spec
@@ -0,0 +1,211 @@
+%if 0%{?rhel} && 0%{?rhel} <= 6
+%{!?__python2: %global __python2 /usr/bin/python2}
+%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
+%{!?python2_sitearch: %global python2_sitearch %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
+%endif
+
+%global	release_name icehouse
+%global	release_letter rc
+%global	milestone 1
+%global	full_release ironic-%{version}.%{release_letter}%{milestone}
+
+
+Name:		openstack-ironic
+Summary:	OpenStack Baremetal Hypervisor API (ironic)
+Version:	2014.1
+Release:	%{release_letter}%{milestone}.2%{?dist}
+License:	ASL 2.0
+Group:		System Environment/Base
+URL:		http://www.openstack.org
+#Source0:	https://launchpad.net/ironic/%{release_name}/%{release_name}-%{milestone}/+download/%{full_release}.tar.gz
+Source0:	https://launchpad.net/ironic/icehouse/icehouse-rc1/+download/ironic-2014.1.rc1.tar.gz
+
+
+Source1:	openstack-ironic-api.service
+Source2:	openstack-ironic-conductor.service
+
+Patch0001:	0001-ironic-Remove-runtime-dependency-on-python-pbr.patch
+Patch0002:	0002-ironic-Default-DB-location.patch
+
+BuildArch:	noarch
+BuildRequires:	python-setuptools
+BuildRequires:	python2-devel
+BuildRequires:	python-pbr
+BuildRequires:	openssl-devel
+BuildRequires:	libxml2-devel
+BuildRequires:	libxslt-devel
+BuildRequires:	gmp-devel
+BuildRequires:	python-sphinx
+BuildRequires:	systemd
+
+
+%prep
+%setup -q -n %{full_release}
+
+%patch0001 -p1
+%patch0002 -p1
+
+%build
+%{__python2} setup.py build
+
+%install
+%{__python2} setup.py install -O1 --skip-build --root=%{buildroot}
+
+
+# install systemd scripts
+mkdir -p %{buildroot}%{_unitdir}
+install -p -D -m 644 %{SOURCE1} %{buildroot}%{_unitdir}
+install -p -D -m 644 %{SOURCE2} %{buildroot}%{_unitdir}
+
+mkdir -p %{buildroot}%{_sharedstatedir}/ironic/
+mkdir -p %{buildroot}%{_sysconfdir}/ironic/rootwrap.d
+
+#Populate the conf dir
+install -p -D -m 640 %{_builddir}/%{full_release}/etc/ironic/ironic.conf.sample %{buildroot}/%{_sysconfdir}/ironic/ironic.conf
+install -p -D -m 640 %{_builddir}/%{full_release}/etc/ironic/policy.json %{buildroot}/%{_sysconfdir}/ironic/policy.json
+install -p -D -m 640 %{_builddir}/%{full_release}/etc/ironic/rootwrap.conf %{buildroot}/%{_sysconfdir}/ironic/rootwrap.conf
+install -p -D -m 640 %{_builddir}/%{full_release}/etc/ironic/rootwrap.d/* %{buildroot}/%{_sysconfdir}/ironic/rootwrap.d/
+
+
+%description
+Ironic provides an API for management and provisioning of physical machines
+
+%package common
+Summary: Ironic common
+Group: System Environment/Base
+
+Requires:	python-eventlet
+Requires:	python-fixtures
+Requires:	python-iso8601
+Requires:	python-jsonpatch
+Requires:	python-kombu
+Requires:	python-anyjson
+Requires:	python-migrate
+Requires:	python-mock
+Requires:	python-netaddr
+Requires:	python-paramiko
+Requires:	python-pecan
+Requires:	python-stevedore
+Requires:	python-wsme
+Requires:	pycrypto
+Requires:	python-sqlalchemy
+Requires:	python-neutronclient
+Requires:	python-glanceclient
+Requires:	python-keystoneclient
+Requires:	python-jinja2
+Requires:	python-pyghmi
+Requires:	python-alembic
+
+Requires(pre):	shadow-utils
+
+%description common
+Components common to all OpenStack Ironic services
+
+
+%files common
+%doc README.rst LICENSE
+%{_bindir}/ironic-dbsync
+%{_bindir}/ironic-rootwrap
+%{python_sitelib}/ironic*
+%config(noreplace) %attr(-,root,ironic) %{_sysconfdir}/ironic
+%attr(-,ironic,ironic) %{_sharedstatedir}/ironic
+
+%pre common
+getent group ironic >/dev/null || groupadd -r ironic
+getent passwd ironic >/dev/null || \
+    useradd -r -g ironic -d %{_sharedstatedir}/ironic -s /sbin/nologin \
+-c "OpenStack Ironic Daemons" ironic
+exit 0
+
+%package api
+Summary: The Ironic API
+Group: System Environment/Base
+
+Requires: %{name}-common = %{version}-%{release}
+
+Requires(post): systemd
+Requires(preun): systemd
+Requires(postun): systemd
+
+%description api
+Ironic API for management and provisioning of physical machines
+
+
+%files api
+%doc LICENSE
+%{_bindir}/ironic-api
+%{_unitdir}/openstack-ironic-api.service
+
+%post api
+%systemd_post openstack-ironic-api.service
+
+%preun api
+%systemd_preun openstack-ironic-api.service
+
+%postun api
+%systemd_postun_with_restart openstack-ironic-api.service
+
+%package conductor
+Summary: The Ironic Conductor
+Group: System Environment/Base
+
+Requires: %{name}-common = %{version}-%{release}
+
+Requires(post): systemd
+Requires(preun): systemd
+Requires(postun): systemd
+
+%description conductor
+Ironic Conductor for management and provisioning of physical machines
+
+
+%files conductor
+%doc LICENSE
+%{_bindir}/ironic-conductor
+%{_unitdir}/openstack-ironic-conductor.service
+
+%post conductor
+%systemd_post openstack-ironic-conductor.service
+
+%preun conductor
+%systemd_preun openstack-ironic-conductor.service
+
+%postun conductor
+%systemd_postun_with_restart openstack-ironic-conductor.service
+
+
+
+%changelog
+
+* Wed Apr 9 2014 Angus Thomas <athomas at redhat.com> - 2014.1-rc1.2
+- License file in each package
+
+* Mon Apr 7 2014 Angus Thomas <athomas at redhat.com> - 2014.1-rc1.1
+- Rebuilt with -rc1 tarball
+- Rebased patches
+- Added dependency on python-alembic
+
+* Thu Mar 27 2014 Angus Thomas <athomas at redhat.com> - 2014.1-b2.5
+- Split into multiple packages
+
+* Fri Feb 28 2014 Angus Thomas <athomas at redhat.com> - 2014.1-b2.4
+- Restored BuildRequires: python-pbr 
+
+* Thu Feb 27 2014 Angus Thomas <athomas at redhat.com> - 2014.1-b2.3
+- Added dependency on python-pyghmi
+- Patch to remove pbr build dependency
+- Fixed python2-devel build dependency
+- Added noreplace to config files
+- Added  unitdir macro for systemd service file installation
+- Added scripts to manage systemd services
+- Removed unnecessary Requires & BuildRequires
+
+
+* Mon Feb 24 2014 Angus Thomas <athomas at redhat.com> - 2014.1-b2.2
+- Removed /var/log/ironic from package
+- Replaced hardcoded file paths with macros
+- Added LICENSE and README.rst docs
+
+* Fri Feb 21 2014 Angus Thomas <athomas at redhat.com> - 2014.1-b2.1
+- Initial package build
+
diff --git a/sources b/sources
index e69de29..074b0e0 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+aed9d9b56d1b013b886a49c5fd892c4e  ironic-2014.1.rc1.tar.gz


More information about the scm-commits mailing list