Merge "Update vnf-onboarding jobs with latest params"
diff --git a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/cassandra.yml b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/cassandra.yml
index 938fc7b..41f7e0c 100644
--- a/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/cassandra.yml
+++ b/aptly/server/mirror/ubuntu/trusty/mcp/apt_mk/cassandra.yml
@@ -20,4 +20,4 @@
           publisher:
             component: ${_param:mirror_mirantis_openstack_trusty_cassandra_components}
             distributions:
-              - ubuntu-trusty/cassandra/${_param:apt_mk_version}/
\ No newline at end of file
+              - ubuntu-trusty/cassandra/${_param:apt_mk_version}
\ No newline at end of file
diff --git a/docker/swarm/stack/kqueen.yml b/docker/swarm/stack/kqueen.yml
index 4708725..c6b608d 100644
--- a/docker/swarm/stack/kqueen.yml
+++ b/docker/swarm/stack/kqueen.yml
@@ -8,6 +8,8 @@
     kqueen_api_db_host: etcd
     kqueen_api_debug: True
     kqueen_api_prometheus_whitelist: '172.16.10.0/24' ##REcheck with network
+    kqueen_api_ldap_uri: 'ldap://ldap'
+    kqueen_api_auth_modules: 'local'
     docker_kqueen_ui_replicas: 1
     kqueen_ui_bind_port: ${_param:haproxy_kqueen_ui_bind_port}
     kqueen_ui_bind_host: kqueen-ui
@@ -15,6 +17,8 @@
     kqueen_ui_mail_port: 10025
     kqueen_ui_debug: True
     kqueen_ui_enable_public_registration: False
+    kqueen_ui_ldap_auth_notify: False
+    kqueen_ui_local_auth_notify: True
     kqueen_credentials:
       kqueen_api_secret_key: 'pasteyoursecret'
       kqueen_ui_secret_key: 'pasteyoursecret'
@@ -33,6 +37,8 @@
               environment:
                 KQUEEN_DEBUG: ${_param:kqueen_api_debug}
                 KQUEEN_CONFIG_FILE: config/prod.py
+                KQUEEN_LDAP_URI: ${_param:kqueen_api_ldap_uri}
+                KQUEEN_AUTH_MODULES: ${_param:kqueen_api_auth_modules}
                 KQUEEN_ETCD_HOST: ${_param:kqueen_api_db_host}
                 KQUEEN_PROMETHEUS_WHITELIST: ${_param:kqueen_api_prometheus_whitelist}
                 KQUEEN_SECRET_KEY: ${_param:kqueen_credentials:kqueen_api_secret_key}
@@ -63,6 +69,8 @@
                 KQUEENUI_MAIL_SERVER: ${_param:kqueen_ui_mail_host}
                 KQUEENUI_MAIL_PORT: ${_param:kqueen_ui_mail_port}
                 KQUEENUI_ENABLE_PUBLIC_REGISTRATION: ${_param:kqueen_ui_enable_public_registration}
+                KQUEENUI_LDAP_AUTH_NOTIFY: ${_param:kqueen_ui_ldap_auth_notify}
+                KQUEENUI_LOCAL_AUTH_NOTIFY: ${_param:kqueen_ui_local_auth_notify}
                 STATIC_DIR: /mnt/static/
               deploy:
                 replicas: ${_param:docker_kqueen_ui_replicas}
diff --git a/docker/swarm/stack/monitoring/alertmanager.yml b/docker/swarm/stack/monitoring/alertmanager.yml
index 662baf4..1f15be5 100644
--- a/docker/swarm/stack/monitoring/alertmanager.yml
+++ b/docker/swarm/stack/monitoring/alertmanager.yml
@@ -1,6 +1,9 @@
 classes:
 - system.prometheus.alertmanager.container
 parameters:
+  _param:
+    alertmanager_external_url: ${_param:cluster_public_host}
+    alertmanager_external_proto: http
   docker:
     client:
       stack:
@@ -34,4 +37,4 @@
                 ALERTMANAGER_BIND_PORT: ${prometheus:alertmanager:bind:port}
                 ALERTMANAGER_BIND_ADDRESS: ${prometheus:alertmanager:bind:address}
                 ALERTMANAGER_DISCOVERY_DOMAIN: 'monitoring_alertmanager'
-                ALERTMANAGER_EXTERNAL_URL: "http://${_param:stacklight_monitor_address}:15011"
+                ALERTMANAGER_EXTERNAL_URL: "${_param:alertmanager_external_proto}://${_param:alertmanager_external_url}:15011"
diff --git a/docker/swarm/stack/monitoring/prometheus/global.yml b/docker/swarm/stack/monitoring/prometheus/global.yml
index d86f456..6114f44 100644
--- a/docker/swarm/stack/monitoring/prometheus/global.yml
+++ b/docker/swarm/stack/monitoring/prometheus/global.yml
@@ -7,3 +7,5 @@
             server:
               deploy:
                 mode: global
