I am trying to set up Opendaylight controller. Actually my intention is to connect it with mininet vm and have communication with Internet. (with mininet embedded controller communication to internet is possible). To perform this, from what I have understood, I have to write an application for Opendaylight controller in order to handle incoming and outgoing flows. Just connecting mininet with ODL controller, seems not enough for communication of the testbed with the Internet. Correct me if I miss something but downloading the distribution in order to write an application for Opendaylight controller, is also not enough. A new project needs to be created, right?
I downloaded Carbon 0.6.2 (Carbon SR2) from the official website, and based on this and following the tutorials: https://wiki.opendaylight.org/view/GettingStarted:Development_Environment_Setup#Edit_your_.7E.2F.m2.2Fsettings.xml and https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-SAL:Startup_Project_Archetype
I try to create my project. The user guide seem to be outdated. I use Snapshot-Type=opendaylight.snapshot and Archetype-Version=1.5.0-SNAPSHOT. Archetype versions have not been updated in the user guide and I am not sure whether I use the proper one.
So I use maven command in the following way:
mvn archetype:generate -DarchetypeGroupId=org.opendaylight.controller -DarchetypeArtifactId=opendaylight-startup-archetype -DarchetypeRepository=http://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/ -DarchetypeCatalog=remote -DarchetypeVersion=1.5.0-SNAPSHOT
(I used that archetype version based on the archetype-catalog.xml:
<groupId>org.opendaylight.controller</groupId>
<artifactId>opendaylight-startup-archetype</artifactId>
<version>1.5.0-SNAPSHOT</version>)
Then I create my project and execute:
mvn clean install -DskipTests -Dcheckstyle.skip=true
Project is created successfully (no errors), but when I start the controller from this project, it seems that l2-switch related features are not listed and as a result cannot be installed.
Is this implemented to work as such? I would expect that every feature listed in the main distribution would be available also in the projects created based on this specific distribution. This feature is needed for communication of ODL controller with mininet over Openflow protocol. I use java 1.8 and maven 3.5.2
Could anybody help me clarify this? Opendaylight seems so promising but it's a pity documentation is not straight forward with so many dependencies. Thanks in advance for your help!