diff --git a/lib/BUCK b/lib/BUCK
index fb7c2e9..2a5a685 100644
--- a/lib/BUCK
+++ b/lib/BUCK
@@ -1,4 +1,4 @@
-# ***** This file was auto-generated at Thu, 31 May 2018 16:26:40 GMT. Do not edit this file manually. *****
+# ***** This file was auto-generated at Wed, 6 Jun 2018 17:50:58 GMT. Do not edit this file manually. *****
 # ***** Use onos-lib-gen *****
 
 pass_thru_pom(
diff --git a/tools/build/bazel/BUILD b/tools/build/bazel/BUILD
index e513517..6c4e6ec 100644
--- a/tools/build/bazel/BUILD
+++ b/tools/build/bazel/BUILD
@@ -1,27 +1,27 @@
 py_binary(
     name = "onos_app_writer",
-    srcs = [ "onos_app.py" ],
+    srcs = ["onos_app.py"],
     main = "onos_app.py",
     visibility = ["//visibility:public"],
 )
 
 py_binary(
     name = "onos-app-oar",
-    srcs = [ "onos_oar.py" ],
+    srcs = ["onos_oar.py"],
     main = "onos_oar.py",
     visibility = ["//visibility:public"],
 )
 
 py_binary(
-  name = "onos-stage",
-  srcs = [ "onos_stage.py" ],
-  main = "onos_stage.py",
-  visibility = ["//visibility:public"],
+    name = "onos-stage",
+    srcs = ["onos_stage.py"],
+    main = "onos_stage.py",
+    visibility = ["//visibility:public"],
 )
 
 py_binary(
-  name = 'onos-feature',
-  srcs = [ "onos_feature.py" ],
-  main = 'onos_feature.py',
-  visibility = ["//visibility:public"],
+    name = "onos-feature",
+    srcs = ["onos_feature.py"],
+    main = "onos_feature.py",
+    visibility = ["//visibility:public"],
 )
diff --git a/tools/build/bazel/generate_workspace.bzl b/tools/build/bazel/generate_workspace.bzl
index 8e1b5d0..d3a0197 100644
--- a/tools/build/bazel/generate_workspace.bzl
+++ b/tools/build/bazel/generate_workspace.bzl
@@ -1,5 +1,7 @@
-# ***** This file was auto-generated at Thu, 31 May 2018 16:26:42 GMT. Do not edit this file manually. *****
+# ***** This file was auto-generated at Wed, 6 Jun 2018 17:51:00 GMT. Do not edit this file manually. *****
 # ***** Use onos-lib-gen *****
+
+load("//tools/build/bazel:variables.bzl", "ONOS_GROUP_ID", "ONOS_VERSION")
 COMPILE = [
     "@commons_configuration//jar",
     "@commons_logging//jar",
@@ -2090,3 +2092,178 @@
         visibility = ["//visibility:public"],
         exports = ["@sigar//jar"],
     )
+
+artifact_map = {}
+artifact_map[str(Label("@aopalliance_repackaged//jar"))] = "mvn:org.glassfish.hk2.external:aopalliance-repackaged:jar:2.5.0-b42"
+artifact_map[str(Label("@amqp_client//jar"))] = "mvn:com.rabbitmq:amqp-client:jar:3.6.1"
+artifact_map[str(Label("@asm//jar"))] = "mvn:org.ow2.asm:asm:jar:5.0.4"
+artifact_map[str(Label("@atomix//jar"))] = "mvn:io.atomix:atomix:jar:2.0.20"
+artifact_map[str(Label("@commons_codec//jar"))] = "mvn:commons-codec:commons-codec:jar:1.10"
+artifact_map[str(Label("@commons_collections//jar"))] = "mvn:commons-collections:commons-collections:jar:3.2.2"
+artifact_map[str(Label("@commons_configuration//jar"))] = "mvn:commons-configuration:commons-configuration:jar:1.10"
+artifact_map[str(Label("@commons_io//jar"))] = "mvn:commons-io:commons-io:jar:2.6"
+artifact_map[str(Label("@commons_jxpath//jar"))] = "mvn:commons-jxpath:commons-jxpath:jar:1.3"
+artifact_map[str(Label("@commons_beanutils//jar"))] = "mvn:commons-beanutils:commons-beanutils:jar:1.9.3"
+artifact_map[str(Label("@jdom//jar"))] = "mvn:jdom:jdom:jar:1.0"
+artifact_map[str(Label("@commons_lang//jar"))] = "mvn:commons-lang:commons-lang:jar:2.6"
+artifact_map[str(Label("@commons_lang3//jar"))] = "mvn:org.apache.commons:commons-lang3:jar:3.6"
+artifact_map[str(Label("@commons_logging//jar"))] = "mvn:commons-logging:commons-logging:jar:1.2"
+artifact_map[str(Label("@commons_math3//jar"))] = "mvn:org.apache.commons:commons-math3:jar:3.6.1"
+artifact_map[str(Label("@commons_pool//jar"))] = "mvn:commons-pool:commons-pool:jar:1.6"
+artifact_map[str(Label("@commons_text//jar"))] = "mvn:org.apache.commons:commons-text:jar:1.2"
+artifact_map[str(Label("@concurrent_trees//jar"))] = "mvn:com.googlecode.concurrent-trees:concurrent-trees:jar:2.6.1"
+artifact_map[str(Label("@easymock//jar"))] = "mvn:org.easymock:easymock:jar:3.6"
+artifact_map[str(Label("@antlr//jar"))] = "mvn:antlr:antlr:jar:2.7.7"
+artifact_map[str(Label("@error_prone_annotations//jar"))] = "mvn:com.google.errorprone:error_prone_annotations:jar:2.0.11"
+artifact_map[str(Label("@ganymed_ssh2//jar"))] = "mvn:ch.ethz.ganymed:ganymed-ssh2:jar:262"
+artifact_map[str(Label("@gmetric4j//jar"))] = "mvn:info.ganglia.gmetric4j:gmetric4j:jar:1.0.10"
+artifact_map[str(Label("@gson//jar"))] = "mvn:com.google.code.gson:gson:jar:2.7"
+artifact_map[str(Label("@guava//jar"))] = "mvn:com.google.guava:guava:jar:22.0"
+artifact_map[str(Label("@guava_testlib//jar"))] = "mvn:com.google.guava:guava-testlib:jar:22.0"
+artifact_map[str(Label("@hamcrest_all//jar"))] = "mvn:org.hamcrest:hamcrest-all:jar:1.3"
+artifact_map[str(Label("@hk2_api//jar"))] = "mvn:org.glassfish.hk2:hk2-api:jar:2.5.0-b42"
+artifact_map[str(Label("@hk2_locator//jar"))] = "mvn:org.glassfish.hk2:hk2-locator:jar:2.5.0-b42"
+artifact_map[str(Label("@hk2_osgi_resource_locator//jar"))] = "mvn:org.glassfish.hk2:osgi-resource-locator:jar:1.0.1"
+artifact_map[str(Label("@hk2_utils//jar"))] = "mvn:org.glassfish.hk2:hk2-utils:jar:2.5.0-b42"
+artifact_map[str(Label("@httpclient_osgi//jar"))] = "mvn:org.apache.httpcomponents:httpclient-osgi:jar:4.5.1"
+artifact_map[str(Label("@httpcore_osgi//jar"))] = "mvn:org.apache.httpcomponents:httpcore-osgi:jar:4.4.4"
+artifact_map[str(Label("@influxdb_java//jar"))] = "mvn:org.influxdb:influxdb-java:jar:2.9"
+artifact_map[str(Label("@retrofit//jar"))] = "mvn:com.squareup.retrofit2:retrofit:jar:2.3.0"
+artifact_map[str(Label("@converter_moshi//jar"))] = "mvn:com.squareup.retrofit2:converter-moshi:jar:2.3.0"
+artifact_map[str(Label("@okhttp//jar"))] = "mvn:com.squareup.okhttp3:okhttp:jar:3.9.1"
+artifact_map[str(Label("@logging_interceptor//jar"))] = "mvn:com.squareup.okhttp3:logging-interceptor:jar:3.9.1"
+artifact_map[str(Label("@moshi//jar"))] = "mvn:com.squareup.moshi:moshi:jar:1.4.0"
+artifact_map[str(Label("@okio//jar"))] = "mvn:com.squareup.okio:okio:jar:1.11.0"
+artifact_map[str(Label("@jackson_annotations//jar"))] = "mvn:com.fasterxml.jackson.core:jackson-annotations:jar:2.9.5"
+artifact_map[str(Label("@jackson_core//jar"))] = "mvn:com.fasterxml.jackson.core:jackson-core:jar:2.9.5"
+artifact_map[str(Label("@jackson_databind//jar"))] = "mvn:com.fasterxml.jackson.core:jackson-databind:jar:2.9.5"
+artifact_map[str(Label("@javax_annotation_api//jar"))] = "mvn:javax.annotation:javax.annotation-api:jar:1.2"
+artifact_map[str(Label("@javax_inject//jar"))] = "mvn:org.glassfish.hk2.external:javax.inject:jar:2.5.0-b42"
+artifact_map[str(Label("@javax_ws_rs_api//jar"))] = "mvn:javax.ws.rs:javax.ws.rs-api:jar:2.1"
+artifact_map[str(Label("@jersey_client//jar"))] = "mvn:org.glassfish.jersey.core:jersey-client:jar:2.26"
+artifact_map[str(Label("@jersey_security//jar"))] = "mvn:org.glassfish.jersey.security:oauth2-client:jar:2.26"
+artifact_map[str(Label("@jersey_common//jar"))] = "mvn:org.glassfish.jersey.core:jersey-common:jar:2.26"
+artifact_map[str(Label("@jersey_container_jetty_http//jar"))] = "mvn:org.glassfish.jersey.containers:jersey-container-jetty-http:jar:2.26"
+artifact_map[str(Label("@jersey_container_servlet//jar"))] = "mvn:org.glassfish.jersey.containers:jersey-container-servlet:jar:2.26"
+artifact_map[str(Label("@jersey_container_servlet_core//jar"))] = "mvn:org.glassfish.jersey.containers:jersey-container-servlet-core:jar:2.26"
+artifact_map[str(Label("@jersey_media_multipart//jar"))] = "mvn:org.glassfish.jersey.media:jersey-media-multipart:jar:2.26"
+artifact_map[str(Label("@jersey_server//jar"))] = "mvn:org.glassfish.jersey.core:jersey-server:jar:2.26"
+artifact_map[str(Label("@jersey_hk2//jar"))] = "mvn:org.glassfish.jersey.inject:jersey-hk2:jar:2.26"
+artifact_map[str(Label("@jersey_test_framework_core//jar"))] = "mvn:org.glassfish.jersey.test-framework:jersey-test-framework-core:jar:2.26"
+artifact_map[str(Label("@jersey_test_framework_jetty//jar"))] = "mvn:org.glassfish.jersey.test-framework.providers:jersey-test-framework-provider-jetty:jar:2.26"
+artifact_map[str(Label("@jetty_util//jar"))] = "mvn:org.eclipse.jetty:jetty-util:jar:9.2.21.v20170120"
+artifact_map[str(Label("@jetty_websocket//jar"))] = "mvn:org.eclipse.jetty:jetty-websocket:jar:8.1.19.v20160209"
+artifact_map[str(Label("@jetty_server//jar"))] = "mvn:org.eclipse.jetty:jetty-server:jar:9.2.21.v20170120"
+artifact_map[str(Label("@jetty_continuation//jar"))] = "mvn:org.eclipse.jetty:jetty-continuation:jar:9.2.21.v20170120"
+artifact_map[str(Label("@jetty_http//jar"))] = "mvn:org.eclipse.jetty:jetty-http:jar:9.2.21.v20170120"
+artifact_map[str(Label("@jetty_io//jar"))] = "mvn:org.eclipse.jetty:jetty-io:jar:9.2.21.v20170120"
+artifact_map[str(Label("@javax_servlet_api//jar"))] = "mvn:javax.servlet:javax.servlet-api:jar:3.1.0"
+artifact_map[str(Label("@joda_time//jar"))] = "mvn:joda-time:joda-time:jar:2.9.3"
+artifact_map[str(Label("@jsch//jar"))] = "mvn:com.jcraft:jsch:jar:0.1.53"
+artifact_map[str(Label("@jsr305//jar"))] = "mvn:com.google.code.findbugs:jsr305:jar:3.0.1"
+artifact_map[str(Label("@junit//jar"))] = "mvn:junit:junit:jar:4.12"
+artifact_map[str(Label("@junit_dep//jar"))] = "mvn:junit:junit:jar:4.10"
+artifact_map[str(Label("@kryo//jar"))] = "mvn:com.esotericsoftware:kryo:jar:4.0.1"
+artifact_map[str(Label("@mapdb//jar"))] = "mvn:org.mapdb:mapdb:jar:1.0.9"
+artifact_map[str(Label("@metrics_core//jar"))] = "mvn:io.dropwizard.metrics:metrics-core:jar:3.2.2"
+artifact_map[str(Label("@metrics_ganglia//jar"))] = "mvn:io.dropwizard.metrics:metrics-ganglia:jar:3.2.2"
+artifact_map[str(Label("@metrics_graphite//jar"))] = "mvn:io.dropwizard.metrics:metrics-graphite:jar:3.2.2"
+artifact_map[str(Label("@metrics_influxdb//jar"))] = "mvn:com.izettle:metrics-influxdb:jar:1.1.1"
+artifact_map[str(Label("@metrics_json//jar"))] = "mvn:io.dropwizard.metrics:metrics-json:jar:3.2.2"
+artifact_map[str(Label("@minimal_json//jar"))] = "mvn:com.eclipsesource.minimal-json:minimal-json:jar:0.9.4"
+artifact_map[str(Label("@minlog//jar"))] = "mvn:com.esotericsoftware:minlog:jar:1.3.0"
+artifact_map[str(Label("@netty//jar"))] = "mvn:io.netty:netty:jar:3.10.5.Final"
+artifact_map[str(Label("@netty_buffer//jar"))] = "mvn:io.netty:netty-buffer:jar:4.1.8.Final"
+artifact_map[str(Label("@netty_codec//jar"))] = "mvn:io.netty:netty-codec:jar:4.1.8.Final"
+artifact_map[str(Label("@netty_common//jar"))] = "mvn:io.netty:netty-common:jar:4.1.8.Final"
+artifact_map[str(Label("@netty_handler//jar"))] = "mvn:io.netty:netty-handler:jar:4.1.8.Final"
+artifact_map[str(Label("@netty_transport//jar"))] = "mvn:io.netty:netty-transport:jar:4.1.8.Final"
+artifact_map[str(Label("@netty_transport_native_epoll//jar"))] = "mvn:io.netty:netty-transport-native-epoll:jar:4.1.8.Final"
+artifact_map[str(Label("@netty_resolver//jar"))] = "mvn:io.netty:netty-resolver:jar:4.1.8.Final"
+artifact_map[str(Label("@netty_codec_http2//jar"))] = "mvn:io.netty:netty-codec-http2:jar:4.1.8.Final"
+artifact_map[str(Label("@netty_codec_http//jar"))] = "mvn:io.netty:netty-codec-http:jar:4.1.8.Final"
+artifact_map[str(Label("@objenesis//jar"))] = "mvn:org.objenesis:objenesis:jar:2.6"
+artifact_map[str(Label("@openflowj//jar"))] = "mvn:org.onosproject:openflowj:jar:3.2.1.onos"
+artifact_map[str(Label("@org_apache_felix_framework_security//jar"))] = "mvn:org.onosproject:org.apache.felix.framework.security:jar:2.2.0.onos"
+artifact_map[str(Label("@org_apache_felix_scr//jar"))] = "mvn:org.apache.felix:org.apache.felix.scr:jar:1.8.2"
+artifact_map[str(Label("@org_apache_felix_scr_annotations//jar"))] = "mvn:org.apache.felix:org.apache.felix.scr.annotations:jar:1.9.12"
+artifact_map[str(Label("@org_apache_karaf_features_core//jar"))] = "mvn:org.apache.karaf.features:org.apache.karaf.features.core:jar:3.0.8"
+artifact_map[str(Label("@org_apache_karaf_shell_console//jar"))] = "mvn:org.apache.karaf.shell:org.apache.karaf.shell.console:jar:3.0.8"
+artifact_map[str(Label("@org_apache_httpcomponents_httpasyncclient_osgi//jar"))] = "mvn:org.apache.httpcomponents:httpasyncclient-osgi:jar:4.1.2"
+artifact_map[str(Label("@org_apache_httpcomponents_httpcore_nio//jar"))] = "mvn:org.apache.httpcomponents:httpcore-nio:jar:4.4.4"
+artifact_map[str(Label("@org_apache_karaf_jaas//jar"))] = "mvn:org.apache.karaf.jaas:org.apache.karaf.jaas.modules:jar:3.0.8"
+artifact_map[str(Label("@org_apache_karaf_system_core//jar"))] = "mvn:org.apache.karaf.system:org.apache.karaf.system.core:jar:3.0.8"
+artifact_map[str(Label("@org_apache_servicemix_bundles_snmp4j//jar"))] = "mvn:org.apache.servicemix.bundles:org.apache.servicemix.bundles.snmp4j:jar:2.3.4_1"
+artifact_map[str(Label("@org_osgi_compendium//jar"))] = "mvn:org.osgi:org.osgi.compendium:jar:5.0.0"
+artifact_map[str(Label("@osgi_core//jar"))] = "mvn:org.osgi:org.osgi.core:jar:5.0.0"
+artifact_map[str(Label("@reflectasm//jar"))] = "mvn:com.esotericsoftware:reflectasm:jar:1.11.0"
+artifact_map[str(Label("@remotetea_oncrpc//jar"))] = "mvn:org.acplt.remotetea:remotetea-oncrpc:jar:1.1.3"
+artifact_map[str(Label("@rrd4j//jar"))] = "mvn:org.rrd4j:rrd4j:jar:3.1"
+artifact_map[str(Label("@javassist//jar"))] = "mvn:org.javassist:javassist:jar:3.22.0-GA"
+artifact_map[str(Label("@mimepull//jar"))] = "mvn:org.jvnet.mimepull:mimepull:jar:1.9.6"
+artifact_map[str(Label("@servlet_api//jar"))] = "mvn:javax.servlet:servlet-api:jar:2.5"
+artifact_map[str(Label("@slf4j_api//jar"))] = "mvn:org.slf4j:slf4j-api:jar:1.7.25"
+artifact_map[str(Label("@slf4j_jdk14//jar"))] = "mvn:org.slf4j:slf4j-jdk14:jar:1.7.25"
+artifact_map[str(Label("@typesafe_config//jar"))] = "mvn:com.typesafe:config:jar:1.2.1"
+artifact_map[str(Label("@validation_api//jar"))] = "mvn:javax.validation:validation-api:jar:1.1.0.Final"
+artifact_map[str(Label("@checkstyle//jar"))] = "mvn:com.puppycrawl.tools:checkstyle:jar:8.10"
+artifact_map[str(Label("@apache_karaf//jar"))] = "mvn:org.onosproject:apache-karaf-offline:tar.gz:3.0.8"
+artifact_map[str(Label("@apache_karaf_patches//jar"))] = "mvn:org.onosproject:onos-apache-karaf-patches:tar.gz:3.0.8"
+artifact_map[str(Label("@bndlib//jar"))] = "mvn:biz.aQute.bnd:biz.aQute.bndlib:jar:3.1.0"
+artifact_map[str(Label("@bndexe//jar"))] = "mvn:biz.aQute.bnd:biz.aQute.bnd:jar:3.1.0"
+artifact_map[str(Label("@libthrift//jar"))] = "mvn:org.apache.thrift:libthrift:jar:0.9.3"
+artifact_map[str(Label("@qdox//jar"))] = "mvn:com.thoughtworks.qdox:qdox:jar:2.0-M3"
+artifact_map[str(Label("@org_apache_felix_scr_bnd//jar"))] = "https://oss.sonatype.org/content/repositories/snapshots/org/onosproject/org.apache.felix.scr.bnd/1.4.1-SNAPSHOT/org.apache.felix.scr.bnd-1.4.1-20160328.235003-2.jar"
+artifact_map[str(Label("@snmp_core//jar"))] = "mvn:org.onosproject:snmp-core:jar:1.3-20161021.1"
+artifact_map[str(Label("@mibs_net_snmp//jar"))] = "mvn:org.onosproject:mibbler-mibs-net-snmp:jar:1.0-20151221.1"
+artifact_map[str(Label("@mibs_rfc//jar"))] = "mvn:org.onosproject:mibbler-mibs-rfc:jar:1.0-20151221.1"
+artifact_map[str(Label("@openstack4j_core//jar"))] = "mvn:org.pacesys:openstack4j-core:jar:3.1.0"
+artifact_map[str(Label("@openstack4j_http_connector//jar"))] = "mvn:org.pacesys.openstack4j.connectors:openstack4j-http-connector:jar:3.1.0"
+artifact_map[str(Label("@openstack4j_httpclient//jar"))] = "mvn:org.pacesys.openstack4j.connectors:openstack4j-httpclient:jar:3.1.0"
+artifact_map[str(Label("@json_patch//jar"))] = "mvn:com.github.fge:json-patch:jar:1.9"
+artifact_map[str(Label("@jackson_coreutils//jar"))] = "mvn:com.github.fge:jackson-coreutils:jar:1.6"
+artifact_map[str(Label("@btf//jar"))] = "mvn:com.github.fge:btf:jar:1.2"
+artifact_map[str(Label("@msg_simple//jar"))] = "mvn:com.github.fge:msg-simple:jar:1.1"
+artifact_map[str(Label("@snakeyaml//jar"))] = "mvn:org.yaml:snakeyaml:jar:1.15"
+artifact_map[str(Label("@onos_yang_model//jar"))] = "mvn:org.onosproject:onos-yang-model:jar:2.4.7"
+artifact_map[str(Label("@onos_yang_compiler_api//jar"))] = "mvn:org.onosproject:onos-yang-compiler-api:jar:2.4.7"
+artifact_map[str(Label("@onos_yang_runtime//jar"))] = "mvn:org.onosproject:onos-yang-runtime:jar:2.4.7"
+artifact_map[str(Label("@onos_yang_serializers_json//jar"))] = "mvn:org.onosproject:onos-yang-serializers-json:jar:2.4.7"
+artifact_map[str(Label("@onos_yang_serializers_xml//jar"))] = "mvn:org.onosproject:onos-yang-serializers-xml:jar:2.4.7"
+artifact_map[str(Label("@onos_yang_serializers_utils//jar"))] = "mvn:org.onosproject:onos-yang-serializers-utils:jar:2.4.7"
+artifact_map[str(Label("@org_apache_servicemix_bundles_dom4j//jar"))] = "mvn:org.apache.servicemix.bundles:org.apache.servicemix.bundles.dom4j:jar:1.6.1_5"
+artifact_map[str(Label("@plexus_utils//jar"))] = "mvn:org.codehaus.plexus:plexus-utils:jar:3.0.24"
+artifact_map[str(Label("@sshd_core//jar"))] = "mvn:org.apache.sshd:sshd-core:jar:1.4.0"
+artifact_map[str(Label("@grpc_core_1_3_1//jar"))] = "mvn:io.grpc:grpc-core:jar:1.3.1"
+artifact_map[str(Label("@grpc_protobuf_1_3_1//jar"))] = "mvn:io.grpc:grpc-protobuf:jar:1.3.1"
+artifact_map[str(Label("@grpc_protobuf_lite_1_3_1//jar"))] = "mvn:io.grpc:grpc-protobuf-lite:jar:1.3.1"
+artifact_map[str(Label("@grpc_stub_1_3_1//jar"))] = "mvn:io.grpc:grpc-stub:jar:1.3.1"
+artifact_map[str(Label("@grpc_netty_1_3_1//jar"))] = "mvn:io.grpc:grpc-netty:jar:1.3.1"
+artifact_map[str(Label("@grpc_auth_1_3_1//jar"))] = "mvn:io.grpc:grpc-auth:jar:1.3.1"
+artifact_map[str(Label("@protobuf_java_3_3_0//jar"))] = "mvn:com.google.protobuf:protobuf-java:jar:3.3.0"
+artifact_map[str(Label("@protobuf_java_3_2_0//jar"))] = "mvn:com.google.protobuf:protobuf-java:jar:3.2.0"
+artifact_map[str(Label("@grpc_testing_1_3_1//jar"))] = "mvn:io.grpc:grpc-testing:jar:1.3.1"
+artifact_map[str(Label("@grpc_testing_proto_1_3_1//jar"))] = "mvn:io.grpc:grpc-testing-proto:jar:1.3.1"
+artifact_map[str(Label("@grpc_context_1_3_1//jar"))] = "mvn:io.grpc:grpc-context:jar:1.3.1"
+artifact_map[str(Label("@google_truth_0_28//jar"))] = "mvn:com.google.truth:truth:jar:0.28"
+artifact_map[str(Label("@google_code_findbugs_3_0_0//jar"))] = "mvn:com.google.code.findbugs:jsr305:jar:3.0.0"
+artifact_map[str(Label("@google_errorprone_2_0_19//jar"))] = "mvn:com.google.errorprone:error_prone_annotations:jar:2.0.19"
+artifact_map[str(Label("@google_instrumentation_0_3_0//jar"))] = "mvn:com.google.instrumentation:instrumentation-api:jar:0.3.0"
+artifact_map[str(Label("@bcpkix_jdk15on//jar"))] = "mvn:org.bouncycastle:bcpkix-jdk15on:jar:1.59"
+artifact_map[str(Label("@bcprov_jdk15on//jar"))] = "mvn:org.bouncycastle:bcprov-jdk15on:jar:1.59"
+artifact_map[str(Label("@hamcrest_optional//jar"))] = "mvn:com.spotify:hamcrest-optional:jar:1.1.0"
+artifact_map[str(Label("@swagger_annotations//jar"))] = "mvn:io.swagger:swagger-annotations:jar:1.5.16"
+artifact_map[str(Label("@kafka_clients//jar"))] = "mvn:org.apache.servicemix.bundles:org.apache.servicemix.bundles.kafka-clients:jar:0.8.2.2_1"
+artifact_map[str(Label("@tinder_xmpp//jar"))] = "mvn:org.igniterealtime:tinder:jar:1.3.0"
+artifact_map[str(Label("@aalto_xml//jar"))] = "mvn:com.fasterxml:aalto-xml:jar:1.0.0"
+artifact_map[str(Label("@stax2_api//jar"))] = "mvn:org.codehaus.woodstox:stax2-api:jar:4.0.0"
+artifact_map[str(Label("@concurrent_hashmap//jar"))] = "mvn:com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru:jar:1.0"
+artifact_map[str(Label("@gnu_idn//jar"))] = "mvn:org.gnu.inet:libidn:jar:1.15"
+artifact_map[str(Label("@sigar//jar"))] = "mvn:org.knowhowlab.osgi:sigar:jar:1.6.5_01"
+
+def maven_coordinates(label):
+    label_string = str(label)
+    if label_string in artifact_map:
+        return artifact_map[label_string]
+    else:
+        return "%s:%s:%s" % (ONOS_GROUP_ID, label.name, ONOS_VERSION)
diff --git a/tools/build/bazel/variables.bzl b/tools/build/bazel/variables.bzl
index 74b526e..ee80f7a 100644
--- a/tools/build/bazel/variables.bzl
+++ b/tools/build/bazel/variables.bzl
@@ -1 +1,2 @@
 ONOS_VERSION = "1.14.0-SNAPSHOT"
+ONOS_GROUP_ID = "org.onosproject"
diff --git a/tools/build/libgen/src/main/java/org/onosproject/libgen/BuckArtifact.java b/tools/build/libgen/src/main/java/org/onosproject/libgen/BuckArtifact.java
index d0257e4..b2c7f15 100644
--- a/tools/build/libgen/src/main/java/org/onosproject/libgen/BuckArtifact.java
+++ b/tools/build/libgen/src/main/java/org/onosproject/libgen/BuckArtifact.java
@@ -79,6 +79,10 @@
         return null;
     }
 
