add openstack-glance-registry && openstack-glance-scrubber

(cherry picked from commit a246e561a26d7553ed755a0d6cb593b8b102b684)
This commit is contained in:
FFrog 2021-11-25 15:24:13 +08:00 committed by openeuler-sync-bot
parent b49384515b
commit c0cbd65a8c
4 changed files with 158 additions and 38 deletions

3
glance Normal file
View File

@ -0,0 +1,3 @@
Defaults:glance !requiretty
glance ALL = (root) NOPASSWD: /usr/bin/glance-rootwrap /etc/glance/rootwrap.conf *

View File

@ -0,0 +1,14 @@
[Unit]
Description=OpenStack Image Service (code-named Glance) Registry server
After=syslog.target network.target
[Service]
Type=simple
User=glance
ExecStart=/usr/bin/glance-registry
PrivateTmp=true
Restart=on-failure
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,14 @@
[Unit]
Description=OpenStack Image Service deferred image deletion service
After=syslog.target network.target
[Service]
Type=simple
User=glance
ExecStart=/usr/bin/glance-scrubber
PrivateTmp=true
Restart=on-failure
[Install]
WantedBy=multi-user.target

View File

@ -1,12 +1,19 @@
Name: openstack-glance
Version: 19.0.4
Release: 2
Release: 3
Summary: OpenStack Image Service (Glance)
License: ASL 2.0
URL: https://docs.openstack.org/glance
Source0: https://tarballs.opendev.org/openstack/glance/glance-19.0.4.tar.gz
Source1: openstack-glance.logrotate
Source2: openstack-glance-api.service
Source10: openstack-glance-api.service
Source11: openstack-glance-registry.service
Source12: openstack-glance-scrubber.service
Source20: openstack-glance.logrotate
Source30: glance
BuildRequires: openstack-macros
BuildRequires: qemu-img
@ -80,6 +87,8 @@ BuildRequires: python3-os-brick
BuildRequires: python3-oslo-privsep
Requires: openstack-glance-api = %{version}-%{release}
Requires: openstack-glance-registry = %{version}-%{release}
Requires: openstack-glance-scrubber = %{version}-%{release}
BuildArch: noarch
%description
@ -95,12 +104,8 @@ OpenStack Swift project.
%package api
Summary: OpenStack Image service (Glance) - API
Requires: python3-glance = %{version}-%{release}
Requires: logrotate
Requires(post): systemd
Requires(postun): systemd
Requires(preun): systemd
Requires(pre): shadow-utils
Requires: openstack-glance-common = %{version}-%{release}
%description api
The Glance project provides a service where users can upload and discover
@ -115,7 +120,61 @@ OpenStack Swift project.
This package contains the %{name} API server.
%package -n python3-glance
%package registry
Summary: OpenStack Image service (Glance) - Registry
Requires: openstack-glance-common = %{version}-%{release}
%description registry
The Glance project provides a service where users can upload and discover
data assets that are meant to be used with other services. This currently
includes images and metadata definitions.
Glance image services include discovering, registering, and retrieving
virtual machine images. Glance has a RESTful API that allows querying of
VM image metadata as well as retrieval of the actual image.
VM images made available through Glance can be stored in a variety of
locations from simple filesystems to object-storage systems like the
OpenStack Swift project.
This package contains the %{name} registry server.
%package scrubber
Summary: OpenStack Image service (Glance) - Scrubber
Requires: openstack-glance-common = %{version}-%{release}
%description scrubber
The Glance project provides a service where users can upload and discover
data assets that are meant to be used with other services. This currently
includes images and metadata definitions.
Glance image services include discovering, registering, and retrieving
virtual machine images. Glance has a RESTful API that allows querying of
VM image metadata as well as retrieval of the actual image.
VM images made available through Glance can be stored in a variety of
locations from simple filesystems to object-storage systems like the
OpenStack Swift project.
This package contains the %{name} scrubber server.
%package common
Summary: OpenStack Image service (Glance) - Common
Requires: python3-glance = %{version}-%{release}
%description common
The Glance project provides a service where users can upload and discover
data assets that are meant to be used with other services. This currently
includes images and metadata definitions.
Glance image services include discovering, registering, and retrieving
virtual machine images. Glance has a RESTful API that allows querying of
VM image metadata as well as retrieval of the actual image.
VM images made available through Glance can be stored in a variety of
locations from simple filesystems to object-storage systems like the
OpenStack Swift project.
This package contains scripts, config and dependencies shared between all the ${name} services.
%package -n python3-glance
Summary: OpenStack Image Service (Glance) - Python module
Requires: python3-paste
@ -223,7 +282,7 @@ This package contains the Glance test files.
%build
%{py3_build}
# regenerate the sample config files
for service in api scrubber cache manage image-import; do
for service in api registry scrubber cache manage image-import; do
PYTHONPATH=. oslo-config-generator --config-file etc/oslo-config-generator/glance-$service.conf
done
@ -240,49 +299,86 @@ install -d -m 750 %{buildroot}%{_localstatedir}/cache/glance
install -d -m 700 %{buildroot}%{_rundir}/glance
# install sample configs
cp -pr etc/* %{buildroot}%{_sysconfdir}/glance
for service in api scrubber cache manage swift image-import; do
for service in api registry scrubber cache manage swift image-import; do
mv %{buildroot}%{_sysconfdir}/glance/glance-$service.conf{.sample,}
done
rm -rf %{buildroot}%{_sysconfdir}/glance/oslo-config-generator
# systemd
install -p -D -m 444 %{SOURCE2} %{buildroot}%{_unitdir}/openstack-glance-api.service
install -p -D -m 444 %{SOURCE10} %{buildroot}%{_unitdir}/openstack-glance-api.service
install -p -D -m 444 %{SOURCE11} %{buildroot}%{_unitdir}/openstack-glance-registry.service
install -p -D -m 444 %{SOURCE12} %{buildroot}%{_unitdir}/openstack-glance-scrubber.service
# logrotate
install -p -D -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/logrotate.d/openstack-glance
install -p -D -m 644 %{SOURCE20} %{buildroot}%{_sysconfdir}/logrotate.d/openstack-glance
# sudo
install -D -m 440 -p %{SOURCE30} %{buildroot}%{_sysconfdir}/sudoers.d/glance
# move metadefs
mv %{buildroot}%{_prefix}%{_sysconfdir}/glance/metadefs/* %{buildroot}%{_sysconfdir}/glance/metadefs
# Remove duplicate files under /usr/etc
rm -rf %{buildroot}%{_prefix}%{_sysconfdir}/glance
%pre api
%openstack_pre_user_group_create glance glance /sbin/nologin
%check
stestr run --black-regex 'glance.tests.unit.common.test_format_inspector.TestFormatInspectors.test_vdi'
%pre common
%openstack_pre_user_group_create glance glance /sbin/nologin
%post api
%systemd_post %{name}-api.service
%systemd_post openstack-glance-api.service
%post registry
%systemd_post openstack-glance-registry.service
%post scrubber
%systemd_post openstack-glance-scrubber.service
%preun api
%systemd_preun %{name}-api.service
%systemd_preun openstack-glance-api.service
%preun registry
%systemd_preun openstack-glance-registry.service
%preun scrubber
%systemd_preun openstack-glance-scrubber.service
%postun api
%systemd_postun_with_restart %{name}-api.service
%systemd_postun_with_restart openstack-glance-api.service
%postun registry
%systemd_postun_with_restart openstack-glance-registry.service
%postun scrubber
%systemd_postun_with_restart openstack-glance-scrubber.service
%files
%files api
%{_bindir}/glance-api
%{_bindir}/glance-wsgi-api
%{_unitdir}/openstack-glance-api.service
%config(noreplace) %attr(0640, glance, glance) %{_sysconfdir}/glance/glance-api.conf
%files registry
%{_bindir}/glance-registry
%{_unitdir}/openstack-glance-registry.service
%config(noreplace) %attr(0640, glance, glance) %{_sysconfdir}/glance/glance-registry.conf
%files scrubber
%{_bindir}/glance-scrubber
%{_unitdir}/openstack-glance-scrubber.service
%config(noreplace) %attr(0640, glance, glance) %{_sysconfdir}/glance/glance-scrubber.conf
%files common
%license LICENSE
%dir %attr(0750, root, glance) %{_sysconfdir}/glance
%dir %attr(0750, root, glance) %{_sysconfdir}/glance/glance.conf.d/
%dir %attr(0750, root, glance) %{_sysconfdir}/glance/glance-api.conf.d/
%config(noreplace) %attr(0640, root, glance) %{_sysconfdir}/glance/glance-api.conf
%config(noreplace) %attr(0640, root, glance) %{_sysconfdir}/glance/glance-registry.conf
%dir %attr(0750, glance, glance) %{_sysconfdir}/glance
%dir %attr(0750, glance, glance) %{_sysconfdir}/glance/glance.conf.d/
%dir %attr(0750, glance, glance) %{_sysconfdir}/glance/glance-api.conf.d/
%dir %attr(0750, glance, glance) %{_sysconfdir}/glance/metadefs
%dir %attr(0755, glance, glance) %{_localstatedir}/lib/glance
%dir %attr(0755, glance, glance) %{_localstatedir}/lib/glance/images
%dir %attr(0750, glance, glance) %{_localstatedir}/log/glance
%dir %attr(0750, glance, glance) %{_localstatedir}/cache/glance
%config(noreplace) %attr(0640, root, glance) %{_sysconfdir}/glance/glance-cache.conf
%config(noreplace) %attr(0640, root, glance) %{_sysconfdir}/glance/glance-image-import.conf
%config(noreplace) %attr(0640, root, glance) %{_sysconfdir}/glance/glance-scrubber.conf
%config(noreplace) %attr(0640, root, glance) %{_sysconfdir}/glance/glance-swift.conf
%config(noreplace) %attr(0640, root, glance) %{_sysconfdir}/glance/glance-manage.conf
%config(noreplace) %attr(0440, root, root) %{_sysconfdir}/sudoers.d/glance
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%config %{_sysconfdir}/glance/glance-api-paste.ini
%config %{_sysconfdir}/glance/glance-registry-paste.ini
%config %{_sysconfdir}/glance/policy.json
@ -290,14 +386,9 @@ stestr run --black-regex 'glance.tests.unit.common.test_format_inspector.TestFor
%config %{_sysconfdir}/glance/property-protections-roles.conf.sample
%config %{_sysconfdir}/glance/ovf-metadata.json.sample
%config %{_sysconfdir}/glance/schema-image.json
%dir %config %{_sysconfdir}/glance/metadefs
%{_sysconfdir}/glance/metadefs/README
%config %{_sysconfdir}/glance/metadefs/*.json
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%dir %attr(0755, glance, glance) %{_localstatedir}/lib/glance
%dir %attr(0755, glance, glance) %{_localstatedir}/lib/glance/images
%dir %attr(0750, glance, glance) %{_localstatedir}/log/glance
%dir %attr(0750, glance, glance) %{_localstatedir}/cache/glance
%{_sysconfdir}/glance/metadefs/README
%{_bindir}/glance-cache-cleaner
%{_bindir}/glance-cache-manage
%{_bindir}/glance-cache-prefetcher
@ -305,12 +396,7 @@ stestr run --black-regex 'glance.tests.unit.common.test_format_inspector.TestFor
%{_bindir}/glance-control
%{_bindir}/glance-manage
%{_bindir}/glance-replicator
%{_bindir}/glance-scrubber
%{_bindir}/glance-status
%{_bindir}/glance-registry
%{_unitdir}/openstack-glance-api.service
%{_bindir}/glance-api
%{_bindir}/glance-wsgi-api
%files -n python3-glance
%license LICENSE
@ -322,6 +408,9 @@ stestr run --black-regex 'glance.tests.unit.common.test_format_inspector.TestFor
%{python3_sitelib}/glance/tests
%changelog
* Thu Nov 25 2021 lijiawei <ljw1101.vip@gmail.com> - 19.0.4-3
- Update the spec structure
* Mon Nov 15 2021 lijiawei <ljw1101.vip@gmail.com> - 19.0.4-2
- Fix the bugs about how to generate the etc/policy.json