Merge "[CORD-3121] Teardown minikube after helm-api-test, install xos-client in api test"
diff --git a/jjb/docs.yaml b/jjb/docs.yaml
index e59fa44..aec942f 100644
--- a/jjb/docs.yaml
+++ b/jjb/docs.yaml
@@ -51,6 +51,9 @@
file-paths:
- compare-type: REG_EXP
pattern: '{doc-files-regexp}'
+ file-paths:
+ - compare-type: REG_EXP
+ pattern: '.*\.md'
properties:
- cord-infra-properties:
diff --git a/jjb/verify/xos-tosca.yaml b/jjb/verify/xos-tosca.yaml
new file mode 100644
index 0000000..df2d896
--- /dev/null
+++ b/jjb/verify/xos-tosca.yaml
@@ -0,0 +1,22 @@
+---
+# verification jobs for 'xos-tosca' repo
+
+- project:
+ name: xos-tosca
+ project: '{name}'
+
+ jobs:
+ - 'verify-xos-tosca-jobs':
+ branch-regexp: '{supported-branches-regexp}'
+
+- job-group:
+ name: 'verify-xos-tosca-jobs'
+ jobs:
+ - 'verify-licensed'
+ - 'verify-sonarqube':
+ dependency-jobs: 'verify_xos-tosca_licensed'
+ - 'api-test':
+ dependency-jobs: 'verify_xos-tosca_sonarqube'
+ pipeline_script: 'all-xos-api-test-helm.groovy'
+ - 'xos-tosca-unit-test':
+ dependency-jobs: 'verify_xos-tosca_sonarqube'
diff --git a/jjb/xos-tosca-unit.yaml b/jjb/xos-tosca-unit.yaml
new file mode 100644
index 0000000..8b6f601
--- /dev/null
+++ b/jjb/xos-tosca-unit.yaml
@@ -0,0 +1,80 @@
+---
+# xos tosca unit test
+
+- job-template:
+ id: 'xos-tosca-unit-test'
+ name: 'verify_{project}_unit-test'
+
+ description: |
+ Created by {id} job-template from ci-management/jjb/xos-tosca-unit.yaml
+
+ triggers:
+ - cord-infra-gerrit-trigger-patchset:
+ gerrit-server-name: '{gerrit-server-name}'
+ project-regexp: '^{project}$'
+ branch-regexp: '{branch-regexp}'
+ dependency-jobs: '{dependency-jobs}'
+ file-include-regexp: '{all-files-regexp}'
+
+ properties:
+ - cord-infra-properties:
+ build-days-to-keep: '{build-days-to-keep}'
+ artifact-num-to-keep: '{artifact-num-to-keep}'
+
+ wrappers:
+ - lf-infra-wrappers:
+ build-timeout: 20
+ jenkins-ssh-credential: '{jenkins-ssh-credential}'
+
+ scm:
+ - lf-infra-gerrit-scm:
+ git-url: '$GIT_URL/$GERRIT_PROJECT'
+ refspec: '$GERRIT_REFSPEC'
+ branch: '$GERRIT_BRANCH'
+ submodule-recursive: 'false'
+ choosing-strategy: gerrit
+ jenkins-ssh-credential: '{jenkins-ssh-credential}'
+
+ node: 'ubuntu16.04-basebuild-1c-2g'
+ project-type: freestyle
+ concurrent: true
+
+ builders:
+ - shell: |
+ #/usr/bin/env bash
+ BASEDIR=$(pwd)
+
+ # setup virtual env
+ virtualenv -q venv-xos --no-site-packages
+ source $BASEDIR/venv-xos/bin/activate
+ pip install --upgrade pip setuptools
+
+ # download changeset
+ mkdir cord && cd cord/
+ repo init -u https://gerrit.opencord.org/manifest -b $GERRIT_BRANCH
+ repo sync
+ repo download $GERRIT_PROJECT $GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER
+
+ # Install XOS dependencies
+ pip install nose2 requests_mock plyxproto jinja2 pattern astunparse pyyaml colorama
+ pip install pykwalify==1.6.1
+ pip install multistructlog==1.5
+ pip install networkx==1.11
+ pip install netaddr==0.7.19
+ pip install ipaddress==1.0.19
+ echo "Requirements Installed"
+
+ cd $BASEDIR/cord/orchestration/xos/lib/xos-util; python setup.py install; echo "xos-util Installed"
+ cd $BASEDIR/cord/orchestration/xos/lib/xos-config; python setup.py install; echo "xos-config Installed"
+ cd $BASEDIR/cord/orchestration/xos/lib/xos-genx; python setup.py install; echo "xos-genx Installed"
+
+ cp -R $BASEDIR/cord/component/chameleon $BASEDIR/cord/orchestration/xos/xos/xos_client/xosapi/chameleon
+ cd $BASEDIR/cord/orchestration/xos/xos/xos_client/xosapi/chameleon/protos; VOLTHA_BASE=anything make
+ cd $BASEDIR/cord/orchestration/xos/xos/xos_client; python setup.py install
+ chmod 777 $BASEDIR/venv-xos/lib/python2.7/site-packages/xosapi/chameleon/protoc_plugins/gw_gen.py
+ chmod 777 $BASEDIR/venv-xos/lib/python2.7/site-packages/xosapi/chameleon/protoc_plugins/swagger_gen.py
+ pip install -r $BASEDIR/cord/orchestration/xos-tosca/pip_requirements.txt
+
+ # Run the tests
+ cd $BASEDIR/cord/orchestration/xos-tosca
+ make tests