Il giorno lun 29 nov 2021 alle ore 08:02 Martin Perina <mperina@redhat.com> ha scritto:


On Fri, Nov 26, 2021 at 6:39 PM Sandro Bonazzola <sbonazzo@redhat.com> wrote:
Hi,
In ovirt-engine pom.xml there's a requirement for build time on ovirt-engine-extensions-api = 1.0.0.
This dependency is available on maven central so online build works.

Any clue on why we are not requiring 1.0.1 instead ? 

We are packaging ovirt-engine-extensions-api during the development but it ships 1.0.2.SNAPSHOT so when building in offline mode (needed for building on CentOS Virt SIG) it fails as the 1.0.0 artifact was never downloaded.

I can rebuild ovirt-engine-extensions-api from 1.0.0 or 1.0.1 which are available in maven central too as requiring explicitly 1.0.2.SNAPSHOT fails with:
Failed to execute goal on project common-dependencies: Could not resolve dependencies for project org.ovirt.engine.core.manager:common-dependencies:jar:4.5.0-SNAPSHOT: The following artifacts could not be resolved: org.ovirt.engine.api:ovirt-engine-extensions-api:jar:1.0.2.SNAPSHOT, org.ovirt.java-client-kubevirt:java-client-kubevirt:jar:0.5.0, org.apache.sshd:sshd-common:jar:2.6.0, org.apache.sshd:sshd-core:jar:2.6.0, net.i2p.crypto:eddsa:jar:0.3.0, org.ovirt.engine.api:metamodel-server:jar:1.3.7, org.ovirt.vdsm-jsonrpc-java:vdsm-jsonrpc-java-client:jar:1.6.0, com.fasterxml.jackson.core:jackson-databind:jar:2.12.1, org.jboss.resteasy:resteasy-jaxrs:jar:3.9.3.Final, com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:jar:2.12.1, org.apache.httpcomponents:httpclient:jar:4.5.13: Could not find artifact org.ovirt.engine.api:ovirt-engine-extensions-api:jar:1.0.2.SNAPSHOT -> [Help 1]

Any recommendations on how to proceed? 

So in spec file we are requiring >= 1.0.0:


So it means that an RPM providing the necessary requirements should be installed.

Yes, 1.0.2-SNAPSHOT from master is being installed *at runtime*.
But here we need it *at build time*.
So we need to add a BuildRequires line there.
 
And AFAIK maven should detect we have ovirt-engine-extensions-api-1.0.z installed and it should use it for building. Or am I missing something?

The issue is that pom file is requiring exactly 1.0.0 and not >= 1.0.0. So if a different version is installed, it fails.

 

I see that you built snapshot version on CBS:


But wouldn't it be better to build the stable 1.0.1 release instead?

Sure, I'll do. The build was a test to ensure CBS is able to build the package.
I'll build 1.0.1 and then adjust the pom to require it instead of 1.0.0.
 


--

Sandro Bonazzola

MANAGER, SOFTWARE ENGINEERING, EMEA R&D RHV

Red Hat EMEA

sbonazzo@redhat.com   

Red Hat respects your work life balance. Therefore there is no need to answer this email out of your office hours.




--
Martin Perina
Manager, Software Engineering
Red Hat Czech s.r.o.


--

Sandro Bonazzola

MANAGER, SOFTWARE ENGINEERING, EMEA R&D RHV

Red Hat EMEA

sbonazzo@redhat.com   

Red Hat respects your work life balance. Therefore there is no need to answer this email out of your office hours.