HAS Developer Guide
Quick Start
Installation and Configuration
Install the HAS project
Installing from the Source Code
Prerequisite:
The conductor has a runtime dependency on SMS and MUSIC. They can be set up using the following steps.
To run SMS, Run the following commands
./setup-sms.sh
docker exec --user root -i sms /bin/sh -c "mkdir -p /preload/config"
docker cp has.json sms:/preload/config/has.json
docker cp osdf.json sms:/preload/config/osdf.json
docker exec --user root -i sms /bin/sh -c "/sms/bin/preload -cacert /sms/certs/aaf_root_ca.cer -jsondir /preload/config -serviceport 10443 -serviceurl http://localhost"
To run music, Run the following commands
tar -xvf music.tar.gz
cd music
# to start music
./music_script.sh
# to stop music
./music_teardown_script.sh
curl -vvvvv --noproxy "*" --request POST http://localhost:8080/MUSIC/rest/v2/admin/onboardAppWithMusic -H "Content-Type: application/json" -H "Authorization: Basic Y29uZHVjdG9yOmMwbmR1Y3Qwcg==" --data @onboard.json
For HAS to communicate with SMS, The following changes have to be done to the conductor.conf
In the SMS URL, Protocol has to be changed from HTTPS to HTTP
In the same URL, hostname has to be changed from aaf-sms.onap to localhost
Get HAS seed code from the Linux Foundation Projects page.
git clone https://gerrit.onap.org/r/optf/has
Use virtual environment to create and manage libraries and dependencies for HAS project.
Inside of /has/conductor folder, run the following commands:
In {virtual_environment_location}/bin folder, you should see the five components of HAS/Conductor project and you can with the commands below.
conductor-api,conductor-controller, conductor-solver, conductor-reservation, conductor-data
Installing through OOM
Please first follow the steps inside ONAP on Kubernetes with Rancher to build a kubernetes environment for ONAP deployment.
Clone the OOM repository from ONAP Gerrit
Install Helm plugins to enable ONAP deployment.
Configure the values.yaml inside /oom/kubernetes/onap/ folder as the one attached here. Here I only enabled AAF, AAI, OOF and Policy. You can also enable other components if needed.
Setup the helm server and build local helm repository
Deploy ONAP through Helm
Process for debuging
Load changes inside the development environment
The changes will be updated through an update of the docker image. Please make sure you've setup the development env according to Setting Up Your Development Environment (i.e. create proper settings.xml file for maven)
Then create new Dockerfile and build-dockers-debug.sh under has/ folder to build the new image. The artifact can be found in the has/conductor/target folder
Replace the image name inside the deployment for all HAS components.
Commiting the Code
git commit -am "Initial proj struct"
git review -s
git commit -as --amend
# scroll down 2 lines (above your Change-ID) insert "Issue-ID: {issue_id}"
git review