Buckifying DHCP app
Change-Id: I9af53efa8bb0294f5f2c677ac2d8bb0b5e4cf282
diff --git a/apps/dhcp/BUCK b/apps/dhcp/BUCK
new file mode 100644
index 0000000..5c811d8
--- /dev/null
+++ b/apps/dhcp/BUCK
@@ -0,0 +1,14 @@
+
+BUNDLES = [
+ ('//apps/dhcp/api:onos-app-dhcp-api', ONOS_GROUP_ID + ':' + 'onos-app-dhcp-api' + ':' + ONOS_VERSION),
+ ('//apps/dhcp/app:onos-app-dhcp-app', ONOS_GROUP_ID + ':' + 'onos-app-dhcp-app' + ':' + ONOS_VERSION),
+]
+
+onos_app(
+ app_name = 'org.onosproject.dhcp',
+ feature_name = ONOS_GROUP_ID + ':onos-app-dhcp:' + ONOS_VERSION,
+ title = 'DHCP Server App',
+ category = 'Utility',
+ url = 'http://onosproject.org',
+ included_bundles = BUNDLES,
+)
diff --git a/apps/dhcp/api/BUCK b/apps/dhcp/api/BUCK
index e86c13b..9989504 100644
--- a/apps/dhcp/api/BUCK
+++ b/apps/dhcp/api/BUCK
@@ -12,7 +12,7 @@
'//lib:TEST',
]
-java_library(
+osgi_jar(
name = CURRENT_NAME,
srcs = glob([SRC + '/*.java']),
deps = COMPILE_DEPS,
diff --git a/apps/dhcp/app/BUCK b/apps/dhcp/app/BUCK
index 5fa8ca7..a3b4ea1 100644
--- a/apps/dhcp/app/BUCK
+++ b/apps/dhcp/app/BUCK
@@ -1,8 +1,4 @@
-SRC = 'src/main/java/org/onosproject/**/'
-TEST = 'src/test/java/org/onosproject/**/'
-
CURRENT_NAME = 'onos-app-dhcp-app'
-CURRENT_TARGET = ':' + CURRENT_NAME
COMPILE_DEPS = [
'//lib:CORE_DEPS',
@@ -18,18 +14,12 @@
'//lib:TEST_ADAPTERS',
]
-java_library(
+osgi_jar(
name = CURRENT_NAME,
- srcs = glob([SRC + '/*.java']),
deps = COMPILE_DEPS,
- visibility = ['PUBLIC'],
-)
-
-java_test(
- name = 'tests',
- srcs = glob([TEST + '/*.java']),
- deps = COMPILE_DEPS +
- TEST_DEPS +
- [CURRENT_TARGET],
- source_under_test = [CURRENT_TARGET],
+ srcs = glob([SRC + '/*.java']),
+ resources = glob([RESOURCES_ROOT + '**']),
+ test_srcs = glob([TEST + '/*.java']),
+ test_deps = TEST_DEPS,
+ web_context = '/onos/dhcp',
)
diff --git a/bucklets/onos.bucklet b/bucklets/onos.bucklet
index ad6ccf6..37a0864 100644
--- a/bucklets/onos.bucklet
+++ b/bucklets/onos.bucklet
@@ -4,15 +4,21 @@
FORCE_INSTALL=True
NONE='NONE'
+SRC = 'src/main/java/org/onosproject/**/'
+TEST = 'src/test/java/org/onosproject/**/'
+RESOURCES_ROOT = 'src/main/resources/'
+
ONOS_GROUP_ID = 'org.onosproject'
ONOS_VERSION = '1.6.0-SNAPSHOT'
def osgi_jar(
name,
srcs,
+ test_srcs = None,
group_id = ONOS_GROUP_ID,
version = ONOS_VERSION,
deps = [],
+ test_deps = [ '//lib:TEST' ],
visibility = ['PUBLIC'],
license = 'NONE',
description = '',
@@ -21,6 +27,10 @@
export_packages = '*',
include_resources = NONE,
web_context = NONE,
+ resources = None,
+ resources_root = None,
+ test_resources = None,
+ test_resources_root = None,
**kwargs
):
@@ -28,11 +38,16 @@
osgi_jar_name = name + '-osgi'
mvn_coords = group_id + ':' + name + ':' + version
+ if resources and not resources_root:
+ resources_root = RESOURCES_ROOT
+
java_library(
name = bare_jar_name,
srcs = srcs,
deps = deps,
- visibility = ['PUBLIC'],
+ visibility = [], #intentially, not visible
+ resources = resources,
+ resources_root = resources_root,
**kwargs
)
@@ -113,3 +128,18 @@
visibility = visibility,
)
+
+ if test_resources and not test_resources_root:
+ test_resources_root = RESOURCES_ROOT
+
+ if test_srcs:
+ java_test(
+ name = 'tests',
+ srcs = test_srcs,
+ deps = deps +
+ test_deps +
+ [':' + bare_jar_name],
+ source_under_test = [':' + bare_jar_name],
+ resources = test_resources,
+ resources_root = test_resources_root
+ )