Compare commits

...

10 Commits

Author SHA1 Message Date
openeuler-ci-bot
8765d4f95d
!39 【轻量级 PR】:Add osprofiler requires
Merge pull request !39 from 王玺源/N/A
2022-01-26 01:14:10 +00:00
王玺源
39eac6161e
Add osprofiler requires 2022-01-25 09:17:12 +00:00
openeuler-ci-bot
cea8f4ee9c !34 [sync] PR-33: Fixes aarch64 incorrect cpu model
From: @openeuler-sync-bot
Reviewed-by: @xiyuanwang
Signed-off-by: @xiyuanwang
2021-11-30 11:18:40 +00:00
huangtianhua
c0e8883de7 Fixes aarch64 incorrect cpu model
(cherry picked from commit e2cf0dc3027f86cb51f01a5a3be8aea97f83ecf3)
2021-11-30 19:02:34 +08:00
openeuler-ci-bot
8e02afd34d !31 【轻量级 PR】:fix install issue
From: @zhangy1317
Reviewed-by: @huangtianhua
Signed-off-by: @huangtianhua
2021-11-23 12:13:46 +00:00
zhangy1317
d53efebd33 fix install issue 2021-11-23 07:41:02 +00:00
openeuler-ci-bot
fb05d68ee9 !29 [sync] PR-28: 【轻量级 PR】:20.6.1 doesn't require python-dataclasses, removes it
From: @openeuler-sync-bot
Reviewed-by: @xiyuanwang
Signed-off-by: @xiyuanwang
2021-11-19 08:28:36 +00:00
huangtianhua
dee2b88ab8 20.6.1 doesn't require python-dataclasses, removes it
(cherry picked from commit 1e74d5c6fd159743b48c725a6323d6971fc02998)
2021-11-19 16:21:08 +08:00
openeuler-ci-bot
eaf56622d3 !27 Train support
From: @xiyuanwang
Reviewed-by: 
Signed-off-by:
2021-11-12 02:34:35 +00:00
wangxiyuan
1fc18a5f2a Train support 2021-11-12 02:10:54 +00:00
4 changed files with 193 additions and 165 deletions

View File

@ -1,61 +0,0 @@
From 61fdc7d0caa978864e196a48d06ff262f7c78dc9 Mon Sep 17 00:00:00 2001
From: FFrog <ljw1101.vip@gmail.com>
Date: Thu, 9 Sep 2021 19:35:41 +0800
Subject: [PATCH] downgrade the version of qemu from 4.2.0 to 4.1.0
---
nova/virt/libvirt/driver.py | 24 ++++++++++++++++++++++--
1 file changed, 22 insertions(+), 2 deletions(-)
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
index 8ee8757..e447b85 100644
--- a/nova/virt/libvirt/driver.py
+++ b/nova/virt/libvirt/driver.py
@@ -213,7 +213,7 @@ patch_tpool_proxy()
#
# DO NOT FORGET to update this document when touching any versions below!
MIN_LIBVIRT_VERSION = (6, 0, 0)
-MIN_QEMU_VERSION = (4, 2, 0)
+MIN_QEMU_VERSION = (4, 1, 0)
NEXT_MIN_LIBVIRT_VERSION = (7, 0, 0)
NEXT_MIN_QEMU_VERSION = (5, 2, 0)
@@ -234,6 +234,10 @@ VGPU_RESOURCE_SEMAPHORE = 'vgpu_resources'
LIBVIRT_PERF_EVENT_PREFIX = 'VIR_PERF_PARAM_'
+# -blockdev support (replacing -drive)
+MIN_LIBVIRT_BLOCKDEV = (6, 0, 0)
+MIN_QEMU_BLOCKDEV = (4, 2, 0)
+
# VDPA interface support
MIN_LIBVIRT_VDPA = (6, 9, 0)
MIN_QEMU_VDPA = (5, 1, 0)
@@ -2092,7 +2096,23 @@ class LibvirtDriver(driver.ComputeDriver):
guest.delete_configuration(support_uefi)
try:
- dev.copy(conf.to_xml(), reuse_ext=True)
+ # NOTE(lyarwood): Use virDomainBlockCopy from libvirt >= 6.0.0
+ # and QEMU >= 4.2.0 with -blockdev domains allowing QEMU to
+ # copy to remote disks.
+ if self._host.has_min_version(lv_ver=MIN_LIBVIRT_BLOCKDEV,
+ hv_ver=MIN_QEMU_BLOCKDEV):
+ dev.copy(conf.to_xml(), reuse_ext=True)
+ else:
+ # TODO(lyarwood): Remove the following use of
+ # virDomainBlockRebase once MIN_LIBVIRT_VERSION hits >=
+ # 6.0.0 and MIN_QEMU_VERSION hits >= 4.2.0.
+ # Start copy with VIR_DOMAIN_BLOCK_REBASE_REUSE_EXT flag to
+ # allow writing to existing external volume file. Use
+ # VIR_DOMAIN_BLOCK_REBASE_COPY_DEV if it's a block device
+ # to make sure XML is generated correctly (bug 1691195)
+ copy_dev = conf.source_type == 'block'
+ dev.rebase(conf.source_path, copy=True, reuse_ext=True,
+ copy_dev=copy_dev)
while not dev.is_job_complete():
time.sleep(0.5)
--
2.27.0

