%define name VMAnalyzer
%define version 0.1.0
%define release 39
%define debug_package %{nil}
Summary: A lightweight virtualization performance monitoring analysis tool
Name: %{name}
Version: %{version}
Release: %{release}%{?dist}
License: Mulan PSL v2
URL: https://gitee.com/src-openeuler/VMAnalyzer
BuildRoot: %{name}-%{version}-%{release}
Requires: python3-libvirt
Requires: python3-redis
Requires: python3-mock
Requires: python3-six
Requires: python3-libxml2
Requires: redis
Requires: python3-pbr
Requires: python3-setuptools
%ifarch aarch64
Requires: python3-wheel
%endif
BuildRequires: systemd,python3
Source0:%{name}-%{version}.tar.gz
%description
A lightweight virtualization performance monitoring analysis tool
%prep
%setup -q
%build
exit 0
%install
rm -rf %{buildroot}/usr/bin/vm_analyer/
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/agent
cp -r %{_builddir}/%{name}-%{version}/agent/* %{buildroot}/usr/bin/vm_analyer/agent
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer
cp %{_builddir}/%{name}-%{version}/setup.py %{buildroot}/usr/bin/vm_analyer
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/tests
cp -r %{_builddir}/%{name}-%{version}/tests/* %{buildroot}/usr/bin/vm_analyer/tests
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/utils
cp -r %{_builddir}/%{name}-%{version}/utils/* %{buildroot}/usr/bin/vm_analyer/utils
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/diagnose/domain_detect
cp -r %{_builddir}/%{name}-%{version}/diagnose/domain_detect/* %{buildroot}/usr/bin/vm_analyer/diagnose/domain_detect
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/diagnose/qemuconsume
cp -r %{_builddir}/%{name}-%{version}/diagnose/qemuconsume/* %{buildroot}/usr/bin/vm_analyer/diagnose/qemuconsume
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/diagnose/hugepages_detect
cp -r %{_builddir}/%{name}-%{version}/diagnose/hugepages_detect/* %{buildroot}/usr/bin/vm_analyer/diagnose/hugepages_detect
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/diagnose/virt_check
cp -r %{_builddir}/%{name}-%{version}/diagnose/virt_check/* %{buildroot}/usr/bin/vm_analyer/diagnose/virt_check
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/diagnose/check_secret
cp -r %{_builddir}/%{name}-%{version}/diagnose/check_secret/* %{buildroot}/usr/bin/vm_analyer/diagnose/check_secret
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/diagnose/vcpu_sched_latency
cp -r %{_builddir}/%{name}-%{version}/diagnose/vcpu_sched_latency/* %{buildroot}/usr/bin/vm_analyer/diagnose/vcpu_sched_latency
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/gather
cp -r %{_builddir}/%{name}-%{version}/gather/* %{buildroot}/usr/bin/vm_analyer/gather
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/oneClickEnable
cp -r %{_builddir}/%{name}-%{version}/oneClickEnable/* %{buildroot}/usr/bin/vm_analyer/oneClickEnable
mkdir -p -m 755 %{buildroot}/usr/bin/vm_analyer/stability
cp -r %{_builddir}/%{name}-%{version}/stability/* %{buildroot}/usr/bin/vm_analyer/stability
%clean
[ -d "$RPM_BUILD_ROOT" ] && rm -rf $RPM_BUILD_ROOT
%post
chmod -R 755 /usr/bin/vm_analyer
chmod -R 755 /usr/bin/vm_analyer/tests
chmod -R 755 /usr/bin/vm_analyer/utils
chmod -R 755 /usr/bin/vm_analyer/diagnose/domain_detect
chmod -R 755 /usr/bin/vm_analyer/diagnose/qemuconsume
chmod -R 755 /usr/bin/vm_analyer/diagnose/hugepages_detect
chmod -R 755 /usr/bin/vm_analyer/diagnose/virt_check
chmod -R 755 /usr/bin/vm_analyer/diagnose/check_secret
chmod -R 755 /usr/bin/vm_analyer/diagnose/vcpu_sched_latency
chmod -R 755 /usr/bin/vm_analyer/gather
chmod -R 755 /usr/bin/vm_analyer/oneClickEnable
chmod -R 755 /usr/bin/vm_analyer/stability
rm -rf /usr/local/bin/vm-analyzer-agent
cd /usr/bin/vm_analyer
%ifarch x86_64
sudo pip3 install -e .
%else
sudo pip3 install -e . --no-build-isolation
%endif
%preun
%postun
%files
/usr/bin/vm_analyer/agent
/usr/bin/vm_analyer/setup.py
/usr/bin/vm_analyer/tests
/usr/bin/vm_analyer/utils
/usr/bin/vm_analyer/diagnose/domain_detect
/usr/bin/vm_analyer/diagnose/qemuconsume
/usr/bin/vm_analyer/diagnose/hugepages_detect
/usr/bin/vm_analyer/diagnose/virt_check
/usr/bin/vm_analyer/diagnose/check_secret
/usr/bin/vm_analyer/diagnose/vcpu_sched_latency
/usr/bin/vm_analyer/gather
/usr/bin/vm_analyer/oneClickEnable
/usr/bin/vm_analyer/stability
%changelog
* Tue Apr 28 2026 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-39
- fix offline dependency install failure to adapt aarch64
* Mon Dec 08 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-38
- synchronize the 24.03-LTS-SP3 source code
* Mon Dec 01 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-37
- add premium memory detection
* Mon Dec 01 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-36
- agent: add vcpus info detection
* Mon Dec 01 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-35
- get vm vcpupin
* Thu Nov 27 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-34
- qga password change stability test
* Thu Nov 27 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-33
- ccxdesign/libver detection
* Thu Nov 27 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-32
- adapt to multiple qemu process
- virt_check update
- optimize qemu_var and os_var matching formats
* Thu Nov 27 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-31
- revised code to conform to coding rules
- support liveupdate test
* Wed Nov 26 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-30
- vcpu sched switch
* Wed Nov 26 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-29
- add vcpu sched latency collection
* Wed Nov 26 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-28
- check the unique/permission of libvirt secrets
* Mon Nov 24 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-27
- check the usage of libvirt secrets
* Mon Nov 24 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-26
- enhanced test files for detailed log checks
* Mon Nov 24 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-25
- add virtual machine status and log-related information detection
* Mon Nov 24 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-24
- add disk I/O stats detection
* Mon Nov 24 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-23
- add interface stats detection
* Fri Nov 21 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-22
- add memory usage detection
* Fri Nov 21 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-21
- health check function optimization
* Thu Nov 20 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-20
- add domain premium detection
* Thu Nov 20 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-19
- add host premium CPU core isolation check
* Thu Nov 20 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-18
- add host premium sysctl/libvirtd/qemu configure detection
* Thu Nov 20 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-17
- add host premium basic-detection
* Thu Nov 20 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-16
- add domain memory/schedinfo detection
* Thu Nov 20 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-15
- add domain cpu information detection
* Wed Nov 19 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-14
- add host memory/auth detection
* Wed Nov 19 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-13
- add host hugepage/cpu/virtualization information detection
* Wed Nov 19 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-12
- add host sysctl/cve/kpatch detection
* Wed Nov 19 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-11
- add host system/kernel information detection
* Wed Nov 19 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-10
- modify qemuconsume and domain_detect detect method
* Wed Nov 19 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-9
- add function record_vm_hugepages
* Wed Nov 19 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-8
- check hugepage quantity allocation for each node according to Hugepages_node.conf
* Tue Nov 18 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-7
- add function record_node_hugepages
* Tue Nov 18 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-6
- add flamegraph.pl and stackcollapse-perf.pl
* Tue Nov 18 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-5
- add qemuconsume
* Tue Nov 18 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-4
- add disk_status|blk_error detection
* Tue Nov 18 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-3
- add qga_status|interface_link detection
* Tue Nov 18 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-2
- add domain running status detection
* Tue Nov 18 2025 Xu Zheng <xuzheng_yewu@cmss.chinamobile.com> - 0.1.0-1
- Synchronize the source code repository