Accepting request 1042521 from home:ccrane:branches:Virtualization:VMware

- Add containerInfo plugin (jsc-PED-1344)
    - Add dependencies on grpc, protobuf, and containerd for container introspection

- Add _service to handle open-vm-tools sources
- Update to 12.1.5 (build 20735119)
  - A number of Coverity reported issues have been addressed.
  - The deployPkg plugin may prematurely reboot the guest VM before cloud-init 
    has completed user data setup. If both the Perl based Linux customization 
    script and cloud-init run when the guest VM boots, the deployPkg plugin 
    may reboot the guest before cloud-init has finished. The deployPkg 
    plugin has been updated to wait for a running cloud-init process to 
    finish before the guest VM reboot is initiated. This issue is fixed in 
    this release.
  - A SIGSEGV may be encountered when a non-quiesing snapshot times out. 
    This issue is fixed in this release.
  - Unwanted vmtoolsd service error message if not on a VMware hypervisor.
    When open-vm-tools comes preinstalled in a base Linux release, the vmtoolsd
    services are started automatically at system start and desktop login. 
    If running on physical hardware or in a non-VMware hypervisor, the services
    will emit an error message to the Systemd's logging service before stopping.
    This issue is fixed in this release.

OBS-URL: https://build.opensuse.org/request/show/1042521
OBS-URL: https://build.opensuse.org/package/show/Virtualization:VMware/open-vm-tools?expand=0&rev=421
This commit is contained in:
Kirk Allan 2022-12-13 18:54:37 +00:00 committed by Git OBS Bridge
parent 305fe48d1a
commit e01dba6e31
6 changed files with 116 additions and 11 deletions

14
_service Normal file
View File

@ -0,0 +1,14 @@
<services>
<service name="tar_scm" mode="disabled">
<param name="scm">git</param>
<param name="url">https://github.com/vmware/open-vm-tools.git</param>
<param name="revision">stable-12.1.5</param>
<param name="filename">open-vm-tools</param>
<param name="versionformat">12.1.5</param>
</service>
<service name="recompress" mode="disabled">
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
<service name="set_version" mode="disabled"/>
</services>

View File

