Therepo sync' command synchronizes local project directories with the remote repositories specified in the manifest. If a local project does not yet exist, it will clone a new local directory from the remote repository and set up tracking branches as specified in the manifest. If the local project already exists, 'repo sync' will update the remote branches and rebase any new local changes on top of the new remote changes.
'repo sync' will synchronize all projects listed at the command line. Projects can be specified either by name, or by a relative or absolute path to the project's local directory. If no projects are specified, 'repo sync' will synchronize all projects listed in the manifest.
The -d/--detach option can be used to switch specified projects back to the manifest revision. This option is especially helpful if the project is currently on a topic branch, but the manifest revision is temporarily needed.
The -s/--smart-sync option can be used to sync to a known good build as specified by the manifest-server element in the current manifest. The -t/--smart-tag option is similar and allows you to specify a custom tag/label.
The --force-sync option can be used to overwrite existing git directories if they have previously been linked to a different object directory. WARNING: This may cause data to be lost since refs may be removed when overwriting.
The --force-remove-dirty option can be used to remove previously used projects with uncommitted changes. WARNING: This may cause data to be lost since uncommitted changes may be removed with projects that no longer exist in the manifest.
The --no-clone-bundle option disables any attempt to use $URL/clone.bundle to bootstrap a new Git repository from a resumeable bundle file on a content delivery network. This may be necessary if there are problems with the local Python HTTP client or proxy configuration, but the Git binary works.
If at least one project remote URL uses an SSH connection (ssh://, git+ssh://, or user@host:path syntax) repo will automatically enable the SSH ControlMaster option when connecting to that host. This feature permits other projects in the same 'repo sync' session to reuse the same SSH tunnel, saving connection setup overheads.
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).
4) we currently cannot use an automated script around the following because a 1.0/1.1 filter/metadata is missing - also the directory structure differs for repos (some have a root repo, others are parent-less peers)
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.
Yes, currently kind of hacky project creation script (needed a way to clone/pull everything) because the projects in onap are all different, some have a root project, others need the developer to create a root dir - the sh script creates the directories as it clones the projects. This directory structure will likely radically change when the proposed projects from May start coming into gerrit.
Follow the versions mentioned in Setting Up Your Development Environment If you see something missing you can edit the page - buddy ONAP is currently in startup mode and most everything is still in flux and POC mode - this is an exciting time - welcome!
Yes, go ahead - everything here is open for improvement - I am a minimal sh script writer (I am a java dev) - two of the arrays need to be merged - I would have put it up on my but I think we should keep everything possible in onap - either in a private branch, the resources page or on the JIRA itself.
The only issue with this is the tree structure in current ONAP repo isn't perfect. For instance, you could have parent project containing some code. So children projects will end up in the parent project folder, messing up your local git repo...
Kanchan, errors on clean are usually locked files only - an .m2 clean should fix corrupted jars. can you build without cleaning? I haven't refreshed in a couple days - I'll rebuild one of my views and get back to you later today.
1.0.0 and 1-1-0-SNAPSHOT were relatively equal at least until a month ago. Since the introduction of R1 repos there are several questions on old, repurposed, new repos and how we build R1 and also build 1.1-0-SNAPSHOT. If you stick to 1.0.0 then the existing root pom and git_recurse.sh should work fine.
I get the usual dcae-inventory issue (1.0.0). Also, there are compile issues periodically - we can only workaround dependency resolution issues (do you have your m2 settings.xml referencing all the nexus repos).
Note: the root pom.xml is still configured for the old 1.1.0-SNAPSHOT master - you will need to the new evolving pom.xml as repos for 1.1 come in - specifically for repos that are repurposed for 1.1 like aai (but not dcae)
Regarding the compilation. I see you upload the new git_recurse.sh and root pom.xml in github -root. I start to use them, and the compilation goes a little bit further, but I get some problem of dcae_inventory. I have try to switch between 1.1/R1 and 1.1.0-SNAPSHOT by comment out/in the module in root pom.xml. However both way get the issue
Regarding the source code version. How can I go back to old version(1.1.0-SNAPSHOT or 1.0.0)? I have downloaded the code with latest git-recurse.sh script in -root, and checked few ONAP component but did not find the git tag or log with version information.
For release tagging - I also have this issue. You may noticed that not all projects are tagged - i have not found any - but there are some branched repos - for example the demo project has an "origin/release-1.0.0" branch.
For the DCAE ODL artifact error - I have seen issues with the ODL repositories and older versions of mvn - make sure you are past 3.3.3 - as there is an SSL fix that ODL needs - on the small chance this is your issue.
Hi Michael O'Brien I am new to ONAP. Recently I just set up only the onap portal in my windows machine and could able to run the application locally with maria db (installed on windows 7) and tomcat 8.5. I could login with admin also. In the home page application catalog tab, I could able to see widgets like policy, SDC etc. Now when I try to click on any of the widget for example SDC. it takes me to a new tab SDC saying "
sdc.openecomp.org's server DNS address could not be found. How can I make this work ? Do I need to connect to the sdc mS running on any remote VM ?? if yes, can you please share some instruction ?? I have docker etc configured in my windows..
[DEBUG] Could not find metadata org.onap.oparent:oparent:1.0.0-SNAPSHOT/maven-metadata.xml in central ( )
[DEBUG] Could not find metadata org.onap.oparent:oparent:1.0.0-SNAPSHOT/maven-metadata.xml in JBOSS ( -jboss/)
[DEBUG] Could not find metadata org.onap.oparent:oparent:1.0.0-SNAPSHOT/maven-metadata.xml in jboss-deprecated-repository ( )
I've collected most of the instructions to setup a development environment into the vagrant-onap project. This project has most of the instructions to create different environments but it's still missing some steps, could you help me to verify it?
Victor, Good edits of the onap on vagrant page - I have not run your vagrant setup since it was ported from github to onap - I will review it and return to running it and let you know if I have any issues.
Hi - I followed the above steps to build ONAP, and I got errors. I would like to know the latest git_recurse.sh, pom.xml and settings.xml files that I need to use....The code base that I cloned (yesterday) is 1.1.0-SNAPSHOT.
The SO component build is successful using the command(mvn clean install -U -DskipTests=true -Dmaven.test.skip=true -Dmaven.javadoc.skip=true -Dadditionalparam=-Xdoclint:none).Here inorder to understand the MSO-API handler i want to run the SO component alone.Is that was possible and if so,what are all the process involved in that.
Yes, lets use something else - I don't like git_recurse.sh - we just need to manage the repos that are not part of the build, ones that are deprecated like aai-service, ones that only have a master branch etc.... - we can do this with the modules section in the pom as well.
NOTE: without the option --no-clone-bundle you will see 404 errors as repo attempts to pull bundles to optimize things. These bundles don't exist, hence the 404 errors. the --no-clone-bundle flag just suppresses this behavior.
The manifest is a bit of a guess as I am still learning the ONAP source code and modules. If you have change please submit merge requests and I will happily merge them. I am still looking for a good top level `pom.xml` file as well to complete the entire build.
$ mvn clean install -U -DskipTests=true -Dmaven.test.skip=true -Dmaven.javadoc.skip=true
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.google.inject.internal.cglib.core.$ReflectUtils$1 (file:/usr/share/maven/lib/guice.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)
WARNING: Please consider reporting this to the maintainers of com.google.inject.internal.cglib.core.$ReflectUtils$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
[INFO] Scanning for projects...
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[FATAL] Non-parseable POM /opt/SDN/ONAP/onap/pom.xml: Expected root element 'project' but found 'html' (position: START_TAG seen ... @1:31) @ line 1, column 31
@
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]
[ERROR] The project (/opt/SDN/ONAP/onap/pom.xml) has 1 error
[ERROR] Non-parseable POM /opt/SDN/ONAP/onap/pom.xml: Expected root element 'project' but found 'html' (position: START_TAG seen ... @1:31) @ line 1, column 31 -> [Help 2]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1]
[ERROR] [Help 2]
3a8082e126