23 Commits

Author SHA1 Message Date
Carmelo Cascone
27b9712f3a Revamp support for building third-party apps via maven
- Publish onos-dependencies (autogenerated from deps.json). With most
  3rd-party dependencies listed as <dependencyManagement> to avoid
  version conflicts, and a minimal set listed as <dependencies> to
  simplify child poms. Similarly, we provide a number of plugins already
  configured as <pluginManagement> to support the whole life-cycle of
  apps (from build, to reporting and release).
- Update Maven plugins to work with JDK 11 (checkstyle, pmd, etc.)
- Publish onos-build-conf (with common checkstyle and pmd confs)
- Removed unused checkstyle code
- Fix OSGi version mismatch in deps.json to consistently depend on
  release 6 (the one supported by Karaf 4)
- Update/simplify archetypes to use onos-dependencies as the parent pom

Change-Id: Ic09b34e13fb49eb3d96df623b53a3617bbf7b7e4
2019-11-18 23:58:27 +00:00
Carmelo Cascone
356ab8b479 Support creation of vendor-specific versions of the fabric pipeconf
We provide a new service to facilitate registration of vendor-specific
versions of the Fabric pipeconf (e.g., for Tofino) from third-party
apps. This service is designed such that third-party apps do not need to
depend on internal classes at compile time, such as the behaviour
implementations.

To make this possible, the package structure has been refactored to
separate APIs from implementation.

Change-Id: I487cb806541eb9e6877ebf398a94f057613df8cc
(cherry picked from commit 36d5e7a2337c242e45ee57beacd82bba07a0851d)
2019-10-23 17:54:58 +00:00
Ray Milkey
16c822bb90 Add the multicast app artifact to the publish list
Change-Id: I6bce2012665acda8cceb40e5543e2316ebf5eff6
2019-07-02 12:25:27 -07:00
Carmelo Cascone
9c16aabc07 Fix publish-target-list using old "//libs" instead of "//deps"
Also force python2 as the interpreter of Python scripts invoked by Bazel

Change-Id: I780599f58b1d29d2ccf54c73719ac6f93059c1cc
2019-07-01 13:21:01 -07:00
Carmelo Cascone
b9536696f6 First attempt at supporting builds with Java 11
Includes:
- Bump protobuf to 3.8.0 and grpc-java to 1.21.0 (along with transitive
  dependencies such as Netty)
- Add jaxb_api at compile time when needed (removed in JDK 11)
- Bump Bnd to 4.1 (adds support for Java 11)

To build with JDK 11, uncomment lines in .bazelrc.
Tested with Bazel 0.26.0.

Change-Id: Ib8e0c7310eacf97328762606e57c01e4834e5565
2019-05-30 18:11:06 +00:00
Ray Milkey
67ba8a6bf6 add VPLS API jar file to published artifacts
Change-Id: I88e8a3aa724734827e3f271112d3b93112c935b9
2019-04-30 17:00:48 +00:00
Carmelo Cascone
c0b23a459f Allow building third-party apps based on gRPC
By publishing the repackaged grpc and protobuf artifacts

Change-Id: Ib3af7dba4f64948132aa70be31922de61d6f6ab2
2019-04-25 15:38:00 -07:00
Carmelo Cascone
5cc45bcb63 Publish P4Runtime-related protocol artifacts
Needed to build third-party apps using maven

Change-Id: I3893848320dcd2f17981aff4354612cfc2508a46
2019-04-12 17:56:14 +00:00
Ray Milkey
bb132d63c4 Add default driver package to published artifacts
Change-Id: Ia0221f7f3207fa94d5533d9ce136dd61db9bb7b6
2019-01-03 22:26:24 +00:00
Thomas Vachuska
52f2cd1520 Detangling incubator: virtual nets, tunnels, resource labels, oh my
- virtual networking moved to /apps/virtual; with CLI & REST API
- tunnels and labels moved to /apps/tunnel; with CLI & REST API; UI disabled for now
- protobuf/models moved to /core/protobuf/models
- defunct grpc/rpc registry stuff left under /graveyard
- compile dependencies on /incubator moved to respective modules for compilation
- run-time dependencies will need to be re-tested for dependent apps

- /graveyard will be removed in not-too-distant future

Change-Id: I0a0b995c635487edcf95a352f50dd162186b0b39
2018-11-13 22:14:50 +00:00
Thomas Vachuska
24b51f929e Fixing publish target list typo.
Change-Id: I36ca382c9795e472a625d803707c967cb04613ae
2018-11-01 20:39:38 +00:00
Ray Milkey
d84f89ba3d [WIP] Upgrade ONOS to karaf version 4.2.1
Change-Id: I7cd40c995bdf1c80f94b1895fb3344e32404c7fa
2018-09-28 11:20:57 -07:00
Ray Milkey
5baceb807f Add intent sync and route related API bundles to lists of published artifacts
Change-Id: I82d9c7688be5c04ab98ed828c45a91538f5a1c2f
2018-02-28 15:53:12 -08:00
Pier Luigi
f34dda78b2 Removing pcep api from publish-target-list
Change-Id: Ib4d16c970729688f0bec234b41bc59035332cbdc
2017-08-28 17:15:27 +00:00
Ray Milkey
52c829a9ff Remove dead target from publishing list
Change-Id: I327a0c00f9f5c36272e3503456ec2714ed2736db
2017-08-11 16:09:50 -07:00
Ray Milkey
69ec87142c Move routing from incubator to a separate app
Change-Id: I961d10af99c572b1f8d9b3d37c6f52dd04422007
2017-08-10 10:55:01 -07:00
Ray Milkey
a1f77d2332 Add APIs for protocols to list of artifacts published to Maven Central
Change-Id: I34e4193bc5317a94608becec66ff3def9a055113
2017-06-30 16:21:06 +00:00
Ray Milkey
69c87ebe5f Add OVSDB APIs to list of published artifacts
Change-Id: I8171091eb12e54bddf0197c2abec75346efb7cd2
2017-06-30 00:29:06 +00:00
Harold Huang
5db4841ad0 Fix a bug of onos-buck-publish-local
Change-Id: Ib8d26581a27915f8413cb82eb0d9f66dd1061626
2017-06-08 22:14:42 +08:00
Ray Milkey
2d572dd363 Use buck version of checkstyle rules in maven build
- build and package the checkstyle rules in the onos-build-conf artifact
- modify maven build to use new version of artifact
- fix checkstyle problems in maven-only code

Change-Id: I4e4dc890ca909e47463629c732a2fc5335bb4d2a
2017-05-04 16:03:51 +00:00
Andrea Campanella
6dc17227bd Adding new-optical to the publiches targets for carrier-ethernet app needs
Change-Id: I3d19b9cac60b2fec7d439403feb40dbaa432859d
2017-04-12 20:31:49 +00:00
Ray Milkey
fc78fd7466 Add routing app API to list of published artifacts
Change-Id: Ic24405e4d516536e30b404d5f9a6b7d84cd06608
2017-03-09 11:27:21 -08:00
Ray Milkey
f3aba5f665 Only push maven artifacts that are useful to external apps
Change-Id: I87e077334c69402f0e178aceb14116597760f351
2017-01-19 20:26:42 +00:00