@ -0,0 +1,26 @@
diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac
index 3c058135..203fdc6f 100644
--- a/open-vm-tools/configure.ac
+++ b/open-vm-tools/configure.ac
@@ -726,12 +726,18 @@ AC_DEFUN([AC_VMW_CONTAINERINFO_MSG],[
#
# proto files needed by containerd grpc client.
#
- shared_prefix=/usr/share/gocode/src/github.com
+ for d in /usr/share/gocode/src /usr/share/go/1.*/contrib/src; do
+ if test -d "$d"/github.com; then
+ src_prefix="$d"
+ break
+ fi
+ done
+ shared_prefix=$src_prefix/github.com
AC_SUBST(TYPES_DIR, github.com/containerd/containerd/api/types)
AC_SUBST(TASKS_PROTOPATH, $shared_prefix/containerd/containerd/api/services/tasks/v1)
- AC_SUBST(DEP_PROTOPATH, /usr/share/gocode/src)
+ AC_SUBST(DEP_PROTOPATH, $src_prefix)
AC_SUBST(CONTAINERD_PROTOPATH, $shared_prefix/containerd/containerd/api/services/containers/v1)
- AC_SUBST(GOGO_PROTOPATH, $shared_prefix/gogo/protobuf)
+ AC_SUBST(GOGO_PROTOPATH, $shared_prefix/containerd/containerd/vendor/github.com/gogo/protobuf)
AC_CHECK_FILE([${CONTAINERD_PROTOPATH}/containers.proto],
[],
[AC_VMW_CONTAINERINFO_MSG(["containerd package"])])

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f9cff769cb60d3e570b8dfed98179b345b089ee3cc31a60d80a4fcca1cc220ee
size 4355225

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0167932c6b06fe8eeafafb9b30b7d1a71ae0e7d854b300135de4aa09ef1f857d
size 1790180

View File

@ -1,3 +1,34 @@
-------------------------------------------------------------------
Mon Dec 12 19:01:53 UTC 2022 - Caleb Crane <caleb.crane@suse.com>
- Add containerInfo plugin (jsc-PED-1344)
- Add dependencies on grpc, protobuf, and containerd for container introspection
-------------------------------------------------------------------
Thu Dec 8 20:24:29 UTC 2022 - Caleb Crane <caleb.crane@suse.com>
- Add _service to handle open-vm-tools sources
- Update to 12.1.5 (build 20735119)
- A number of Coverity reported issues have been addressed.
- The deployPkg plugin may prematurely reboot the guest VM before cloud-init
has completed user data setup. If both the Perl based Linux customization
script and cloud-init run when the guest VM boots, the deployPkg plugin
may reboot the guest before cloud-init has finished. The deployPkg
plugin has been updated to wait for a running cloud-init process to
finish before the guest VM reboot is initiated. This issue is fixed in
this release.
- A SIGSEGV may be encountered when a non-quiesing snapshot times out.
This issue is fixed in this release.
- Unwanted vmtoolsd service error message if not on a VMware hypervisor.
When open-vm-tools comes preinstalled in a base Linux release, the vmtoolsd
services are started automatically at system start and desktop login.
If running on physical hardware or in a non-VMware hypervisor, the services
will emit an error message to the Systemd's logging service before stopping.
This issue is fixed in this release.
-------------------------------------------------------------------
Thu Aug 25 15:57:57 UTC 2022 - Kirk Allan <kallan@suse.com>

View File

@ -38,16 +38,13 @@
%define with_X 1
Name: open-vm-tools
%define subname open-vm-tools
%define tarname open-vm-tools
%define bldnum 20219665
Version: 12.1.0
Version: 12.1.5
Release: 0
Summary: Open Virtual Machine Tools
License: BSD-3-Clause AND GPL-2.0-only AND LGPL-2.1-only
Group: System/Emulators/PC
URL: https://github.com/vmware/open-vm-tools
Source: %{tarname}-%{version}-%{bldnum}.tar.gz
Source: %{name}-%{version}.tar.xz
Source1: vmtoolsd
Source2: vmtoolsd.service
Source3: vmware-user-autostart.desktop
@ -74,8 +71,12 @@ BuildRequires: pcre-devel
BuildRequires: procps-devel
BuildRequires: update-desktop-files
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150300
BuildRequires: containerd-devel
BuildRequires: glibc >= 2.27
BuildRequires: grpc-devel
BuildRequires: libcurl-devel
BuildRequires: libtirpc-devel
BuildRequires: protobuf-devel
BuildRequires: rpcgen
BuildRequires: pkgconfig(gdk-pixbuf-xlib-2.0) >= 2.21.0
BuildRequires: pkgconfig(sm)
@ -86,9 +87,11 @@ BuildRequires: pkgconfig(xinerama)
BuildRequires: pkgconfig(xrandr)
BuildRequires: pkgconfig(xrender)
BuildRequires: pkgconfig(xtst)
%define arg_containerinfo --enable-containerinfo=yes
%else
BuildRequires: glibc >= 2.12
BuildRequires: xorg-x11-devel
%define arg_containerinfo --enable-containerinfo=no
%endif
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libudev)
@ -151,6 +154,7 @@ ExclusiveArch: %ix86 x86_64 aarch64
#SUSE specific patches
Patch0: pam-vmtoolsd.patch
Patch1: detect-suse-location.patch
%if 0%{?suse_version} >= 1500
%systemd_ordering
@ -233,8 +237,23 @@ Requires: libvmtools0 = %{version}
Those are the development headers for libvmtools. They are needed
if you intend to create own plugins for vmtoolsd.
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150300
%package containerinfo
Summary: Container Info Plugin
Group: System Environment/Libraries
# Tumbleweed but not Leap 15 or SLE 15 which have different libgrpc and libprotobuf packages
%if 0%{suse_version} > 1500
Requires: %{name}%{?_isa} = %{version}-%{release}, curl, libgrpc++1_51, libgrpc29, libprotobuf3_21_11
%else
Requires: %{name}%{?_isa} = %{version}-%{release}, curl, libgrpc++1, libgrpc8, libprotobuf20
%endif
%description containerinfo
This package interfaces with the container runtime to retrieve a list of containers running on a Linux guest
%endif
%prep
%setup -q -n %{tarname}-%{version}-%{bldnum}
%setup -q -n %{name}-%{version}/%{name}
# fix for an rpmlint warning regarding wrong line feeds
sed -i -e "s/\r//" README
@ -242,6 +261,7 @@ sed -i -e "s/\r//" README
#SUSE specific patches
%patch0 -p2
%patch1 -p2
%build
%if %{with_X}
@ -257,7 +277,7 @@ sed -i -e "s/\r//" README
export CFLAGS="%{optflags} -Wno-unused-local-typedefs -Wno-unused-but-set-variable -Wno-deprecated-declarations -Wno-sizeof-pointer-memaccess -Wno-cpp -fPIE"
export CXXFLAGS="%{optflags} -Wno-unused-local-typedefs -Wno-unused-but-set-variable -Wno-deprecated-declarations -Wno-sizeof-pointer-memaccess -Wno-cpp -fPIE"
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150300
export LDFLAGS="-pie -ltirpc"
export LDFLAGS="-pie -ltirpc -labsl_synchronization -lgpr"
%else
export LDFLAGS="-pie"
%endif
@ -281,7 +301,8 @@ chmod 755 configure
--enable-servicediscovery \
%{arg_with_fuse} \
--enable-salt-minion \
--disable-static
--disable-static \
%{?arg_containerinfo}
make
%install
@ -412,6 +433,14 @@ systemctl try-restart vmtoolsd.service || :
%postun -n libvmtools0 -p /sbin/ldconfig
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150300
%post containerinfo
systemctl try-restart vmtoolsd.service || :
%postun containerinfo
systemctl try-restart vmtoolsd.service || :
%endif
%files
%defattr(-, root, root)
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 0120300
@ -537,4 +566,9 @@ systemctl try-restart vmtoolsd.service || :
%{_includedir}/libDeployPkg
%{_libdir}/pkgconfig/libDeployPkg.pc
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150300
%files containerinfo
%{_libdir}/%{name}/plugins/vmsvc/libcontainerInfo.so
%endif
%changelog