summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--UPSTREAM9
-rw-r--r--docs/development/overview/testing.rst33
-rw-r--r--docs/release/userguide/feature.userguide.rst64
-rw-r--r--doctor_tests/identity_auth.py3
-rw-r--r--tox.ini1
5 files changed, 69 insertions, 41 deletions
diff --git a/UPSTREAM b/UPSTREAM
index de01cbfc..04ca5116 100644
--- a/UPSTREAM
+++ b/UPSTREAM
@@ -52,3 +52,12 @@
-
url: https://bugs.launchpad.net/python-openstackclient/+bug/1684989
system: Launchpad-bug
+-
+ url: https://blueprints.launchpad.net/vitrage/+spec/doctor-datasource
+ system: Launchpad
+-
+ url: https://blueprints.launchpad.net/vitrage/+spec/support-inspector-sb-api
+ system: Launchpad
+-
+ url: https://blueprints.launchpad.net/vitrage/+spec/support-mark-down-action-for-instances
+ system: Launchpad
diff --git a/docs/development/overview/testing.rst b/docs/development/overview/testing.rst
index 8d0e90e6..98be43e9 100644
--- a/docs/development/overview/testing.rst
+++ b/docs/development/overview/testing.rst
@@ -10,7 +10,7 @@ for doctor CI.
You need to install OpenStack and other OPNFV components except Doctor Sample
Inspector, Sample Monitor and Sample Consumer, as these will be launched in
-this script. You are encouraged to use OPNFV offcial installers, but you can
+this script. You are encouraged to use OPNFV official installers, but you can
also deploy all components with other installers such as devstack or manual
operation. In those cases, the versions of all components shall be matched with
the versions of them in OPNFV specific release.
@@ -18,38 +18,16 @@ the versions of them in OPNFV specific release.
Run Test Script
===============
-Doctor project has own testing script under `doctor/tests`_. This test script
+Doctor project has own testing script under `doctor/doctor_tests`_. This test script
can be used for functional testing agained an OPNFV deployment.
-.. _doctor/tests: https://gerrit.opnfv.org/gerrit/gitweb?p=doctor.git;a=tree;f=tests;
+.. _doctor/doctor_tests: https://git.opnfv.org/doctor/tree/doctor_tests
Before running this script, make sure OpenStack env parameters are set properly
-following `OpenStack CLI manual`_, so that Doctor Inspector can operate
+(See e.g. `OpenStackClient Configuration`_), so that Doctor Inspector can operate
OpenStack services.
-.. _OpenStack CLI manual: https://docs.openstack.org/user-guide/common/cli-set-environment-variables-using-openstack-rc.html
-
-Run Bash Test Script
-~~~~~~~~~~~~~~~~~~~~
-
-You can run the bash script as follows:
-
-.. code-block:: bash
-
- git clone https://gerrit.opnfv.org/gerrit/doctor
- cd doctor/tests
- export INSTALLER_TYPE=local
- export INSPECTOR_TYPE=sample
- ./run.sh
-
-INSTALLER_TYPE can be 'apex', 'fuel', 'joid' and 'local'(default). If you are
-not using OPNFV installers in this option, chose 'local'.
-INSPECTOR_TYPE can be specified either 'sample'(default) or 'congress'.
-
-For testing with stable version, checkout stable branch of doctor repo before
-'./run.sh'.
-
-The bash test script will be deprecated(only bug fixes) after E Release.
+.. _OpenStackClient Configuration: https://docs.openstack.org/python-openstackclient/latest/configuration/index.html
Run Python Test Script
~~~~~~~~~~~~~~~~~~~~~~
@@ -82,7 +60,6 @@ Functest container. You can run the Doctor test with the following steps:
-e INSTALLER_IP=${INSTALLER_IP} \
-e INSPECTOR_TYPE=sample \
docker.io/opnfv/functest-features:${DOCKER_TAG} /bin/bash
- docker exec <container_id> functest env prepare
docker exec <container_id> functest testcase run doctor-notification
See `Functest Userguide`_ for more information.
diff --git a/docs/release/userguide/feature.userguide.rst b/docs/release/userguide/feature.userguide.rst
index 0dde4f26..0783e0fd 100644
--- a/docs/release/userguide/feature.userguide.rst
+++ b/docs/release/userguide/feature.userguide.rst
@@ -9,7 +9,7 @@ Doctor. The implementation is based on OpenStack and related components. The
Monitor can be realized by a sample Python-based implementation provided in the
Doctor code repository. The Controller is realized by OpenStack Nova, Neutron
and Cinder for compute, network and storage, respectively. The Inspector can be
-realized by OpenStack Congress or a sample Python-based implementation also
+realized by OpenStack Congress, Vitrage or a sample Python-based implementation also
available in the code repository of Doctor. The Notifier is realized by
OpenStack Aodh.
@@ -26,18 +26,21 @@ Immediate Notification
Immediate notification can be used by creating 'event' type alarm via
OpenStack Alarming (Aodh) API with relevant internal components support.
-See, upstream spec document:
-http://specs.openstack.org/openstack/ceilometer-specs/specs/liberty/event-alarm-evaluator.html
+See:
+- Upstream spec document:
+https://specs.openstack.org/openstack/ceilometer-specs/specs/liberty/event-alarm-evaluator.html
+- Aodh official documentation:
+https://docs.openstack.org/aodh/latest
An example of a consumer of this notification can be found in the Doctor
repository. It can be executed as follows:
.. code-block:: bash
- git clone https://gerrit.opnfv.org/gerrit/doctor -b stable/danube
- cd doctor/tests
+ git clone https://gerrit.opnfv.org/gerrit/doctor
+ cd doctor/doctor_tests/consumer
CONSUMER_PORT=12346
- python consumer.py "$CONSUMER_PORT" > consumer.log 2>&1 &
+ python sample.py "$CONSUMER_PORT" > consumer.log 2>&1 &
Consistent resource state awareness
-----------------------------------
@@ -46,9 +49,10 @@ Resource state of compute host can be changed/updated according to a trigger
from a monitor running outside of OpenStack Compute (Nova) by using
force-down API.
-See
-http://artifacts.opnfv.org/doctor/danube/manuals/mark-host-down_manual.html
-for more detail.
+See:
+* Upstream spec document: https://specs.openstack.org/openstack/nova-specs/specs/liberty/implemented/mark-host-down.html
+* Upstream Compute API reference document: https://developer.openstack.org/api-ref/compute
+* Doctor Mark Host Down Manual: https://git.opnfv.org/doctor/tree/docs/development/manuals/mark-host-down_manual.rst
Valid compute host status given to VM owner
-------------------------------------------
@@ -56,6 +60,42 @@ Valid compute host status given to VM owner
The resource state of a compute host can be retrieved by a user with the
OpenStack Compute (Nova) servers API.
-See
-http://artifacts.opnfv.org/doctor/danube/manuals/get-valid-server-state.html
-for more detail.
+See:
+* Upstream spec document: https://specs.openstack.org/openstack/nova-specs/specs/mitaka/implemented/get-valid-server-state.html
+* Upstream Compute API reference document: https://developer.openstack.org/api-ref/compute
+* Doctor Get Valid Server State Manual: https://git.opnfv.org/doctor/tree/docs/development/manuals/get-valid-server-state.rst
+
+Port data plane status update
+-----------------------------
+
+Port data plane status can be changed/updated in the case of issues in the underlying data plane
+affecting connectivity from/to Neutron ports.
+
+See:
+* Upstream spec document: https://specs.openstack.org/openstack/neutron-specs/specs/pike/port-data-plane-status.html
+* Upstream Networking API reference document: https://developer.openstack.org/api-ref/network
+
+Doctor driver (Congress)
+------------------------
+
+The Doctor driver can be notified about NFVI failures that have been detected by monitoring systems.
+
+See:
+* Upstream spec document: https://specs.openstack.org/openstack/congress-specs/specs/mitaka/push-type-datasource-driver.html
+* Congress official documentation: https://docs.openstack.org/congress/latest
+
+Event API (Vitrage)
+-------------------
+With this API, monitoring systems can push events to the Doctor datasource.
+
+See:
+* Upstream spec document: https://specs.openstack.org/openstack/vitrage-specs/specs/ocata/event-api.html
+* Vitrage official documentation: https://docs.openstack.org/vitrage/latest
+
+Doctor datasource (Vitrage)
+---------------------------
+After receiving events from monitoring systems, the Doctor datasource identifies the affected resources based on the resource topology.
+
+See:
+* Upstream spec document: https://specs.openstack.org/openstack/vitrage-specs/specs/ocata/doctor-datasource.html
+
diff --git a/doctor_tests/identity_auth.py b/doctor_tests/identity_auth.py
index 0d429597..62b45ede 100644
--- a/doctor_tests/identity_auth.py
+++ b/doctor_tests/identity_auth.py
@@ -40,4 +40,5 @@ def get_session(auth=None):
"""Get a user credentials auth session."""
if auth is None:
auth = get_identity_auth()
- return session.Session(auth=auth)
+ return session.Session(auth=auth,
+ verify=os.environ.get('OS_CACERT'))
diff --git a/tox.ini b/tox.ini
index 2eaadacd..53efbfe3 100644
--- a/tox.ini
+++ b/tox.ini
@@ -21,6 +21,7 @@ passenv =
OS_PROJECT_DOMAIN_NAME
OS_PROJECT_DOMAIN_ID
OS_REGION_NAME
+ OS_CACERT
IMAGE_NAME
VM_COUNT
PROFILER_TYPE