[wildfly-dev] selecting packages from feature-packs

Brian Stansberry brian.stansberry at redhat.com
Fri Oct 21 09:50:29 EDT 2016


> On Oct 19, 2016, at 7:27 AM, Alexey Loubyansky <alexey.loubyansky at redhat.com> wrote:
> 
> Me and Stuart have been thinking about how to express feature-pack 
> package selection in an XML. Each one came up with a proposal but we 
> appear to have slightly different preferences. In case anybody has an 
> opinion or a better suggestion, please, share.
> 
> Brief description: feature-pack consists of packages. A package is a 
> unit of content. So a set of packages determines the target installation 
> content-wise. Feature-pack has a set of default packages. These are the 
> packages that get installed by default, i.e. when the user installs the 
> feature-pack w/o specifying any package preferences. In addition to the 
> default ones a feature-pack may contains non-default packages, these are 
> present in the feature-pack but will be installed only if the user 
> explicitly asks for them.
> So, the question is how to express these package preferences in an XML.
> 
> Proposal 1.
> 
> - include-default flag (element or attribute) which defaults to true 
> (meaning the default packages will be included by default);
> 

Th “include” element is still supported here, right? So, I can get all the default ones and then use include elements to pull in additional ones.

> - if include-default is false (meaning nothing is installed by default), 
> then 'include' element can be used to pick the specific packages 
> (default and non-default ones) to be installed;
> 
> - otherwise (when include-default is true) 'exclude' element can be used 
> to exclude specific undesired default packages.
> 

Can “exclude” be used to exclude dependencies? So I want “a” but not its dependency “b”? If the answer is yes for optional dependencies, what if the dependency isn’t optional?

> 
> Proposal 2.
> 
> - exclude element - applicable to any package and means do not install 
> the package (and its dependencies);
> 
> - include element - applicable to non-default packages and means do 
> install the non-default package (and its dependencies);
> 
What happens if it’s used for a default package? The tool forgives this, right?

> - pick element - applicable to any package and means install only the 
> picked package(s)

and it’s dependencies? If yes, all its dependencies or only non-optional?

> ignoring other default and non-default ones. pick 
> cannot be used in combination with exclude and include.
> 
> 
> Basically, 'include' and 'exclude' in both proposals are practically the 
> same. The difference is how the picking is expressed. In the first one, 
> everything is explicitly excluded and then the desired ones are 
> explicitly included, in the second one the desired ones are simply 
> explicitly picked.
> 

The answers to my questions on Proposal 1 impact the semantics of include/exclude in different cases, so I’ll defer expressing an opinion for now. :)

> 
> Thanks,
> Alexey
> _______________________________________________
> wildfly-dev mailing list
> wildfly-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/wildfly-dev

-- 
Brian Stansberry
Manager, Senior Principal Software Engineer
JBoss by Red Hat






More information about the wildfly-dev mailing list