+              environment:
+                PROMETHEUS_USE_STATIC_DATADIR: "true"
diff --git a/jenkins/client/approved_scripts.yml b/jenkins/client/approved_scripts.yml
index 8122e8c..634aa0e 100644
--- a/jenkins/client/approved_scripts.yml
+++ b/jenkins/client/approved_scripts.yml
@@ -144,3 +144,4 @@
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods intersect java.util.List java.lang.Iterable
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods reverse java.util.List
         - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods getAt java.util.Collection java.lang.String
+        - staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods init java.util.List
diff --git a/jenkins/client/job/deploy/update/cloud_update.yml b/jenkins/client/job/deploy/update/cloud_update.yml
index 0480557..3034ea5 100644
--- a/jenkins/client/job/deploy/update/cloud_update.yml
+++ b/jenkins/client/job/deploy/update/cloud_update.yml
@@ -48,6 +48,18 @@
               type: boolean
               default: 'true'
               description: "Stop API services before update"
+            TARGET_KERNEL_UPDATES:
+              type: string
+              default: "cfg,ctl,prx,msg,dbs"
+              description: "Comma separated list of nodes to update kernel if newer version is available (Valid values are cfg,ctl,prx,msg,dbs,log,mon,mtr,ntw,nal,gtw-virtual,cmn,rgw,cid,cmp,kvm,osd,gtw-physical)"
+            TARGET_REBOOT:
+              type: string
+              default: "cfg,ctl,prx,msg,dbs"
+              description: "Comma separated list of nodes to reboot after update or physical machine rollback (Valid values are cfg,ctl,prx,msg,dbs,log,mon,mtr,ntw,nal,gtw-virtual,cmn,rgw,cid,cmp,kvm,osd,gtw-physical)"
+            TARGET_HIGHSTATE:
+              type: string
+              default: "cfg,ctl,prx,msg,dbs"
+              description: "Comma separated list of nodes to run Salt Highstate on after update or physical machine rollback (Valid values are cfg,ctl,prx,msg,dbs,log,mon,mtr,ntw,nal,gtw-virtual,cmn,rgw,cid,cmp,kvm,osd,gtw-physical)"
             TARGET_UPDATES:
               type: string
               default: "cfg,ctl,prx,msg,dbs"
@@ -124,10 +136,6 @@
               type: string
               default: "gtw01*"
               description: "Salt targeted physical or virtual GTW nodes (ex. gtw01*)"
-            REBOOT:
-              type: boolean
-              default: 'false'
-              description: "Reboot nodes after update"
             ROLLBACK_PKG_VERSIONS:
               type: string
               default: ""
diff --git a/jenkins/client/job/git-mirrors/2way.yml b/jenkins/client/job/git-mirrors/2way.yml
index 0546d94..bb6b44b 100644
--- a/jenkins/client/job/git-mirrors/2way.yml
+++ b/jenkins/client/job/git-mirrors/2way.yml
@@ -20,6 +20,10 @@
               source: mcp/mcp-offline-model
               target: Mirantis/mcp-offline-model
               branches: "master"
+            - name: mcp-drivetrain-model
+              source: mcp/mcp-drivetrain-model
+              target: Mirantis/mcp-drivetrain-model
+              branches: "master"
           template:
             description: ${_param:job_description_2way}
             discard:
diff --git a/jenkins/client/job/oscore/salt_virtual_models.yml b/jenkins/client/job/oscore/salt_virtual_models.yml
index 911c1ce..17c4aa8 100644
--- a/jenkins/client/job/oscore/salt_virtual_models.yml
+++ b/jenkins/client/job/oscore/salt_virtual_models.yml
@@ -47,6 +47,10 @@
               type: string
               description: Version of formulas for salt-master bootstrap
               default: "nightly"
+            BOOTSTRAP_EXTRA_REPO_PARAMS:
+              type: string
+              default: ""
+              description: "Defines a list of extra repos with parameters, format: repo 1, repo priority 1, repo pin 1; repo 2, repo priority 2, repo pin 2"
             # openstack api
             OPENSTACK_API_URL:
               type: string
diff --git a/jenkins/client/job/oscore/tests.yml b/jenkins/client/job/oscore/tests.yml
index fe9d33c..56ecfe2 100644
--- a/jenkins/client/job/oscore/tests.yml
+++ b/jenkins/client/job/oscore/tests.yml
@@ -598,6 +598,14 @@
                 type: boolean
                 default: "{{auto_promote}}"
                 description: Enable to autopromote repo
