On Mon, Nov 29, 2021 at 8:10 AM Sandro Bonazzola <sbonazzo(a)redhat.com>
wrote:
Il giorno lun 29 nov 2021 alle ore 08:02 Martin Perina <mperina(a)redhat.com>
ha scritto:
>
>
> On Fri, Nov 26, 2021 at 6:39 PM Sandro Bonazzola <sbonazzo(a)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
>>
<
https://search.maven.org/artifact/org.ovirt.engine.api/ovirt-engine-exten...
>> 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:
>
>
>
https://github.com/oVirt/ovirt-engine/blob/master/ovirt-engine.spec.in#L440
>
> 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.
Well, I'm almost sure that xmvn is capable of using a newer version from
RPM if the project requires an older version.
For example mockito 3.12.4
<
https://cbs.centos.org/koji/buildinfo?buildID=35544> requires junit 4.12
and we have only 4.13 <
https://cbs.centos.org/koji/buildinfo?buildID=35160>
provided as an RPM.
So isn't the problem in the SNAPSHOT version availability?
>
> I see that you built snapshot version on CBS:
>
>
https://cbs.centos.org/koji/buildinfo?buildID=36134
>
> 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 <
https://www.redhat.com/>
>>
>> sbonazzo(a)redhat.com
>> <
https://www.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 <
https://www.redhat.com/>
sbonazzo(a)redhat.com
<
https://www.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.