Description
Ever since we have introduced BIGTOP-1235 there was a bit of mess with where the bits of HCFS initialization reside. In particular, it has caused BIGTOP-1865. And the fix of the latter wasn't optimal.
The current dep.graph is like this:
- hadoop package carries around {[init-hdfs.sh}} script that now needs init-hcfs.groovy and init-hcfs.json for the latter.
- in order to run the groovy script, hadoop-hdfs package needs to declare the dependency over bigtop-groovy
- bigtop-groovy needs bigtop-utils to resolve JAVA_HOME
Clearly, hadoop-hdfs has nothing to do with bigtop-groovy. Furthermore, init-hcfs functionality shouldn't even belong to hadoop-hdfs: for once, that'd make the life of other HCFS compatible systems harder.
I'd suggest we introduce a new package where all such helper tools would belong. To sum up:
- let's create new package bigtop-scriptlets; init-hcfs.groovy will be moved there from hadoop-hdfs
- it will depends on bigtop-groovy for Groovy runtime
- hadoop-hdfs will depends on bigtop-scriptlets
This solution should break deps. loop somewhat addressed inBIGTOP-1865and make the package dependencies a bit more straight.
Attachments
Issue Links
- supercedes
-
BIGTOP-1865 circular dependency between bigtop-groovy and bigtop-utils
- Resolved