Thomas Vachuska | a8e1bd4 | 2018-06-11 15:45:11 -0700 | [diff] [blame] | 1 | load("//tools/build/bazel:osgi_features.bzl", "osgi_feature", "osgi_feature_repo") |
Thomas Vachuska | 1ae26c6 | 2018-07-09 13:40:16 -0700 | [diff] [blame] | 2 | load("//:modules.bzl", "FEATURES") |
Ray Milkey | a8cf59e | 2018-06-06 16:39:45 -0700 | [diff] [blame] | 3 | |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 4 | osgi_feature_repo( |
| 5 | name = "onos-features", |
| 6 | exported_features = FEATURES, |
| 7 | visibility = ["//visibility:public"], |
| 8 | ) |
| 9 | |
Ray Milkey | a8cf59e | 2018-06-06 16:39:45 -0700 | [diff] [blame] | 10 | osgi_feature( |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 11 | name = "onos-thirdparty-base", |
| 12 | description = "ONOS 3rd party dependencies", |
Ray Milkey | 644fdbf | 2018-07-27 15:24:31 -0700 | [diff] [blame^] | 13 | included_bundles = ATOMIX + [ |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 14 | "@commons_lang//jar", |
| 15 | "@commons_lang3//jar", |
| 16 | "@commons_text//jar", |
| 17 | "@commons_configuration//jar", |
| 18 | "@guava//jar", |
| 19 | "@netty//jar", |
| 20 | "@netty_common//jar", |
| 21 | "@netty_buffer//jar", |
| 22 | "@netty_transport//jar", |
| 23 | "@netty_handler//jar", |
| 24 | "@netty_codec//jar", |
| 25 | "@netty_transport_native_epoll//jar", |
| 26 | "@netty_resolver//jar", |
| 27 | "@commons_pool//jar", |
| 28 | "@commons_math3//jar", |
| 29 | "@joda_time//jar", |
| 30 | "@metrics_core//jar", |
| 31 | "@metrics_json//jar", |
| 32 | "@minimal_json//jar", |
| 33 | "@kryo//jar", |
| 34 | "@reflectasm//jar", |
| 35 | "@asm//jar", |
| 36 | "@minlog//jar", |
| 37 | "@objenesis//jar", |
| 38 | "@jackson_core//jar", |
| 39 | "@jackson_annotations//jar", |
| 40 | "@jackson_databind//jar", |
| 41 | "@commons_collections//jar", |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 42 | "@concurrent_trees//jar", |
| 43 | "@commons_io//jar", |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 44 | "@mapdb//jar", |
| 45 | "@bcpkix_jdk15on//jar", |
| 46 | "@bcprov_jdk15on//jar", |
| 47 | "@commons_jxpath//jar", |
| 48 | "@commons_beanutils//jar", |
| 49 | "@jdom//jar", |
| 50 | "@sigar//jar", |
| 51 | ], |
Ray Milkey | a8cf59e | 2018-06-06 16:39:45 -0700 | [diff] [blame] | 52 | required_features = [], |
Thomas Vachuska | 1ae26c6 | 2018-07-09 13:40:16 -0700 | [diff] [blame] | 53 | visibility = ["//visibility:public"], |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 54 | ) |
| 55 | |
Ray Milkey | a8cf59e | 2018-06-06 16:39:45 -0700 | [diff] [blame] | 56 | osgi_feature( |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 57 | name = "onos-thirdparty-web", |
| 58 | description = "ONOS 3rd party dependencies for web apps", |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 59 | included_bundles = [ |
| 60 | "@jersey_common//jar", |
| 61 | "@javax_annotation_api//jar", |
| 62 | "@javax_ws_rs_api//jar", |
| 63 | "@hk2_api//jar", |
| 64 | "@hk2_locator//jar", |
| 65 | "@hk2_osgi_resource_locator//jar", |
| 66 | "@javax_inject//jar", |
| 67 | "@jersey_server//jar", |
| 68 | "@jersey_hk2//jar", |
| 69 | "@aopalliance_repackaged//jar", |
| 70 | "@hk2_utils//jar", |
| 71 | "@validation_api//jar", |
| 72 | "@javassist//jar", |
| 73 | "@jersey_container_servlet//jar", |
| 74 | "@jersey_container_servlet_core//jar", |
| 75 | "@jersey_media_multipart//jar", |
Thomas Vachuska | 1ae26c6 | 2018-07-09 13:40:16 -0700 | [diff] [blame] | 76 | "@jersey_client//jar", |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 77 | "@mimepull//jar", |
| 78 | ], |
Ray Milkey | a8cf59e | 2018-06-06 16:39:45 -0700 | [diff] [blame] | 79 | required_features = [ |
| 80 | "war", |
| 81 | "onos-thirdparty-base", |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 82 | ], |
Thomas Vachuska | 1ae26c6 | 2018-07-09 13:40:16 -0700 | [diff] [blame] | 83 | visibility = ["//visibility:public"], |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 84 | ) |
| 85 | |
Ray Milkey | a8cf59e | 2018-06-06 16:39:45 -0700 | [diff] [blame] | 86 | osgi_feature( |
| 87 | name = "onos-api", |
| 88 | description = "ONOS services and model API", |
| 89 | included_bundles = [ |
| 90 | "//utils/misc:onlab-misc", |
| 91 | "//utils/osgi:onlab-osgi", |
Thomas Vachuska | 1ae26c6 | 2018-07-09 13:40:16 -0700 | [diff] [blame] | 92 | "//utils/rest:onlab-rest", |
Ray Milkey | a8cf59e | 2018-06-06 16:39:45 -0700 | [diff] [blame] | 93 | "//core/api:onos-api", |
| 94 | "//incubator/api:onos-incubator-api", |
| 95 | ], |
| 96 | required_features = [ |
| 97 | "scr", |
| 98 | "onos-thirdparty-base", |
Thomas Vachuska | 1ae26c6 | 2018-07-09 13:40:16 -0700 | [diff] [blame] | 99 | "onos-thirdparty-web", |
Ray Milkey | a8cf59e | 2018-06-06 16:39:45 -0700 | [diff] [blame] | 100 | ], |
Thomas Vachuska | 1ae26c6 | 2018-07-09 13:40:16 -0700 | [diff] [blame] | 101 | visibility = ["//visibility:public"], |
Ray Milkey | a8cf59e | 2018-06-06 16:39:45 -0700 | [diff] [blame] | 102 | ) |
| 103 | |
| 104 | osgi_feature( |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 105 | name = "onos-core", |
| 106 | description = "ONOS core components", |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 107 | included_bundles = [ |
| 108 | "//core/net:onos-core-net", |
| 109 | "//core/common:onos-core-common", |
| 110 | "//core/store/dist:onos-core-dist", |
Thomas Vachuska | 1ae26c6 | 2018-07-09 13:40:16 -0700 | [diff] [blame] | 111 | "//core/store/primitives:onos-core-primitives", |
| 112 | "//core/store/persistence:onos-core-persistence", |
| 113 | "//core/store/serializers:onos-core-serializers", |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 114 | ], |
Ray Milkey | a8cf59e | 2018-06-06 16:39:45 -0700 | [diff] [blame] | 115 | required_features = ["onos-api"], |
Thomas Vachuska | 1ae26c6 | 2018-07-09 13:40:16 -0700 | [diff] [blame] | 116 | visibility = ["//visibility:public"], |
Thomas Vachuska | a8e1bd4 | 2018-06-11 15:45:11 -0700 | [diff] [blame] | 117 | ) |
| 118 | |
Ray Milkey | a4f8d9d | 2018-07-11 10:36:23 -0700 | [diff] [blame] | 119 | osgi_feature( |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 120 | name = "onos-incubator", |
| 121 | description = "ONOS core incubator components", |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 122 | included_bundles = [ |
Ray Milkey | a4f8d9d | 2018-07-11 10:36:23 -0700 | [diff] [blame] | 123 | "//incubator/net:onos-incubator-net", |
| 124 | "//incubator/store:onos-incubator-store", |
| 125 | "//incubator/rpc:onos-incubator-rpc", |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 126 | ], |
Ray Milkey | a4f8d9d | 2018-07-11 10:36:23 -0700 | [diff] [blame] | 127 | required_features = ["onos-core"], |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 128 | visibility = ["//visibility:public"], |
| 129 | ) |
| 130 | |
Ray Milkey | a4f8d9d | 2018-07-11 10:36:23 -0700 | [diff] [blame] | 131 | osgi_feature( |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 132 | name = "onos-rest", |
| 133 | description = "ONOS REST API components", |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 134 | included_bundles = [ |
Ray Milkey | a4f8d9d | 2018-07-11 10:36:23 -0700 | [diff] [blame] | 135 | "//utils/rest:onlab-rest", |
| 136 | "//web/api:onos-rest", |
| 137 | ], |
| 138 | required_features = [ |
| 139 | "onos-api", |
| 140 | "onos-thirdparty-web", |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 141 | ], |
| 142 | visibility = ["//visibility:public"], |
| 143 | ) |
| 144 | |
Ray Milkey | a4f8d9d | 2018-07-11 10:36:23 -0700 | [diff] [blame] | 145 | osgi_feature( |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 146 | name = "onos-cli", |
Ray Milkey | a4f8d9d | 2018-07-11 10:36:23 -0700 | [diff] [blame] | 147 | description = "ONOS admin command console components", |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 148 | included_bundles = [ |
Ray Milkey | a4f8d9d | 2018-07-11 10:36:23 -0700 | [diff] [blame] | 149 | "//cli:onos-cli", |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 150 | ], |
Ray Milkey | a4f8d9d | 2018-07-11 10:36:23 -0700 | [diff] [blame] | 151 | required_features = ["onos-api"], |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 152 | visibility = ["//visibility:public"], |
| 153 | ) |
| 154 | |
Ray Milkey | 6d94e9f | 2018-07-15 18:04:26 -0700 | [diff] [blame] | 155 | osgi_feature( |
Ray Milkey | 6b3775a | 2018-06-28 11:18:44 -0700 | [diff] [blame] | 156 | name = "onos-gui", |
| 157 | description = "ONOS GUI console components", |
Ray Milkey | 6b3775a | 2018-06-28 11:18:44 -0700 | [diff] [blame] | 158 | included_bundles = [ |
Ray Milkey | 6d94e9f | 2018-07-15 18:04:26 -0700 | [diff] [blame] | 159 | "//web/gui:onos-gui", |
| 160 | "@jetty_websocket//jar", |
| 161 | "//utils/rest:onlab-rest", |
| 162 | ], |
| 163 | required_features = [ |
| 164 | "onos-api", |
| 165 | "onos-thirdparty-web", |
Ray Milkey | 6b3775a | 2018-06-28 11:18:44 -0700 | [diff] [blame] | 166 | ], |
| 167 | visibility = ["//visibility:public"], |
| 168 | ) |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 169 | |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 170 | #osgi_feature ( |
| 171 | # name = "onos-gui2", |
| 172 | # description = "ONOS GUI2 console components", |
| 173 | # required_features = ["onos-api", "onos-thirdparty-web"], |
| 174 | # included_bundles = [ |
| 175 | # "//lib:jetty_websocket", |
| 176 | # "//utils/rest:onlab-rest", |
| 177 | # "//web/gui2:onos-gui2", |
| 178 | # ] |
| 179 | #) |
Thomas Vachuska | 03c608c | 2018-07-10 16:45:08 -0700 | [diff] [blame] | 180 | |
Thomas Vachuska | aab45d1 | 2018-06-05 16:39:46 -0700 | [diff] [blame] | 181 | #osgi_feature ( |
| 182 | # name = "onos-security", |
| 183 | # description ="Security-Mode ONOS", |
| 184 | # required_features = ["onos-api"], |
| 185 | # included_bundles = [ |
| 186 | # "//lib:org.apache.felix.framework.security", |
| 187 | # "//core/security:onos-security", |
| 188 | # ] |
| 189 | #) |