+              TEST_MULTINODE:
+                type: boolean
+                default: "{{test_multinode}}"
+                description: Whether to test nightly snapshot against multi-node virtual models
+              STACK_CLUSTER_NAMES:
+                type: string
+                default: "{{stack_cluster_names}}"
+                description: "Cluster name to use from reclass to deploy multi-node"
         build-salt-formula-refspec-template:
           name: "{{job_prefix}}-build-salt-formula-refspec"
           template:
@@ -688,7 +696,7 @@
             trigger:
               gerrit:
                 project:
-                  "^salt-formulas/(nova|cinder|glance|keystone|horizon|neutron|designate|heat|ironic|barbican|aodh|ceilometer|gnocchi|panko|manila|salt|linux|reclass|galera|memcached|rabbitmq|bind|apache)$":
+                  "^salt-formulas/(nova|cinder|glance|keystone|horizon|neutron|designate|heat|ironic|barbican|aodh|ceilometer|gnocchi|panko|manila|salt|linux|reclass|galera|memcached|rabbitmq|bind|apache|runtest)$":
                     compare_type: 'REG_EXP'
                     branches:
                       - master
diff --git a/jenkins/client/job/validate.yml b/jenkins/client/job/validate.yml
index 168dcfd..c97c0ad 100644
--- a/jenkins/client/job/validate.yml
+++ b/jenkins/client/job/validate.yml
@@ -364,3 +364,43 @@
             PROXY:
               type: string
               default: ""
+        cvp-stacklight:
+          type: workflow-scm
+          name: cvp-stacklight
+          display_name: "CVP - Stacklight tests"
+          discard:
+            build:
+              keep_num: 20
+            artifact:
+              keep_num: 20
+          concurrent: false
+          scm:
+            type: git
+            url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
+            branch: "${_param:jenkins_pipelines_branch}"
+            credentials: "gerrit"
+            script: cvp-runner.groovy
+          param:
+            SALT_MASTER_URL:
+              type: string
+              default: "${_param:jenkins_salt_api_url}"
+              description: Full Salt API address [e.g. https://10.10.10.2:6969]
+            SALT_MASTER_CREDENTIALS:
+              type: string
+              default: "salt"
+            TESTS_REPO:
+              type: string
+              default: "https://github.com/legan4ik/stacklight-pytest"
+              description: Url for cvp-stacklight-tests
+            TESTS_SETTINGS:
+              type: string
+              default: "SL_AUTOCONF=True"
+              description: "Additional environment variables to export"
+            TESTS_SET:
+              type: string
+              default: "stacklight-pytest/stacklight_tests/tests/prometheus/"
+              description: "Leave empty for full run or choose a file, e.g. test_dashboards.py"
+            PROXY:
+              type: string
+              default: ""
+              description: Proxy address to clone repo and install python requirements
diff --git a/prometheus/alertmanager/notification/email.yml b/prometheus/alertmanager/notification/email.yml
index 02b44ff..4daec23 100644
--- a/prometheus/alertmanager/notification/email.yml
+++ b/prometheus/alertmanager/notification/email.yml
@@ -1,6 +1,7 @@
 parameters:
   prometheus:
     alertmanager:
+      enabled: true
       config:
         route:
           routes:
@@ -9,6 +10,7 @@
               match_re:
                 - label: route
                   value: email
+              continue: true
         receiver:
           SMTP:
             enabled: true
diff --git a/prometheus/alertmanager/notification/pushkin.yml b/prometheus/alertmanager/notification/pushkin.yml
index a78b6fd..151801b 100644
--- a/prometheus/alertmanager/notification/pushkin.yml
+++ b/prometheus/alertmanager/notification/pushkin.yml
@@ -1,10 +1,10 @@
 parameters:
-    _param:
-      alertmanager_notification_pushkin_host: ${_param:haproxy_pushkin_bind_host}
-      alertmanager_notification_pushkin_port: ${_param:haproxy_pushkin_bind_port}
-parameters:
+  _param:
+    alertmanager_notification_pushkin_host: ${_param:haproxy_pushkin_bind_host}
+    alertmanager_notification_pushkin_port: ${_param:haproxy_pushkin_bind_port}
   prometheus:
     alertmanager:
+      enabled: true
       config:
         route:
           routes:
diff --git a/prometheus/alertmanager/notification/slack.yml b/prometheus/alertmanager/notification/slack.yml
index 2158adb..412e91f 100644
--- a/prometheus/alertmanager/notification/slack.yml
+++ b/prometheus/alertmanager/notification/slack.yml
@@ -1,11 +1,13 @@
 parameters:
   prometheus:
     alertmanager:
+      enabled: true
       config:
         route:
           routes:
             slack:
               receiver: HTTP-slack
+              continue: true
         receiver:
           HTTP-slack:
             enabled: true