Konstantin Boudnik created BIGTOP-1429:
------------------------------------------
Summary: Apache build of Bigtop test artifacts fails to find
correct Hbase jars
Key: BIGTOP-1429
URL: https://issues.apache.org/jira/browse/BIGTOP-1429
Project: Bigtop
Issue Type: Bug
Components: build, hbase, tests
Affects Versions: 0.7.0
Reporter: Konstantin Boudnik
Assignee: Konstantin Boudnik
Fix For: 0.8.0
Our *testartifacts* build fails on Apache CI system with the following error:
{code}
[ERROR] Failed to execute goal on project hbase-smoke: Could not resolve
dependencies for project
org.apache.bigtop.itest:hbase-smoke:jar:0.8.0-SNAPSHOT: The following artifacts
could not be resolved: org.apache.hbase:hbase-common:jar:0.98.2,
org.apache.hbase:hbase-common:jar:tests:0.98.2,
org.apache.hbase:hbase-server:jar:0.98.2,
org.apache.hbase:hbase-server:jar:tests:0.98.2: Could not find artifact
org.apache.hbase:hbase-common:jar:0.98.2 in central
(http://repo.maven.apache.org/maven2) -> [Help 1]
{code}
Here's the problem:
- our packages are created on a separate Bigtop CI system that creates and
locally installs HBase artifacts built against a particular Hadoop2 version.
The resulting artifacts version is - in the current BOM - 0.98.2.
- the *testartifacts* build in question is ran on a Apache CI machine, as it
needs to publish Bigtop test artifacts to ASF maven repo (Bigtop CI machine
doesn't have correct credentials for the deployment, e.g. it isn't allowed to)
- ASF CI machine doesn't have HBase 0.98.2 artifact locally installed, and
tries to fetch them from repo.maven.apache.org. However, HBase releases are
produced for both hadoop1 and hadoop2. To make this distinction the artifacts
versions are alternated to 0.98.2-hadoop1, and 0.98.2-hadoop2 respectively. As
the result, *testartifacts* build fails being unable to resolve the
depedencies.
There're a few ways to solve the issue:
# provision ASF CI hosts beforehand with .m2 cache from bigtop CI machine
# deploy artifacts from Bigtop package build phase into 3rd party Maven repo,
which can be later used in *testartifacts* build to resolve the dependencies
# finally, alternate Bigtop Hbase package build to produce 0.98.2-hadoop2
artifact. This version will be resolved during *testartifacts* and the deploy
will happen. However, during the cluster tests (at Bigtop CI slaves) correct
version from local .m2 caches will be used, hence guaranteeing consistency of
the stack
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)