You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@bigtop.apache.org by "Konstantin Boudnik (JIRA)" <ji...@apache.org> on 2015/09/14 03:33:45 UTC

[jira] [Updated] (BIGTOP-2025) Make BOM to be a directional graph

     [ https://issues.apache.org/jira/browse/BIGTOP-2025?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Konstantin Boudnik updated BIGTOP-2025:
---------------------------------------
    Attachment: BIGTOP-2025.patch

Initial version of the dependencies direction.
I am debating with myself if having an ability to fall back to the old way of ordering the build by the position of a component in the BOM would makes sense. Perhaps for situations when {{dependencies}} aren't specified. Thoughts?

> Make BOM to be a directional graph
> ----------------------------------
>
>                 Key: BIGTOP-2025
>                 URL: https://issues.apache.org/jira/browse/BIGTOP-2025
>             Project: Bigtop
>          Issue Type: Sub-task
>          Components: build
>    Affects Versions: 1.0.0
>            Reporter: Konstantin Boudnik
>             Fix For: 1.1.0
>
>         Attachments: BIGTOP-2025.patch
>
>
> It might be a good idea to be able to set up a dependencies between the components, so the build system is aware which parts should be build first, and the sequentially or in parallel.
> With new configuration DSL introduced in BIGTOP-1494 we can have a directional graph like this
> {code}
>     'hadoop' {
>       name    = 'hadoop'
>       relNotes = 'Apache Hadoop'
>       version { base = '2.6.0'; pkg = base; release =1 }
>       tarball { destination = "${name}-${version.base}.tar.gz"
>                 source      = "${name}-${version.base}-src.tar.gz" }
>       url     { site = "{apache.APACHE_MIRROR}/${download_path}"
>                 archive = "{apache.APACHE_ARCHIVE}/${download_path}"
>                 download_path = "/hadoop/common/$name-${version.base}" }
>       dependencies { 'zookeeper'}
>     }
> {code}
> which will allow to collect all {{dependencies}} information cross components, build the graph and test it for loops. This information can be used by the build system to order the build process: if {{hadoop-deb}} is invoked it will automatically tries to build {{zookeeper}}; for {{hbase}} it will invoke {{hadoop}} build first, etc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)