+    String bazelExport() {
+        return "@" + jarTarget() + "//jar";
+    }
+
     private boolean isJar() {
         return fileName().endsWith(".jar");
     }
diff --git a/tools/build/libgen/src/main/java/org/onosproject/libgen/BuckLibGenerator.java b/tools/build/libgen/src/main/java/org/onosproject/libgen/BuckLibGenerator.java
index 7ba4ca5..070572a 100644
--- a/tools/build/libgen/src/main/java/org/onosproject/libgen/BuckLibGenerator.java
+++ b/tools/build/libgen/src/main/java/org/onosproject/libgen/BuckLibGenerator.java
@@ -197,6 +197,25 @@
         return sb.toString();
     }
 
+    private String generateArtifactMap() {
+        StringBuilder artifactMap = new StringBuilder();
+
+        artifactMap.append("\nartifact_map = {}");
+
+        artifacts.forEach(artifact -> {
+            artifactMap.append("\nartifact_map[str(Label(\"" + artifact.bazelExport() + "\"))] = \"" + artifact.url() + "\"");
+        });
+
+        artifactMap.append("\n\ndef maven_coordinates(label):\n" +
+                "    label_string = str(label)\n" +
+                "    if label_string in artifact_map:\n" +
+                "        return artifact_map[label_string]\n" +
+                "    else:\n" +
+                "        return \"%s:%s:%s\" % (ONOS_GROUP_ID, label.name, ONOS_VERSION)\n");
+
+        return artifactMap.toString();
+    }
+
     void write(String outputFilePath) {
         DateTimeFormatter formatter = DateTimeFormatter.RFC_1123_DATE_TIME.withZone(ZoneId.of("UTC"));
         File outputFile = new File(outputFilePath);
@@ -218,10 +237,15 @@
                         "    out = 'onos-dependencies.pom',\n" +
                         "    artifactId = 'onos-dependencies',\n" +
                         ")\n\n");
+            } else {
+                writer.write("\nload(\"//tools/build/bazel:variables.bzl\", \"ONOS_GROUP_ID\", \"ONOS_VERSION\")\n");
             }
 
             libraries.forEach(library -> writer.print(library.getFragment()));
             writer.print(generateArtifacts());
+            if (generateForBazel) {
+                writer.print(generateArtifactMap());
+            }
             writer.flush();
         } catch (FileNotFoundException e) {
             error("File not found: %s", outputFilePath);
