Merge "Be sure to shutdown instance when destroyed"
[controller.git] / opendaylight / archetypes / opendaylight-karaf-features / src / main / resources / archetype-resources / src / main / resources / features.xml
1 #set( $symbol_pound = '#' )
2 #set( $symbol_dollar = '$' )
3 #set( $symbol_escape = '\' )
4 <?xml version="1.0" encoding="UTF-8"?>
5 <!-- vi: set et smarttab sw=4 tabstop=4: -->
6 <!--
7  Necessary TODO: Put your copyright statement here
8
9  This program and the accompanying materials are made available under the
10  terms of the Eclipse Public License v1.0 which accompanies this distribution,
11  and is available at http://www.eclipse.org/legal/epl-v10.html
12 -->
13 <features name="odl-${repoName}-${symbol_dollar}{project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"
14           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
15           xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.0 http://karaf.apache.org/xmlns/features/v1.2.0">
16     <!--
17         Necessary TODO: Please read the features guidelines:
18         https://wiki.opendaylight.org/view/Runtime:Karaf_Features_Guidelines#Feature_Best_Practices
19     -->
20     <!--
21     Necessary TODO: Add repo entries for the repositories of features you refer to
22         in this feature file but do not define here.
23         Examples:
24             <repository>mvn:org.opendaylight.yangtools/features-yangtools/0.6.2-SNAPSHOT/xml/features</repository>
25             <repository>mvn:org.opendaylight.controller/features-mdsal/1.1-SNAPSHOT/xml/features</repository>
26             <repository>mvn:org.opendaylight.openflowplugin/features-openflowplugin/0.0.3-SNAPSHOT/xml/features</repository>
27     -->
28     <feature name='odl-${repoName}-all' version='${symbol_dollar}{project.version}' description='OpenDaylight :: ${repoName} :: All'>
29         <!--
30             Necessary TODO:
31             List all of the user consumable features you define in this feature file here.
32             Generally you would *not* list individual bundles here, but only features defined in *this* file.
33             It is useful to list them in the same order they occur in the file.
34
35             Examples:
36             <feature version='${symbol_dollar}{project.version}'>odl-${repoName}-provider</feature>
37             <feature version='${symbol_dollar}{project.version}'>odl-${repoName}-model</feature>
38         -->
39     </feature>
40     <!--
41         Necessary TODO: Define your features.  It is useful to list then in order of dependency.  So if A depends on B, list A first.
42         When naming your features please be mindful of the guidelines:
43             https://wiki.opendaylight.org/view/Runtime:Karaf_Features_Guidelines
44         Particularly:
45             a) Prefixing names with 'odl-': https://wiki.opendaylight.org/view/Runtime:Karaf_Features_Guidelines#Feature_Naming
46             b) Descriptions: https://wiki.opendaylight.org/view/Runtime:Karaf_Features_Guidelines#Description
47             c) Avoid start-levels: https://wiki.opendaylight.org/view/Runtime:Karaf_Features_Guidelines#Avoid_start-levels
48
49         It's also nice to list inside a feature, first the features it needs, then the bundles it needs, then the configfiles.
50         Examples:
51
52         * Basic MD-SAL Provider
53         <feature name='odl-${repoName}-provider' version='${symbol_dollar}{project.version}' description='OpenDaylight :: ${repoName} :: Provider '>
54             <feature version='1.1-SNAPSHOT'>odl-mdsal-broker</feature>
55             <feature version='${symbol_dollar}{project.version}'>odl-${repoName}-model</feature>
56             <bundle>mvn:${groupId}/${repoName}-provider/${symbol_dollar}{project.version}</bundle>
57             ... whatever other bundles you need
58         </feature>
59
60         * Basic MD-SAL Model feature
61         <feature name='odl-${repoName}-model' version='${symbol_dollar}{project.version}' description='OpenDaylight :: ${repoName} :: Model'>
62             <feature version='0.6.2-SNAPSHOT'>odl-yangtools-binding</feature>
63             <feature version='0.6.2-SNAPSHOT'>odl-yangtools-models</feature>
64             <bundle>mvn:${groupId}/${repoName}-model/${symbol_dollar}{project.version}</bundle>
65             ... whatever other bundles you need
66         </feature>
67
68         * Config Subsystem example - the config file is your config subsystem configuration
69         <feature name='odl-${repoName}-provider' version='${symbol_dollar}{project.version}' description='OpenDaylight :: ${repoName} :: Provider'>
70             <feature version='1.1-SNAPSHOT'>odl-mdsal-broker</feature>
71             <bundle>mvn:${groupId}/${repoName}-provider/${symbol_dollar}{project.version}</bundle>
72             <configfile finalname="etc/opendaylight/karaf/80-${repoName}.xml">mvn:${groupId}/${repoName}-config/${symbol_dollar}{project.version}/xml/config</configfile>
73             ... whatever other bundles you need
74         </feature>
75
76         * Basic MD-SAL Provider that uses openflowplugin-flow-services (which brings along odl-mdsal-broker)
77         <feature name='odl-${repoName}-provider' version='${symbol_dollar}{project.version}' description='OpenDaylight :: ${repoName} :: Provider'>
78             <feature version='0.0.3-SNAPSHOT'>odl-openflowplugin-flow-services</feature>
79             <bundle>mvn:${groupId}/${repoName}-provider/${symbol_dollar}{project.version}</bundle>
80             ... whatever other bundles you need
81         </feature>
82
83     -->
84     <!-- Optional TODO: Remove TODO Comments -->
85
86 </features>