.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0
-************
-Installation
-************
+Standalone Quick Start Installation
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. contents::
- :depth: 3
+ :depth: 2
The installation of ONAP Policy is **automated** by design and can be done via Docker as a standalone system.
Various tools, including healthcheck, logs, and Swagger can be used to ensure proper operation.
-ONAP Policy Framework: Standalone Quick Start
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This article explains how to build the ONAP Policy Framework and get it running in Docker as a standalone system.
This article assumes that:
## the ONAP repos to clone
onap_repos="\
- policy/api \
+ policy/parent \
policy/common \
policy/docker \
policy/drools-applications \
policy/drools-pdp \
policy/engine \
- policy/gui \
- policy/pap \
- policy/pdp"
+ policy/apex-pdp \
+ policy/distribution"
##
## Help screen and exit condition (i.e. too few arguments)
* ~/git/onap
* ~/git/onap/policy
- * ~/git/onap/policy/api
+ * ~/git/onap/policy/parent
* ~/git/onap/policy/common
* ~/git/onap/policy/docker
* ~/git/onap/policy/drools-applications
* ~/git/onap/policy/drools-pdp
* ~/git/onap/policy/engine
- * ~/git/onap/policy/gui
- * ~/git/onap/policy/pap
- * ~/git/onap/policy/pdp
+ * ~/git/onap/policy/apex-pdp
+ * ~/git/onap/policy/distribution
Building ONAP
-------------
-**Step 1.** Optionally, for a completely clean build, remove the ONAP built modules from your local repository.
+**Step 1:** Optionally, for a completely clean build, remove the ONAP built modules from your local repository.
.. code-block:: bash
rm -fr ~/.m2/repisotory/com/att
-**Step 2**. A pom such as the one below can be used to build the ONAP Policy Framework modules. Create the *pom.xml* file in the directory *~/git/onap/policy*.
+**Step 2:** A pom such as the one below can be used to build the ONAP Policy Framework modules. Create the *pom.xml* file in the directory *~/git/onap/policy*.
.. code-block:: xml
:caption: Typical pom.xml to build the ONAP Policy Framework
</organization>
<modules>
+ <module>parent</module>
<module>common</module>
- <module>engine</module>
- <module>pdp</module>
- <module>pap</module>
<module>drools-pdp</module>
<module>drools-applications</module>
- <module>api</module>
- <module>gui</module>
- <module>docker</module>
+ <module>engine</module>
+ <module>apex-pdp</module>
+ <module>distribution</module>
</modules>
</project>
-**Step 3**. You can now build the ONAP framework
-
- * On *Ubuntu*, just build the Policy Framework tests and all
+**Step 3:** You can now build the ONAP framework
- .. code-block:: bash
-
- cd ~/git/onap
- mvn clean install
-
- * On *macOS*, you must build build the ONAP framework with tests turned off first. Then rebuild the framework with tests turned on and all tests will pass. Note: The reason for this behaviour will be explored later.
-
- .. code-block:: bash
+ .. code-block:: bash
- cd ~/git/onap
- mvn clean install -DskipTests
- mvn install
+ cd ~/git/onap
+ mvn clean install
Building the ONAP Policy Framework Docker Images
The instructions here are based on the instructions in the file *~/git/onap/policy/docker/README.md*.
-**Step 1.** Build the policy engine docker image:
+**Step 1:** Build the policy engine docker image:
- .. code-block:: bash
+ .. code-block:: bash
+
+ cd ~/git/onap/policy/engine/packages/docker/target
+ docker build -t onap/policy-pe policy-pe
- cd ~/git/onap/policy/engine/packages/docker/target
- docker build -t onap/policy-pe policy-pe
+**Step 2:** Build the Drools PDP docker image:
-**Step 2.** Build the Drools PDP docker image:
+ .. code-block:: bash
- .. code-block:: bash
+ cd ~/git/onap/policy/drools-pdp/packages/docker/target
+ docker build -t onap/policy-drools policy-drools
- cd ~/git/onap/policy/drools-pdp/packages/docker/target
- docker build -t onap/policy-drools policy-drools
+**Step 3:** Build the Policy SDC Distribution docker image:
-**Step 3.** Build the Policy Nexus docker image:
+ .. code-block:: bash
- .. code-block:: bash
+ cd ~/git/onap/policy/distribution/packages
+ mvn clean install -Pdocker
+
+**Step 4:** Build the Apex PDP docker image:
- cd ~/git/onap/policy/docker
- docker build -t onap/policy-nexus policy-nexus
+ .. code-block:: bash
+
+ cd ~/git/onap/policy/apex-pdp/packages/apex-pdp-docker/target
+ docker build -t onap/policy-apex-pdp policy-apex-pdp
Starting the ONAP Policy Framework Docker Images
------------------------------------------------
-In order to run the containers, you can use *docker-compose*. This uses the *docker-compose.yml* yaml file to bring up the ONAP Policy Framework.
-
-**Step 1.** Make the file config/drools/drools-tweaks.sh executable.
+In order to run the containers, you can use *docker-compose*. This uses the *docker-compose.yml* yaml file to bring up the ONAP Policy Framework. This file is located in the policy/docker repository.
- .. code-block:: bash
+**Step 1:** Make the file config/drools/drools-tweaks.sh executable.
- chmod +x config/drools/drools-tweaks.sh
+ .. code-block:: bash
+ chmod +x config/drools/drools-tweaks.sh
-**Step 2.** Set the IP address to use to be an IP address of a suitable interface on your machine. Save the IP address into the file *config/pe/ip_addr.txt*.
+**Step 2:** Set the IP address to use to be an IP address of a suitable interface on your machine. Save the IP address into the file *config/pe/ip_addr.txt*.
-**Step 3.** Set the environment variable *MTU* to be a suitable MTU size for the application.
- .. code-block:: bash
+**Step 3:** Set the environment variable *MTU* to be a suitable MTU size for the application.
- export MTU=9126
+ .. code-block:: bash
+ export MTU=9126
-**Step 4.** Determine if you want policies pre-loaded or not. By default, all the configuration and operational policies will be pre-loaded by the docker compose script. If you do not wish for that to happen, then export this variable:
- .. code-block:: bash
+**Step 4:** Determine if you want policies pre-loaded or not. By default, all the configuration and operational policies will be pre-loaded by the docker compose script. If you do not wish for that to happen, then export this variable:
- export PRELOAD_POLICIES=false
+ .. code-block:: bash
+ export PRELOAD_POLICIES=false
-**Step 5.** Run the system using *docker-compose*. Note that on some systems you may have to run the *docker-compose* command as root or using *sudo*. Note that this command takes a number of minutes to execute on a laptop or desktop computer.
- .. code-block:: bash
+**Step 5:** Run the system using *docker-compose*. Note that on some systems you may have to run the *docker-compose* command as root or using *sudo*. Note that this command takes a number of minutes to execute on a laptop or desktop computer.
- docker-compose up
+ .. code-block:: bash
+ docker-compose up
-Installation Complete
----------------------
**You now have a full standalone ONAP Policy framework up and running!**
+Installation of Drools Controllers and Policies
+-----------------------------------------------
+
+You may now install a controller and policies on the ONAP Policy Framework. Follow the HowTos below to install the Amsterdam controller and policies.
+
+ * `Installation of Amsterdam Controller and vCPE Policy <installAmsterController.html>`_
+
+
+
.. _Standalone Quick Start : https://wiki.onap.org/display/DW/ONAP+Policy+Framework%3A+Standalone+Quick+Start