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