Bug 2037556 - xe-guest-utilities-latest-7.30.0-1 breaks reporting driver version to XAPI
Summary: xe-guest-utilities-latest-7.30.0-1 breaks reporting driver version to XAPI
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: xe-guest-utilities-latest
Version: epel7
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Robin Lee
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-01-05 21:46 UTC by Doug Goldstein
Modified: 2022-01-15 02:37 UTC (History)
2 users (show)

Fixed In Version: xe-guest-utilities-latest-7.30.0-2.fc35 xe-guest-utilities-latest-7.30.0-2.fc34 xe-guest-utilities-latest-7.30.0-3.el8 xe-guest-utilities-latest-7.30.0-2.el7
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-01-15 01:20:46 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Doug Goldstein 2022-01-05 21:46:53 UTC
Description of problem:

7.30 of the package has broken uploading the package version into xenstore. When you read the PV-drivers-version from XAPI on the hypervisor you'll see the following after upgrading to this.

PV-drivers-version (MRO): major: @PRODUCT_MAJOR_VERSION@; minor: @PRODUCT_MINOR_VERSION@; micro: @PRODUCT_MICRO_VERSION@; build: @NUMERIC_BUILD_NUMBER@

This breaks any XAPI operation that performs a driver check before running the command against the VM.


Version-Release number of selected component (if applicable): 7.30.0-1


How reproducible: Everytime


Steps to Reproduce:
1. Install the currently released package
2. xe vm-param-get param-name=PV-drivers-version uuid=<VM-with-bad-version>

Actual results:

xe vm-param-get param-name=PV-drivers-version uuid=04531d6a-a5d5-290c-3eb9-2e48c4e1792d
major: @PRODUCT_MAJOR_VERSION@; minor: @PRODUCT_MINOR_VERSION@; micro: @PRODUCT_MICRO_VERSION@; build: @NUMERIC_BUILD_NUMBER@


Expected results:

xe vm-param-get param-name=PV-drivers-version uuid=04531d6a-a5d5-290c-3eb9-2e48c4e1792d
major: 7; minor: 30; micro: 0; build: 99999


Additional info:

If you look at how the code is built there's a sed rule to replace this in the makefile at https://github.com/xenserver/xe-guest-utilities/blob/f89f95de90d9c54a13b286120d15b12711ca8393/Makefile#L84
But https://github.com/xenserver/xe-guest-utilities/commit/c9ed1dec07653ee461a12f828e241eeac56dcd30 changed the path slightly and results in that rule not executing.

Comment 1 Doug Goldstein 2022-01-05 21:53:37 UTC
This also affects CentOS 8 builds.

Comment 2 Fedora Update System 2022-01-06 03:23:58 UTC
FEDORA-2022-1425d9b11b has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2022-1425d9b11b

Comment 3 Fedora Update System 2022-01-06 03:23:59 UTC
FEDORA-2022-6b0b52f61b has been submitted as an update to Fedora 34. https://bodhi.fedoraproject.org/updates/FEDORA-2022-6b0b52f61b

Comment 4 Fedora Update System 2022-01-06 03:23:59 UTC
FEDORA-EPEL-2022-0d04fe97bf has been submitted as an update to Fedora EPEL 8. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-0d04fe97bf

Comment 5 Fedora Update System 2022-01-06 03:23:59 UTC
FEDORA-EPEL-2022-9a459a9ba6 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-9a459a9ba6

Comment 6 Doug Goldstein 2022-01-06 15:06:16 UTC
Tested the EPEL 7 RPM built that's linked from here and that fixes it.

Comment 7 Fedora Update System 2022-01-07 01:22:38 UTC
FEDORA-2022-1425d9b11b has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2022-1425d9b11b`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-1425d9b11b

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 8 Fedora Update System 2022-01-07 01:52:27 UTC
FEDORA-EPEL-2022-9a459a9ba6 has been pushed to the Fedora EPEL 7 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-9a459a9ba6

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 9 Fedora Update System 2022-01-07 01:54:00 UTC
FEDORA-EPEL-2022-0d04fe97bf has been pushed to the Fedora EPEL 8 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-0d04fe97bf

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 10 Fedora Update System 2022-01-07 02:08:59 UTC
FEDORA-2022-6b0b52f61b has been pushed to the Fedora 34 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2022-6b0b52f61b`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-6b0b52f61b

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 11 Xihuan Yang 2022-01-10 07:58:08 UTC
Need to know how you build your xe-guest-utilities packages, the environment set
I just tested on my environment with both Ubuntu and CentOS8 to use make, see the correct package is generated
After setting go environment as below

