You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 31 Next »

Note: the artifacts on this page (git_recurse.sh and pom.xml) should not be here - they are here temporarily until they get added to a formal E2E root project on gerrit in proper source control.  For now a couple of us needed to get "ALL" the code and build it to get an end to end feel for the ONAP system as a whole - and to reverse engineer it.

You can build most of the projects directly in IntelliJ - but everything can be built using a root pom.xml example (docker is required for dcae-inventory).  Ideally we would all run a standardized vagrant development environment (running the same versions of grunt/node/npn/bower, jdk etc).

Setup your environment first (OSX, RHEL, Ubuntu or Windows) - Setting Up Your Development Environment

Warnings

Pending requests

COMMON-17 - Getting issue details... STATUS

COMMON-18 - Getting issue details... STATUS

PORTAL-8 - Getting issue details... STATUS

Procedure

  • create a root directory like "onap"
  • copy the sh script there
  • run the sh script
  • notice the directory structure with embedded repos
  • copy the root pom.xml
  • maven build with the root pom
  • there will be a couple projects that may not build due to your settings.xml repos, the state of a couple of the projects, whether you have docker running - see the developer pages to make sure you are setup
    ONAP Developer Checklist
    Setting Up Your Development Environment

Clone/pull all repos sh script

This script serves 3 purposes

1) ssh clone all ONAP repos (those of us with unrestricted internet access)

2) https clone all the ONAP repos (for those behind a fireall)

3) pull all repos - refreshing them in a close to an atomic pull as possible.

Use:

pass in the command clone|pull and your onap gerrit id (note oam repo is the largest at 0.8Gb transferred at 6Mb/sec)

./git_recurse.sh clone <your_gerrit_username>

clone by https for those behind a firewall

./git_recurse.sh clone_https michaelobrien uHaBPMvR47mocSbB3YnK56EB1RR3Keer6vatj5555555555

to refresh project within a 5 min window

TODO: checkout branch and merge master into branch

Version 20170531 git clone by ssh or https

git_recurse.sh

Todo move to private branch or JIRA to be under source control -  COMMON-18 - Getting issue details... STATUS



Root pom.xml

version 1.1.2-SNAPSHOT

Place this pom.xml at the root of where you ran the git_recurse.sh (on top of all the repos) - it expects the same directory structure as setup in gerrit.

This is a root reactor pom.xml that can be used to build all or parts of onap

Some repos like dcae-inventory will require docker installed to build the images.

for speed build with all 5 repos in (~.m2/settings.xml) and the maven options below (no tests and no test compilation) - and try to get a 8-12 thread machine and most importantly a fast SSD - or use a Mac.

obrienbiometrics:core michaelobrien$ mvn clean install -U -DskipTests=true -Dmaven.test.skip=true -Dmaven.javadoc.skip=true

-Dadditionalparam=-Xdoclint:none


pom.xml

Known Issues in progress

Last run 20170614

Try to develop in OSX - it has the least issues when building ONAP in its entirety.

There are issues with some of the projects (primarily in windows - like DCAE attempting to reinstall npn) - these may be due to the fact I am still ramping up on ONAP and have not done a full in-depth review of each project.  Where available I have commented on the reason why a particular project is failing its local build (all should build fine in CI).  Some compile issues were recently fixed since May 12th when I started building ONAP.

Some builds are only meant for deployment (a result of uisng mvn install) like appc - you may want to comment this one unless you are modifying it (run off artifacts).

replace /Users/michaelobrien/wse_onap/onap7/appc/deployment/installation/appc/target/docker-stage/opt/openecomp/appc/svclogic/graphs/appc/graph.versions? [y]es, [n]o, [A]ll, [N]one, [r]ename: error:  invalid response [{ENTER}]



   <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.onap</groupId>
  <artifactId>org.onap</artifactId>
  <version>1.1.2-SNAPSHOT</version>
  <packaging>pom</packaging>
  <name>onap.root</name>
  <url>http://maven.apache.org</url>

  <modules>

    <module>aai/aai-common</module> <!-- needs yang exclude -->

    <module>aai/aai-service</module>

    <module>aai/logging-service</module>

    <module>aai/model-loader</module>

    <module>aai/rest-client</module> <!-- include the onap staging nexus repo for common-logging:jar:1.0.0, org.openecomp.aai.logging-service:eelf-logging:jar:1.0.0, org.openecomp.aai.logging-service:logging-api:jar:1.0.0 -->

    <module>aai/router-core</module>

