614c9d013acb22a0580ca55dcd09d5eb093c6507
[controller.git] / features / netconf-connector / src / main / resources / features.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=4 tabstop=4: -->
3 <!--
4  Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
5
6  This program and the accompanying materials are made available under the
7  terms of the Eclipse Public License v1.0 which accompanies this distribution,
8  and is available at http://www.eclipse.org/legal/epl-v10.html
9 -->
10 <features name="odl-controller-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"
11           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12           xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.0 http://karaf.apache.org/xmlns/features/v1.2.0">
13     <!--
14         Necessary TODO: Please read the features guidelines:
15         https://wiki.opendaylight.org/view/Runtime:Karaf_Features_Guidelines#Feature_Best_Practices
16     -->
17     <!--
18     Necessary TODO: Add repo entries for the repositories of features you refer to
19         in this feature file but do not define here.
20         Examples:
21             <repository>mvn:org.opendaylight.yangtools/features-yangtools/0.7.0-SNAPSHOT/xml/features</repository>
22             <repository>mvn:org.opendaylight.controller/features-mdsal/1.2.0-SNAPSHOT/xml/features</repository>
23             <repository>mvn:org.opendaylight.openflowplugin/features-openflowplugin/0.1.0-SNAPSHOT/xml/features</repository>
24     -->
25     <repository>mvn:org.opendaylight.controller/features-mdsal/${mdsal.version}/xml/features</repository>
26     <repository>mvn:org.opendaylight.yangtools/features-yangtools/${yangtools.version}/xml/features</repository>
27     <repository>mvn:org.opendaylight.controller/features-netconf/${netconf.version}/xml/features</repository>
28     <!-- FIXME: This introduces cycle between projects, which makes version updates
29                 harder. Should be moved to different.
30         -->
31     <repository>mvn:org.opendaylight.aaa/features-aaa/${aaa.version}/xml/features</repository>
32     <feature name='odl-netconf-connector-all' version='${project.version}' description='OpenDaylight :: Netconf Connector :: All'>
33         <!--
34             Necessary TODO:
35             List all of the user consumable features you define in this feature file here.
36             Generally you would *not* list individual bundles here, but only features defined in *this* file.
37             It is useful to list them in the same order they occur in the file.
38
39             Examples:
40             <feature version='${project.version}'>odl-controller-provider</feature>
41             <feature version='${project.version}'>odl-controller-model</feature>
42         -->
43         <feature version='${project.version}'>odl-netconf-connector</feature>
44         <feature version='${project.version}'>odl-netconf-connector-ssh</feature>
45     </feature>
46     <!--
47         Necessary TODO: Define your features.  It is useful to list then in order of dependency.  So if A depends on B, list A first.
48         When naming your features please be mindful of the guidelines:
49             https://wiki.opendaylight.org/view/Runtime:Karaf_Features_Guidelines
50         Particularly:
51             a) Prefixing names with 'odl-': https://wiki.opendaylight.org/view/Runtime:Karaf_Features_Guidelines#Feature_Naming
52             b) Descriptions: https://wiki.opendaylight.org/view/Runtime:Karaf_Features_Guidelines#Description
53             c) Avoid start-levels: https://wiki.opendaylight.org/view/Runtime:Karaf_Features_Guidelines#Avoid_start-levels
54
55         It's also nice to list inside a feature, first the features it needs, then the bundles it needs, then the configfiles.
56         Examples:
57
58         * Basic MD-SAL Provider
59         <feature name='odl-controller-provider' version='${project.version}' description='OpenDaylight :: controller :: Provider '>
60             <feature version='1.2.0-SNAPSHOT'>odl-mdsal-broker</feature>
61             <feature version='${project.version}'>odl-controller-model</feature>
62             <bundle>mvn:org.opendaylight.controller/controller-provider/${project.version}</bundle>
63             ... whatever other bundles you need
64         </feature>
65
66         * Basic MD-SAL Model feature
67         <feature name='odl-controller-model' version='${project.version}' description='OpenDaylight :: controller :: Model'>
68             <feature version='0.7.0-SNAPSHOT'>odl-yangtools-binding</feature>
69             <feature version='0.7.0-SNAPSHOT'>odl-yangtools-models</feature>
70             <bundle>mvn:org.opendaylight.controller/controller-model/${project.version}</bundle>
71             ... whatever other bundles you need
72         </feature>
73
74         * Config Subsystem example - the config file is your config subsystem configuration
75         <feature name='odl-controller-provider' version='${project.version}' description='OpenDaylight :: controller :: Provider'>
76             <feature version='1.2.0-SNAPSHOT'>odl-mdsal-broker</feature>
77             <bundle>mvn:org.opendaylight.controller/controller-provider/${project.version}</bundle>
78             <configfile finalname="etc/opendaylight/karaf/80-controller.xml">mvn:org.opendaylight.controller/controller-config/${project.version}/xml/config</configfile>
79             ... whatever other bundles you need
80         </feature>
81
82         * Basic MD-SAL Provider that uses openflowplugin-flow-services (which brings along odl-mdsal-broker)
83         <feature name='odl-controller-provider' version='${project.version}' description='OpenDaylight :: controller :: Provider'>
84             <feature version='0.1.0-SNAPSHOT'>odl-openflowplugin-flow-services</feature>
85             <bundle>mvn:org.opendaylight.controller/controller-provider/${project.version}</bundle>
86             ... whatever other bundles you need
87         </feature>
88
89     -->
90     <feature name='odl-netconf-connector' version='${project.version}' description="OpenDaylight :: Netconf Connector :: Netconf Connector">
91         <feature version='${project.version}'>odl-mdsal-broker</feature>
92         <feature version='${netconf.version}'>odl-netconf-client</feature>
93         <feature version='${yangtools.version}'>odl-yangtools-models</feature>
94         <bundle>mvn:org.opendaylight.controller/sal-netconf-connector/${project.version}</bundle>
95         <bundle>mvn:org.opendaylight.controller.model/model-inventory/${project.version}</bundle>
96         <bundle>mvn:org.opendaylight.controller/netconf-config-dispatcher/${config.version}</bundle>
97         <configfile finalname='${config.configfile.directory}/${config.netconf.client.configfile}'>mvn:org.opendaylight.controller/netconf-config/${netconf.version}/xml/config</configfile>
98     </feature>
99     <feature name='odl-netconf-connector-ssh' version='${project.version}' description="OpenDaylight :: Netconf Connector :: Netconf Connector + Netconf SSH Server + loopback connection configuration">
100         <feature version='${netconf.version}'>odl-netconf-ssh</feature>
101         <feature version='${project.version}'>odl-netconf-connector</feature>
102         <configfile finalname="${config.configfile.directory}/${config.netconf.connector.configfile}">mvn:org.opendaylight.controller/netconf-connector-config/${netconf.version}/xml/config</configfile>
103     </feature>
104     <feature name='odl-netconf-ssh' version='${netconf.version}' description="OpenDaylight :: Netconf Connector :: SSH">
105         <feature version='${netconf.version}'>odl-netconf-tcp</feature>
106         <!-- FIXME: This introduces cycle between projects, which makes version updates
107                     harder. Should be moved to different.
108         -->
109         <feature version='${aaa.version}'>odl-aaa-netconf-plugin</feature>
110         <bundle>mvn:org.opendaylight.controller/netconf-ssh/${netconf.version}</bundle>
111         <bundle>mvn:org.bouncycastle/bcpkix-jdk15on/${bouncycastle.version}</bundle>
112         <bundle>mvn:org.bouncycastle/bcprov-jdk15on/${bouncycastle.version}</bundle>
113       </feature>
114       <feature name='odl-netconf-tcp' version='${netconf.version}' description="OpenDaylight :: Netconf Connector :: TCP">
115         <feature version='${netconf.version}'>odl-netconf-impl</feature>
116         <bundle>mvn:org.opendaylight.controller/netconf-tcp/${netconf.version}</bundle>
117       </feature>
118
119     <!-- Optional TODO: Remove TODO Comments -->
120
121 </features>