export PATH=$PATH:/disk2/go1.16/go/bin
export GOPATH=/disk2/go
export GO111MODULE=off

And then execute make

mkdir -p $(dirname /disk2/go/src/xe-guest-utilities/build/gobuild/guestmetric/guestmetric_linux.go)
cat /disk2/go/src/xe-guest-utilities/guestmetric/guestmetric_linux.go | \
sed -e "s/@PRODUCT_MAJOR_VERSION@/6/g" | \
sed -e "s/@PRODUCT_MINOR_VERSION@/6/g" | \
sed -e "s/@PRODUCT_MICRO_VERSION@/80/g" | \
sed -e "s/@NUMERIC_BUILD_NUMBER@/142/g" \
> /disk2/go/src/xe-guest-utilities/build/gobuild/guestmetric/guestmetric_linux.go 

it shows that the step is not skipped

Comment 12 Robin Lee 2022-01-10 08:18:50 UTC
(In reply to Xihuan Yang from comment #11)
> Need to know how you build your xe-guest-utilities packages, the environment
> set
> I just tested on my environment with both Ubuntu and CentOS8 to use make,
> see the correct package is generated
> After setting go environment as below
> 
> export PATH=$PATH:/disk2/go1.16/go/bin
> export GOPATH=/disk2/go
> export GO111MODULE=off
> 
> And then execute make
> 
> mkdir -p $(dirname
> /disk2/go/src/xe-guest-utilities/build/gobuild/guestmetric/guestmetric_linux.
> go)
> cat /disk2/go/src/xe-guest-utilities/guestmetric/guestmetric_linux.go | \
> sed -e "s/@PRODUCT_MAJOR_VERSION@/6/g" | \
> sed -e "s/@PRODUCT_MINOR_VERSION@/6/g" | \
> sed -e "s/@PRODUCT_MICRO_VERSION@/80/g" | \
> sed -e "s/@NUMERIC_BUILD_NUMBER@/142/g" \
> > /disk2/go/src/xe-guest-utilities/build/gobuild/guestmetric/guestmetric_linux.go 
> 
> it shows that the step is not skipped

I cherry-picked https://github.com/xenserver/xe-guest-utilities/commit/3947aa5d82af26c1d6edaf810030e6e80499c646 so
to make me easier to use system golang.org/x/sys/unix.

Comment 14 Xihuan Yang 2022-01-12 04:18:52 UTC
Hi Robin, 
This issue is bring for Makefile has a vendor directory which will point to the source code that did not replace the version yet. I raise a PR to change this Makefile, https://github.com/xenserver/xe-guest-utilities/pull/119.

Thanks, 
Xihuan

Comment 15 Xihuan Yang 2022-01-13 02:50:36 UTC
Hi @robinlee.sysu, 

PR is merged to fix the issue in xe-guest-utilities. The latest commit should work for generating the correct rpm.

Thanks, 
Xihuan

Comment 16 Robin Lee 2022-01-13 04:35:18 UTC
(In reply to Xihuan Yang from comment #15)
> Hi @robinlee.sysu, 
> 
> PR is merged to fix the issue in xe-guest-utilities. The latest commit
> should work for generating the correct rpm.
> 
> Thanks, 
> Xihuan

Thanks! I will apply it at next upstream rebase.

Comment 17 Fedora Update System 2022-01-15 01:20:46 UTC
FEDORA-2022-1425d9b11b has been pushed to the Fedora 35 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 18 Fedora Update System 2022-01-15 01:21:52 UTC
FEDORA-2022-6b0b52f61b has been pushed to the Fedora 34 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 19 Fedora Update System 2022-01-15 02:28:39 UTC
FEDORA-EPEL-2022-0d04fe97bf has been pushed to the Fedora EPEL 8 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 20 Fedora Update System 2022-01-15 02:37:44 UTC
FEDORA-EPEL-2022-9a459a9ba6 has been pushed to the Fedora EPEL 7 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.