Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
Cloud:OpenStack:Zed
openstack-ironic-inspector
openstack-ironic-inspector.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File openstack-ironic-inspector.spec of Package openstack-ironic-inspector
# # spec file for package openstack-ironic-inspector # # Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %global with_doc 1 Name: openstack-ironic-inspector Epoch: 0 Version: 11.1.1~dev5 Release: 0 Summary: Hardware introspection service for OpenStack Ironic License: Apache-2.0 URL: https://docs.openstack.org/ironic-inspector Source0: ironic-inspector-stable-zed.tar.gz Source1: openstack-ironic-inspector.sudoers Source2: openstack-ironic-inspector.logrotate Source3: openstack-ironic-inspector.defaultconf Source4: openstack-ironic-inspector.dnsmasqconf # systemd service files Source5: openstack-ironic-inspector.service Source6: openstack-ironic-inspector-dnsmasq.service Source7: openstack-ironic-inspector-conductor.service BuildRequires: openstack-macros BuildRequires: python3-devel BuildRequires: python39-Flask BuildRequires: python39-SQLAlchemy BuildRequires: python39-alembic BuildRequires: python39-automaton BuildRequires: python39-construct BuildRequires: python39-eventlet BuildRequires: python39-fixtures BuildRequires: python39-futurist BuildRequires: python39-ironic-lib BuildRequires: python39-jsonpath-rw BuildRequires: python39-jsonschema BuildRequires: python39-keystoneauth1 BuildRequires: python39-keystonemiddleware BuildRequires: python39-netaddr BuildRequires: python39-openstacksdk BuildRequires: python39-oslo.concurrency BuildRequires: python39-oslo.config BuildRequires: python39-oslo.context BuildRequires: python39-oslo.db BuildRequires: python39-oslo.i18n BuildRequires: python39-oslo.log BuildRequires: python39-oslo.messaging BuildRequires: python39-oslo.middleware BuildRequires: python39-oslo.policy BuildRequires: python39-oslo.serialization BuildRequires: python39-oslo.utils BuildRequires: python39-oslotest BuildRequires: python39-pbr BuildRequires: python39-pytz BuildRequires: python39-retrying BuildRequires: python39-stestr BuildRequires: python39-stevedore BuildRequires: python39-testscenarios BuildRequires: python39-tooz BuildRequires: sudo Requires: logrotate Requires: python3-ironic-inspector = %{epoch}:%{version}-%{release} BuildArch: noarch %if 0%{?suse_version} BuildRequires: systemd-rpm-macros %{?systemd_requires} %else BuildRequires: systemd Requires(post): systemd Requires(postun):systemd Requires(pre): shadow-utils Requires(preun):systemd %endif %description Ironic Inspector is an auxiliary service for discovering hardware properties for a node managed by OpenStack Ironic. Hardware introspection or hardware properties discovery is a process of getting hardware parameters required for scheduling from a bare metal node, given its power management credentials (e.g. IPMI address, user name and password). This package contains Python modules and an ironic-inspector service combining API and conductor in one binary. %package -n python3-ironic-inspector Summary: Hardware introspection service for OpenStack Ironic Group: Development/Languages/Python Requires: openstack-ironic-inspector-dnsmasq Requires: python39-Flask Requires: python39-SQLAlchemy Requires: python39-alembic Requires: python39-automaton Requires: python39-construct Requires: python39-eventlet Requires: python39-futurist Requires: python39-ironic-lib Requires: python39-jsonpath-rw Requires: python39-jsonschema Requires: python39-keystoneauth1 Requires: python39-keystonemiddleware Requires: python39-netaddr Requires: python39-openstacksdk Requires: python39-oslo.concurrency Requires: python39-oslo.config Requires: python39-oslo.context Requires: python39-oslo.db Requires: python39-oslo.i18n Requires: python39-oslo.log Requires: python39-oslo.messaging Requires: python39-oslo.middleware Requires: python39-oslo.policy Requires: python39-oslo.rootwrap Requires: python39-oslo.serialization Requires: python39-oslo.service Requires: python39-oslo.utils Requires: python39-pbr Requires: python39-pytz Requires: python39-retrying Requires: python39-stevedore Requires: python39-tooz %description -n python3-ironic-inspector Ironic Inspector is an auxiliary service for discovering hardware properties for a node managed by OpenStack Ironic. Hardware introspection or hardware properties discovery is a process of getting hardware parameters required for scheduling from a bare metal node, given its power management credentials (e.g. IPMI address, user name and password). This package contains Python modules and an ironic-inspector service combining API and conductor in one binary. %if 0%{?with_doc} %package doc Summary: Documentation for Ironic Inspector Group: Documentation/HTML BuildRequires: python39-Sphinx BuildRequires: python39-openstackdocstheme BuildRequires: python39-sphinxcontrib-apidoc BuildRequires: python39-sphinxcontrib-svg2pdfconverter %description doc Documentation for Ironic Inspector. %endif %package -n openstack-ironic-inspector-dnsmasq Summary: DHCP service for ironic-inspector using dnsmasq Requires: dnsmasq Requires: openstack-ironic-inspector = %{epoch}:%{version}-%{release} %description -n openstack-ironic-inspector-dnsmasq Ironic Inspector is an auxiliary service for discovering hardware properties for a node managed by OpenStack Ironic. Hardware introspection or hardware properties discovery is a process of getting hardware parameters required for scheduling from a bare metal node, given its power management credentials (e.g. IPMI address, user name and password). This package contains a dnsmasq service pre-configured for using with ironic-inspector. %package -n openstack-ironic-inspector-conductor Summary: Conductor service for Ironic Inspector Requires: openstack-ironic-inspector = %{epoch}:%{version}-%{release} %description -n openstack-ironic-inspector-conductor Ironic Inspector is an auxiliary service for discovering hardware properties for a node managed by OpenStack Ironic. Hardware introspection or hardware properties discovery is a process of getting hardware parameters required for scheduling from a bare metal node, given its power management credentials (e.g. IPMI address, user name and password). This package contains an ironic-inspector conductor service, which can be used to split ironic-inspector into API and conductor processes. %package -n openstack-ironic-inspector-api Summary: WSGI service service for Ironic Inspector Requires: openstack-ironic-inspector = %{epoch}:%{version}-%{release} %description -n openstack-ironic-inspector-api Ironic Inspector is an auxiliary service for discovering hardware properties for a node managed by OpenStack Ironic. Hardware introspection or hardware properties discovery is a process of getting hardware parameters required for scheduling from a bare metal node, given its power management credentials (e.g. IPMI address, user name and password). This package contains an ironic-inspector WSGI service, which can be used to split ironic-inspector into API and conductor processes. %prep %autosetup -p1 -n ironic-inspector-11.1.1.dev5 %py_req_cleanup %build %{py3_build} %if 0%{?with_doc} export PYTHONPATH=. export PBR_VERSION=11.1.1.dev5 %sphinx_build --keep-going -b html doc/source doc/build/html %sphinx_build --keep-going -b man doc/source doc/build/man # remove the Sphinx-build leftovers rm -rf doc/build/html/.{doctrees,buildinfo} rm -rf doc/build/man/.{doctrees,buildinfo} %endif %install %{py3_install} # logs configuration install -d -m 750 %{buildroot}%{_localstatedir}/log/ironic-inspector install -d -m 750 %{buildroot}%{_localstatedir}/log/ironic-inspector/ramdisk install -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/openstack-ironic-inspector # install systemd scripts mkdir -p %{buildroot}%{_unitdir} install -p -D -m 644 %{SOURCE5} %{buildroot}%{_unitdir} install -p -D -m 644 %{SOURCE6} %{buildroot}%{_unitdir} install -p -D -m 644 %{SOURCE7} %{buildroot}%{_unitdir} # install sudoers file mkdir -p %{buildroot}%{_sysconfdir}/sudoers.d install -p -D -m 440 %{SOURCE1} %{buildroot}%{_sysconfdir}/sudoers.d/openstack-ironic-inspector # install configuration files install -d -m 750 %{buildroot}%{_sysconfdir}/ironic-inspector install -p -D -m 640 %{SOURCE3} %{buildroot}/%{_sysconfdir}/ironic-inspector/ironic-inspector.conf install -p -D -m 640 %{SOURCE4} %{buildroot}/%{_sysconfdir}/ironic-inspector/dnsmasq.conf # rootwrap configuration mkdir -p %{buildroot}%{_sysconfdir}/ironic-inspector/rootwrap.d install -p -D -m 640 rootwrap.conf %{buildroot}/%{_sysconfdir}/ironic-inspector/rootwrap.conf install -p -D -m 640 rootwrap.d/* %{buildroot}/%{_sysconfdir}/ironic-inspector/rootwrap.d/ ### install symlinks on SUSE %if 0%{?suse_version} mkdir -p %{buildroot}%{_sbindir} ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}-api ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}-conductor ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}-dnsmasq %endif ### man pages %if 0%{?with_doc} mkdir -p %{buildroot}%{_mandir}/man1 install -p -D -m 644 doc/build/man/ironic-inspector.1 %{buildroot}%{_mandir}/man1/ %endif %check export LC_ALL=en_US.UTF-8 %{openstack_stestr_run} %pre %openstack_pre_user_group_create ironic-inspector ironic-inspector /sbin/nologin exit 0 %post api %systemd_post %{name}.service %preun api %systemd_preun %{name}.service %postun api %systemd_postun %{name}.service %post dnsmasq %systemd_post %{name}-dnsmasq.service %preun dnsmasq %systemd_preun %{name}-dnsmasq.service %postun dnsmasq %systemd_postun %{name}-dnsmasq.service %post conductor %systemd_post %{name}-conductor.service %preun conductor %systemd_preun %{name}-conductor.service %postun conductor %systemd_postun %{name}-conductor.service %files %doc README.rst %license LICENSE %dir %attr(0750, ironic-inspector, ironic-inspector) %{_localstatedir}/log/ironic-inspector %dir %{_sysconfdir}/ironic-inspector %config(noreplace) %{_sysconfdir}/logrotate.d/openstack-ironic-inspector %config(noreplace) %{_sysconfdir}/sudoers.d/openstack-ironic-inspector %config(noreplace) %attr(0640, root, ironic-inspector) %{_sysconfdir}/ironic-inspector/ironic-inspector.conf %config(noreplace) %attr(0640, root, ironic-inspector) %{_sysconfdir}/ironic-inspector/dnsmasq.conf %config %{_sysconfdir}/ironic-inspector/rootwrap.conf %dir %{_sysconfdir}/ironic-inspector/rootwrap.d %config(noreplace) %{_sysconfdir}/ironic-inspector/rootwrap.d/ironic-inspector.filters %{_bindir}/ironic-inspector-rootwrap %{_bindir}/ironic-inspector-dbsync %{_bindir}/ironic-inspector-migrate-data %if 0%{?with_doc} %{_mandir}/man1/ironic-inspector.1.gz %endif %files -n python3-ironic-inspector %license LICENSE %{python3_sitelib}/ironic_inspector/ %{python3_sitelib}/ironic_inspector*.egg-info %files doc %license LICENSE %doc doc/build/html %files dnsmasq %license LICENSE %{_unitdir}/%{name}-dnsmasq.service %if 0%{?suse_version} %{_sbindir}/rc%{name}-dnsmasq %endif %files api %license LICENSE %{_unitdir}/%{name}.service %if 0%{?suse_version} %{_sbindir}/rc%{name}-api %endif %{_bindir}/ironic-inspector %{_bindir}/ironic-inspector-status %{_bindir}/ironic-inspector-api-wsgi %files conductor %license LICENSE %{_unitdir}/%{name}-conductor.service %if 0%{?suse_version} %{_sbindir}/rc%{name}-conductor %endif %{_bindir}/ironic-inspector-conductor %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor