Hello World
In the wiki page Creating and Installing an Instance of SDNR we saw how the docker container is constructed and how features are prepared for installation. We now discuss how to create and add a new feature to SDNR. As an example, we will create a Hello World feature in the ccsdk/features repository using the subdirectory sdnr/northbound. Here is the initial file structure.
Helloworld is simpler than sliapi (a zip file is available) because code used in installations prior to Casablanca has been removed, e.g.,
- installer/src/assembly/assemble-installer_zip.xml
- installer/src/main/resources/scripts/install.sh
As we saw in Creating and Installing an Instance of SDN-R, features/sdnr-helloworld/pom.xml creates a features.xml file and installer/pom.xml zips up the maven repository. We can then modify ccsdk/distribution/odlsli/src/maindocker/Dockerfile to include helloworld in the boot features, as shown here.
The final steps are to add helloworld to the dependencies in ccsdk/distributikon/odlsli/pom.xml and then rebuild the docker image.