<module>aai/search-data-service</module>

<!--module>appc/deployment</module--> <!-- manual override input required on  win/osx - but not RHEL -->

    <module>dcae/apod/analytics</module>

    <module>dcae/collectors/ves</module> <!-- https://wiki.opnfv.org/display/PROJ/VNF+Event+Stream -->

    <module>dcae/controller/analytics</module>

    <module>dcae/controller/dcae-controller-core</module>

    <module>dcae/controller/dcae-controller-service/dcae-controller-service-dmaap-drsub</module>

    <module>dcae/controller/dcae-controller-service-cdap</module>

    <module>dcae/controller/dcae-controller-service-docker</module>

    <module>dcae/controller/dcae-controller-service-vm</module>

    <module>dcae/dcae-inventory</module>

    <module>dcae/demo</module>

    <module>dcae/dmaapbc</module>

    <module>dcae/operation/utils</module> <!-- emf fixed by onap public repo -->

    <!--module>demo</module--> <!-- error in parent refs in sample_plugin -->

    <module>ecompsdkos/ecomp-sdk</module>

    <!--module>ecompsdkos/ecomp-sdk/epsdk-app-os</module--> <!-- until PORTAL-8 -->

    <module>mso</module>

    <module>ncomp/cdap</module> <!-- emf resolution -->

    <module>ncomp/core</module>

    <module>ncomp/docker</module>

    <module>ncomp/maven</module>

    <module>ncomp/openstack</module>

    <module>ncomp/utils</module>

    <module>policy/common</module>

    <module>policy/docker</module>

    <module>policy/drools-applications</module>

    <module>policy/drools-pdp</module>

    <module>policy/engine</module>

    <module>portal/ecomp-portal-FE-common</module> <!-- parent not referenced -->

    <module>portal</module>

<!--module>sdc</module--> <!-- breakout root project--><!-- in catalog-be org/openrdf/sesame/sesame-rio-rdfjson/2.7.10/sesame-rio-rdfjson-2.7.10.jar; error in opening zip file-->

<!-- in onboarding-ui-war of sdc/openecomp-ui onboarding-fe: Process: /tmp/nodejs/node-v7.5.0-darwin-x64/bin/node /tmp/nodejs/node_modules/webpack/bin/webpack terminated with 255-->


<module>sdc/security-utils</module>

<module>sdc/common-app-api</module>

<module>sdc/common-be</module>

<module>sdc/catalog-dao</module>

<module>sdc/catalog-model</module>

<module>sdc/catalog-be</module>

<module>sdc/asdctool</module>

<module>sdc/catalog-ui</module> <!-- RHEL issues: Could not find artifact org.openecomp.sdc:test-apis-ci:jar:1.1.0-SNAPSHOT in 70_opendaylight-snapshot -->

<module>sdc/catalog-fe</module>

<module>sdc/asdc-tests</module>

<module>sdc/ui-ci</module> <!-- RHEL issues: Could not find artifact org.openecomp.sdc:test-apis-ci:jar:1.1.0-SNAPSHOT in 70_opendaylight-snapshot -->

<module>sdc/openecomp-be</module>

<!--module>sdc/openecomp-ui</module--> <!--onboarding-fe: Process: /tmp/nodejs/node-v7.5.0-darwin-x64/bin/node /tmp/nodejs/node_modules/webpack/bin/webpack terminated with 255-->

<module>sdc/sdc-os-chef</module>

<module>sdnc/adaptors</module> <!-- RHEL only - sdnc/sli/aai/AAIClient.java:30  in sdnc/core/sliPluginUtils-->

<module>sdnc/core</module> <!-- RHEL only - Felix issues in sdnc/core/slapi/provider  and sdnc/core/sli/provider-->

    <module>sdnc/northbound</module> <!-- RHEL only - package org.opendaylight.controller.config.spi na -->

    <module>sdnc/oam</module>

    <module>sdnc/plugins</module><!-- RHEL only - package org.codehaus.jettison.json does not exist -->

    <module>ui/dmaapbc</module>

    <module>vid</module>

  </modules>

</project>


A nice vagrant based orchestration of ONAP from Victor - https://github.com/electrocucaracha/vagrant-onap

  • No labels