Merge "Adding a guide to include devices in certification"
diff --git a/index.rst b/index.rst
index 7a94b76..e9331d1 100644
--- a/index.rst
+++ b/index.rst
@@ -121,6 +121,7 @@
overview/workflows.rst
overview/operate.rst
overview/lab_setup.rst
+ overview/jenkins_node.rst
overview/troubleshooting.rst
overview/releases.rst
overview/contributing.rst
diff --git a/overview/jenkins_node.rst b/overview/jenkins_node.rst
new file mode 100644
index 0000000..7c40683
--- /dev/null
+++ b/overview/jenkins_node.rst
@@ -0,0 +1,43 @@
+.. _jenkins_setup:
+
+How to setup a node for CI intergration
+=======================================
+
+*NOTE that this guide has only been tested with Jenkins, but we assume a similar
+set of tools would be required for different CI systems as well.*
+
+This page is intended to provide pointers to useful instructions
+that you need to setup your ``Jenkins`` executor and a list of tools install on it in order to
+run the automated tests using the ``ci-management`` pipelines that are used on the `OpenCORD Jenkins <https://jenkins.opencord.org/>`_
+
+.. _jenkins_node:
+
+Connect an executor to Jenkins
+------------------------------
+
+A good guide to do this can be found at `<https://devopscube.com/setup-slaves-on-jenkins-2/>`_.
+At ONF we setup one of the node in the Kubernetes cluster as Jenkins Agent, but that is not mandatory
+as long as ``kubectl`` installed on the Jenkins Agent can interact with the cluster.
+
+Prerequisites for this step are listed in the page, but reported here for your convenience:
+
+* Ubuntu (our executors use 20.04, other versions/distros might work as well but they have not been tested)
+* Java
+* A valid Linux user account that can perform the required tasks on the agent server.
+ (We suggest to use a dedicated ``jenkins`` user)
+
+Once the executor is setup in as a Jenkins Agent there are a few other tools that the pipeline
+will require in order to run the test cases:
+
+* Kubectl - `<https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/>`_
+* Helm - `<https://helm.sh/docs/intro/install/>`_
+* Kail - `<https://github.com/boz/kail>`_
+* Python3 - `<https://docs.python-guide.org/starting/install3/linux/>`_ (if you want to default ``python`` to ``python3``: `<https://webcache.googleusercontent.com/search?q=cache:uSzCWsWfCHsJ:https://linuxconfig.org/how-to-change-from-default-to-alternative-python-version-on-debian-linux+&cd=3&hl=en&ct=clnk>`_)
+* pip3 - `<https://pip.pypa.io/en/latest/installation/>`_
+* virtualenv - `<https://bootstrap.pypa.io/get-pip.py>`_
+* repo - `<https://stackoverflow.com/questions/4350344/how-to-install-androids-repo-on-my-ubuntu-system>`_
+* sshpass
+* jq
+* make
+
+*NOTE that the tool without links are ``apt`` installable*
diff --git a/overview/lab_setup.rst b/overview/lab_setup.rst
index 3f2ea22..fd24d1a 100644
--- a/overview/lab_setup.rst
+++ b/overview/lab_setup.rst
@@ -87,6 +87,23 @@
# activate the interface
ip link set eth1 up
+
+..
+
+If you want to setup the container for the DT workflow please add a tagged interface to be used to send out traffic.
+
+.. code:: bash
+
+ # setup tagged client interface
+ ip link add link eth1 name eth1.7 type vlan id 7
+ ip link set eth1.7 up
+
+..
+
+The container also requires some tools for testing
+
+.. code:: bash
+
# install the required tools for testing
apt update
apt install -y wpasupplicant jq netsniff-ng build-essential tcpdump