View File

@ -0,0 +1,93 @@
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
index f51463f..94d9982 100644
--- a/nova/virt/libvirt/driver.py
+++ b/nova/virt/libvirt/driver.py
@@ -789,12 +789,6 @@ class LibvirtDriver(driver.ComputeDriver):
cpu = vconfig.LibvirtConfigGuestCPU()
for model in models:
cpu.model = self._get_cpu_model_mapping(model)
- if not cpu.model:
- msg = (_("Configured CPU model: %(model)s is not correct, "
- "or your host CPU arch does not suuport this "
- "model. Please correct your config and try "
- "again.") % {'model': model})
- raise exception.InvalidCPUInfo(msg)
try:
self._compare_cpu(cpu, self._get_cpu_info(), None)
except exception.InvalidCPUInfo as e:
@@ -4323,11 +4317,27 @@ class LibvirtDriver(driver.ComputeDriver):
:return: Case-sensitive CPU model name, or None(Only when configured
CPU model name not correct)
"""
+ cpu_info = self._get_cpu_info()
+ if cpu_info['arch'] not in (fields.Architecture.I686,
+ fields.Architecture.X86_64,
+ fields.Architecture.PPC64,
+ fields.Architecture.PPC64LE,
+ fields.Architecture.PPC):
+ return model
+
if not self.cpu_models_mapping:
cpu_models = self._host.get_cpu_model_names()
for cpu_model in cpu_models:
self.cpu_models_mapping[cpu_model.lower()] = cpu_model
- return self.cpu_models_mapping.get(model.lower(), None)
+
+ if model.lower() not in self.cpu_models_mapping:
+ msg = (_("Configured CPU model: %(model)s is not correct, "
+ "or your host CPU arch does not support this "
+ "model. Please correct your config and try "
+ "again.") % {'model': model})
+ raise exception.InvalidCPUInfo(msg)
+
+ return self.cpu_models_mapping.get(model.lower())
def _get_guest_cpu_model_config(self, flavor=None):
mode = CONF.libvirt.cpu_mode
@@ -4338,8 +4348,8 @@ class LibvirtDriver(driver.ComputeDriver):
if (CONF.libvirt.virt_type == "kvm" or
CONF.libvirt.virt_type == "qemu"):
+ caps = self._host.get_capabilities()
if mode is None:
- caps = self._host.get_capabilities()
# AArch64 lacks 'host-model' support because neither libvirt
# nor QEMU are able to tell what the host CPU model exactly is.
# And there is no CPU description code for ARM(64) at this
@@ -4358,6 +4368,12 @@ class LibvirtDriver(driver.ComputeDriver):
mode = "host-model"
if mode == "none":
return vconfig.LibvirtConfigGuestCPU()
+ # On AArch64 platform the return of _get_cpu_model_mapping will not
+ # return the default CPU model.
+ if mode == "custom":
+ if arch == fields.Architecture.AARCH64:
+ if not models:
+ models = ['max']
else:
if mode is None or mode == "none":
return None
@@ -10618,6 +10634,10 @@ class LibvirtDriver(driver.ComputeDriver):
else:
models = [self._get_cpu_model_mapping(model)
for model in CONF.libvirt.cpu_models]
+ # Aarch64 platform doesn't return the default CPU models
+ if caps.host.cpu.arch == fields.Architecture.AARCH64:
+ if not models:
+ models = ['max']
# For custom mode, iterate through cpu models
for model in models:
caps.host.cpu.model = model
diff --git a/nova/virt/libvirt/utils.py b/nova/virt/libvirt/utils.py
index 0c04833..5809b1c 100644
--- a/nova/virt/libvirt/utils.py
+++ b/nova/virt/libvirt/utils.py
@@ -537,6 +537,8 @@ def get_cpu_model_from_arch(arch):
mode = 'qemu32'
elif arch == obj_fields.Architecture.PPC64LE:
mode = 'POWER8'
+ elif arch == obj_fields.Architecture.AARCH64:
+ mode = 'max'
return mode

View File

@ -1,7 +1,5 @@
%{!?upstream_version: %global upstream_version %{version}%{?milestone}} %{!?upstream_version: %global upstream_version %{version}%{?milestone}}
%global with_doc 0 %global with_doc 0
%global qemu_version 3.1.0
%global libvirt_version 5.0.0
%global common_desc \ %global common_desc \
OpenStack Compute (codename Nova) is open source software designed to \ OpenStack Compute (codename Nova) is open source software designed to \
@ -16,7 +14,7 @@ standard hardware configurations and seven major hypervisors.
Name: openstack-nova Name: openstack-nova
# Liberty semver reset # Liberty semver reset
# https://review.openstack.org/#/q/I6a35fa0dda798fad93b804d00a46af80f08d475c,n,z # https://review.openstack.org/#/q/I6a35fa0dda798fad93b804d00a46af80f08d475c,n,z
Version: 23.0.1 Version: 20.6.1
Release: 5 Release: 5
Summary: OpenStack Compute (nova) Summary: OpenStack Compute (nova)
@ -24,9 +22,6 @@ License: ASL 2.0
URL: http://openstack.org/projects/compute/ URL: http://openstack.org/projects/compute/
Source0: https://tarballs.openstack.org/nova/nova-%{upstream_version}.tar.gz Source0: https://tarballs.openstack.org/nova/nova-%{upstream_version}.tar.gz
Patch0: 0001-downgrade-the-version-of-qemu-from-4.2.0-to-4.1.0.patch
Source1: nova-dist.conf Source1: nova-dist.conf
Source6: nova.logrotate Source6: nova.logrotate
@ -53,6 +48,7 @@ Source39: nova_migration_authorized_keys
Source40: nova_migration-rootwrap.conf Source40: nova_migration-rootwrap.conf
Source41: nova_migration-rootwrap_cold_migration Source41: nova_migration-rootwrap_cold_migration
Patch1: Fixes-aarch64-incorrect-cpu-model.patch
BuildArch: noarch BuildArch: noarch
BuildRequires: openstack-macros BuildRequires: openstack-macros
@ -66,7 +62,7 @@ BuildRequires: python3-netaddr
BuildRequires: python3-pbr BuildRequires: python3-pbr
BuildRequires: python3-six BuildRequires: python3-six
BuildRequires: python3-oslo-i18n BuildRequires: python3-oslo-i18n
BuildRequires: python3-cryptography >= 2.1 BuildRequires: python3-cryptography
BuildRequires: python3-oslo-policy BuildRequires: python3-oslo-policy
# Required for unit tests # Required for unit tests
BuildRequires: python3-barbicanclient BuildRequires: python3-barbicanclient
@ -113,10 +109,10 @@ Requires: python3-nova = %{version}-%{release}
Requires(pre): shadow-utils Requires(pre): shadow-utils
BuildRequires: systemd BuildRequires: systemd
# Required to build nova.conf.sample # Required to build nova.conf.sample
BuildRequires: python3-castellan >= 0.16.0 BuildRequires: python3-castellan
BuildRequires: python3-glanceclient BuildRequires: python3-glanceclient
BuildRequires: python3-keystonemiddleware BuildRequires: python3-keystonemiddleware
BuildRequires: python3-microversion-parse >= 0.2.1 BuildRequires: python3-microversion-parse
BuildRequires: python3-os-brick BuildRequires: python3-os-brick
BuildRequires: python3-oslo-db BuildRequires: python3-oslo-db
BuildRequires: python3-oslo-reports BuildRequires: python3-oslo-reports
@ -127,7 +123,7 @@ BuildRequires: python3-paramiko
BuildRequires: python3-babel BuildRequires: python3-babel
BuildRequires: python3-lxml BuildRequires: python3-lxml
BuildRequires: python3-websockify >= 0.9.0 BuildRequires: python3-websockify
# remove old service subpackage # remove old service subpackage
@ -154,18 +150,18 @@ Requires: /usr/bin/virsh
Requires: openssh-clients Requires: openssh-clients
Requires: rsync Requires: rsync
Requires: lvm2 Requires: lvm2
Requires: python3-cinderclient >= 3.3.0 Requires: python3-cinderclient
Requires: genisoimage Requires: genisoimage
Requires(pre): qemu >= %{qemu_version} Requires(pre): qemu
Requires(pre): qemu-block-rbd >= %{qemu_version} Requires(pre): qemu-block-rbd
Requires(pre): qemu-block-ssh >= %{qemu_version} Requires(pre): qemu-block-ssh
Requires(pre): python3-libvirt >= %{libvirt_version} Requires(pre): python3-libvirt
Requires(pre): libvirt-daemon-driver-nodedev >= %{libvirt_version} Requires(pre): libvirt-daemon-driver-nodedev
Requires(pre): libvirt-daemon-driver-nwfilter >= %{libvirt_version} Requires(pre): libvirt-daemon-driver-nwfilter
Requires(pre): libvirt-daemon-driver-secret >= %{libvirt_version} Requires(pre): libvirt-daemon-driver-secret
Requires(pre): libvirt-daemon-driver-qemu >= %{libvirt_version} Requires(pre): libvirt-daemon-driver-qemu
Requires(pre): libvirt-daemon-driver-storage-core >= %{libvirt_version} Requires(pre): libvirt-daemon-driver-storage-core
Requires: sg3_utils Requires: sg3_utils
Requires: sysfsutils Requires: sysfsutils
@ -197,7 +193,7 @@ to run Virtual Machines in the cloud.
Summary: OpenStack Nova API services Summary: OpenStack Nova API services
Requires: openstack-nova-common = %{version}-%{release} Requires: openstack-nova-common = %{version}-%{release}
Requires: python3-cinderclient >= 3.3.0 Requires: python3-cinderclient
%description api %description api
%{common_desc} %{common_desc}
@ -220,7 +216,7 @@ Summary: OpenStack Nova noVNC proxy service
Requires: openstack-nova-common = %{version}-%{release} Requires: openstack-nova-common = %{version}-%{release}
Requires: novnc Requires: novnc
Requires: python3-websockify >= 0.9.0 Requires: python3-websockify
%description novncproxy %description novncproxy
@ -233,7 +229,7 @@ VNC traffic over browser websockets connections.
Summary: OpenStack Nova Spice HTML5 console access service Summary: OpenStack Nova Spice HTML5 console access service
Requires: openstack-nova-common = %{version}-%{release} Requires: openstack-nova-common = %{version}-%{release}
Requires: python3-websockify >= 0.9.0 Requires: python3-websockify
%description spicehtml5proxy %description spicehtml5proxy
%{common_desc} %{common_desc}
@ -245,7 +241,7 @@ spice HTML5 console access service to Virtual Machines.
Summary: OpenStack Nova serial console access service Summary: OpenStack Nova serial console access service
Requires: openstack-nova-common = %{version}-%{release} Requires: openstack-nova-common = %{version}-%{release}
Requires: python3-websockify >= 0.9.0 Requires: python3-websockify
%description serialproxy %description serialproxy
%{common_desc} %{common_desc}
@ -272,74 +268,74 @@ Requires: openssl
Requires: openssh Requires: openssh
Requires: sudo Requires: sudo
Requires: python3-paramiko >= 2.7.1 Requires: python3-paramiko
Requires: python3-eventlet >= 0.26.1 Requires: python3-eventlet
Requires: python3-iso8601 >= 0.1.11 Requires: python3-iso8601
Requires: python3-netaddr >= 0.7.18 Requires: python3-netaddr
Requires: python3-boto Requires: python3-boto
Requires: python3-stevedore >= 1.20.0 Requires: python3-stevedore
Requires: python3-sqlalchemy >= 1.2.19 Requires: python3-sqlalchemy
Requires: python3-alembic >= 0.8.0 Requires: python3-alembic
Requires: python3-routes >= 2.3.1 Requires: python3-routes
Requires: python3-webob >= 1.8.2 Requires: python3-webob
Requires: python3-castellan >= 0.16.0 Requires: python3-castellan
Requires: python3-cryptography >= 2.7 Requires: python3-cryptography
Requires: python3-cursive >= 0.2.1 Requires: python3-cursive
Requires: python3-dataclasses >= 0.7
Requires: python3-glanceclient Requires: python3-glanceclient
Requires: python3-greenlet >= 0.4.13 Requires: python3-greenlet
Requires: python3-keystonemiddleware >= 4.20.0 Requires: python3-keystonemiddleware
Requires: python3-keystoneauth1 >= 3.16.0 Requires: python3-keystoneauth1
Requires: python3-jinja2 >= 2.10 Requires: python3-jinja2
Requires: python3-jsonschema >= 3.2.0 Requires: python3-jsonschema
Requires: python3-microversion-parse >= 0.2.1 Requires: python3-microversion-parse
Requires: python3-neutronclient >= 6.7.0 Requires: python3-neutronclient
Requires: python3-novaclient >= 2.30.1 Requires: python3-novaclient
Requires: python3-openstacksdk >= 0.35.0 Requires: python3-openstacksdk
Requires: python3-os-brick >= 4.2.0 Requires: python3-os-brick
Requires: python3-os-resource-classes >= 0.4.0 Requires: python3-os-resource-classes
Requires: python3-os-traits >= 2.5.0 Requires: python3-os-traits
Requires: python3-oslo-cache >= 1.26.0 Requires: python3-oslo-cache
Requires: python3-oslo-concurrency >= 4.3.0 Requires: python3-oslo-concurrency
Requires: python3-oslo-config >= 6.8.0 Requires: python3-oslo-config
Requires: python3-oslo-context >= 3.1.1 Requires: python3-oslo-context
Requires: python3-oslo-db >= 4.44.0 Requires: python3-oslo-db
Requires: python3-oslo-i18n >= 5.0.1 Requires: python3-oslo-i18n
Requires: python3-oslo-log >= 4.4.0 Requires: python3-oslo-log
Requires: python3-oslo-messaging >= 10.3.0 Requires: python3-oslo-messaging
Requires: python3-oslo-middleware >= 3.31.0 Requires: python3-oslo-middleware
Requires: python3-oslo-policy >= 3.6.0 Requires: python3-oslo-policy
Requires: python3-oslo-privsep >= 2.4.0 Requires: python3-oslo-privsep
Requires: python3-oslo-reports >= 1.18.0 Requires: python3-oslo-reports
Requires: python3-oslo-rootwrap >= 5.8.0 Requires: python3-oslo-rootwrap
Requires: python3-oslo-serialization >= 4.0.1 Requires: python3-oslo-serialization
Requires: python3-oslo-service >= 2.4.0 Requires: python3-oslo-service
Requires: python3-oslo-upgradecheck >= 1.3.0 Requires: python3-oslo-upgradecheck
Requires: python3-oslo-utils >= 4.7.0 Requires: python3-oslo-utils
Requires: python3-oslo-versionedobjects >= 1.35.0 Requires: python3-oslo-versionedobjects
Requires: python3-os-vif >= 1.14.0 Requires: python3-os-vif
Requires: python3-oslo-vmware >= 1.16.0 Requires: python3-oslo-vmware
Requires: python3-pbr >= 5.5.0 Requires: python3-pbr
Requires: python3-prettytable >= 0.7.1 Requires: python3-prettytable
Requires: python3-psutil >= 3.2.2 Requires: python3-psutil
Requires: python3-requests >= 2.23.0 Requires: python3-requests
Requires: python3-rfc3986 >= 1.2.0 Requires: python3-rfc3986
Requires: python3-taskflow >= 3.8.0 Requires: python3-taskflow
Requires: python3-tooz >= 1.58.0 Requires: python3-tooz
Requires: python3-os-service-types >= 1.7.0 Requires: python3-os-service-types
Requires: python3-dateutil >= 2.6.0 Requires: python3-dateutil
Requires: python3-futurist >= 1.8.0 Requires: python3-futurist
Requires: python3-osprofiler
Requires: python3-decorator >= 4.1.0 Requires: python3-decorator
Requires: python3-lxml >= 4.2.3 Requires: python3-lxml
Requires: python3-ldap Requires: python3-ldap
Requires: python3-memcached Requires: python3-memcached
Requires: python3-sqlalchemy-migrate Requires: python3-sqlalchemy-migrate
Requires: python3-paste >= 2.0.2 Requires: python3-paste
Requires: python3-paste-deploy >= 1.5.0 Requires: python3-paste-deploy
Requires: python3-netifaces >= 0.10.4 Requires: python3-netifaces
Requires: python3-retrying >= 1.3.3 Requires: python3-retrying
Requires: python3-yaml >= 5.1 Requires: python3-yaml
Requires: python3-monotonic
%description -n python3-nova %description -n python3-nova
%{common_desc} %{common_desc}
@ -377,7 +373,7 @@ BuildRequires: python3-oslo-config
BuildRequires: python3-oslo-log BuildRequires: python3-oslo-log
BuildRequires: python3-oslo-messaging BuildRequires: python3-oslo-messaging
BuildRequires: python3-oslo-utils BuildRequires: python3-oslo-utils
BuildRequires: python3-rfc3986 >= 1.1.0 BuildRequires: python3-rfc3986
BuildRequires: python3-routes BuildRequires: python3-routes
BuildRequires: python3-sphinx BuildRequires: python3-sphinx
BuildRequires: python3-sphinxcontrib-actdiag BuildRequires: python3-sphinxcontrib-actdiag
@ -656,6 +652,10 @@ exit 0
%{_bindir}/nova-rootwrap %{_bindir}/nova-rootwrap
%{_bindir}/nova-rootwrap-daemon %{_bindir}/nova-rootwrap-daemon
%{_bindir}/nova-status %{_bindir}/nova-status
%{_bindir}/nova-console
%{_bindir}/nova-dhcpbridge
%{_bindir}/nova-xvpvncproxy
%if 0%{?with_doc} %if 0%{?with_doc}
%{_mandir}/man1/nova*.1.gz %{_mandir}/man1/nova*.1.gz
@ -673,6 +673,7 @@ exit 0
%{_bindir}/nova-compute %{_bindir}/nova-compute
%{_unitdir}/openstack-nova-compute.service %{_unitdir}/openstack-nova-compute.service
%{_datarootdir}/nova/rootwrap/compute.filters %{_datarootdir}/nova/rootwrap/compute.filters
%{_datarootdir}/nova/rootwrap/network.filters
%files scheduler %files scheduler
%{_bindir}/nova-scheduler %{_bindir}/nova-scheduler
@ -682,6 +683,7 @@ exit 0
%{_bindir}/nova-api* %{_bindir}/nova-api*
%{_bindir}/nova-metadata-wsgi %{_bindir}/nova-metadata-wsgi
%{_unitdir}/openstack-nova-*api.service %{_unitdir}/openstack-nova-*api.service
%{_datarootdir}/nova/rootwrap/api-metadata.filters
%files conductor %files conductor
%{_bindir}/nova-conductor %{_bindir}/nova-conductor
@ -729,24 +731,18 @@ exit 0
%endif %endif
%changelog %changelog
* Thu Sep 09 2021 ffrog <ljw1101.vip@gmail.com> - 23.0.1-5 * Tue Jan 25 2022 wangxiyuan <wangxiyuan1007@gmail.com> - 20.6.1-5
- Fix the bugs about downgrading the version requirement of qemu from 4.2.0 to 4.1.0 - Add osprofiler requires
* Tue Sep 07 2021 ffrog <ljw1101.vip@gmail.com> - 23.0.1-4 * Mon Nov 29 2021 huangtianhua <huangtianhua@huawei.com> - 20.6.1-4
- Downgrade the version requirement of qemu from 4.2.0 to 4.1.0 - Adds patch to make nova-compute work on aarch64
* Tue Aug 24 2021 huangtianhua <huangtianhua@huawei.com> - 23.0.1-3 * Tue Nov 23 2021 zhangy1317 <zhangy1317@foxmail.com> - 20.6.1-3
- Fix requires errors - Fix install issue
* Tue Aug 24 2021 wangxiyuan <wangxiyuan1007@gmail.com> - 23.0.1-2 * Fri Nov 19 2021 huangtianhua <huangtianhua@huawei.com> - 20.6.1-2
- Drop lxc related requires. - 20.6.1 doesn't require python-dataclasses, removes it.
* Fri Jul 23 2021 liksh <liks11@chinaunicom.cn> 23.0.1-1 * Fri Nov 05 2021 wangxiyuan <wangxiyuan1007@gmail.com> - 20.6.1-1
- Update to 23.0.1 - Support OpenStack Train release
* Sat Feb 20 2021 wangxiyuan <wangxiyuan1007@gmail.com>
- Fix require issue
* Fri Jan 15 2021 joec88 <joseph.chn1988@gmail.com>
- openEuler build version