Merge "Alerts reworked"
diff --git a/.kitchen.yml b/.kitchen.yml
index dbb2fea..7501126 100644
--- a/.kitchen.yml
+++ b/.kitchen.yml
@@ -51,7 +51,7 @@
platforms:
- name: <%=ENV['PLATFORM'] || 'saltstack-ubuntu-xenial-salt-stable' %>
driver_config:
- image: <%=ENV['PLATFORM'] || 'epcim/salt-formulas:saltstack-ubuntu-xenial-salt-stable'%>
+ image: <%=ENV['PLATFORM'] || 'epcim/salt:saltstack-ubuntu-xenial-salt-stable'%>
platform: ubuntu
suites:
diff --git a/.travis.yml b/.travis.yml
index a9c4dd4..4fd7f0d 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -18,36 +18,71 @@
- bundle install
env:
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc311 SUITE=single3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc311 SUITE=analytics3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc311 SUITE=control3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc311 SUITE=cluster3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc311 SUITE=vrouter3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc323 SUITE=single3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc323 SUITE=analytics3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc323 SUITE=control3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc323 SUITE=cluster3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc323 SUITE=vrouter3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc40 SUITE=single40
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc40 SUITE=analytics40
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc40 SUITE=control40
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc40 SUITE=cluster40
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc40 SUITE=vrouter40
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc311 SUITE=single3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc311 SUITE=analytics3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc311 SUITE=control3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc311 SUITE=cluster3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc311 SUITE=vrouter3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc323 SUITE=single3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc323 SUITE=analytics3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc323 SUITE=control3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc323 SUITE=cluster3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc323 SUITE=vrouter3
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc40 SUITE=single40
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc40 SUITE=analytics40
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc40 SUITE=control40
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc40 SUITE=cluster40
- - PLATFORM=epcim/salt-formulas:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc40 SUITE=vrouter40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc311 SUITE=single3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc311 SUITE=analytics3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc311 SUITE=control3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc311 SUITE=cluster3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc311 SUITE=vrouter3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc323 SUITE=single3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc323 SUITE=analytics3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc323 SUITE=control3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc323 SUITE=cluster3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc323 SUITE=vrouter3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc40 SUITE=single40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc40 SUITE=analytics40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc40 SUITE=control40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc40 SUITE=cluster40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2016.3 OC_REPO=oc40 SUITE=vrouter40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc311 SUITE=single3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc311 SUITE=analytics3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc311 SUITE=control3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc311 SUITE=cluster3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc311 SUITE=vrouter3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc323 SUITE=single3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc323 SUITE=analytics3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc323 SUITE=control3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc323 SUITE=cluster3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc323 SUITE=vrouter3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc40 SUITE=single40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc40 SUITE=analytics40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc40 SUITE=control40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc40 SUITE=cluster40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2017.7 OC_REPO=oc40 SUITE=vrouter40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2018.3 OC_REPO=oc323 SUITE=single3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2018.3 OC_REPO=oc323 SUITE=analytics3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2018.3 OC_REPO=oc323 SUITE=control3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2018.3 OC_REPO=oc323 SUITE=cluster3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2018.3 OC_REPO=oc323 SUITE=vrouter3
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2018.3 OC_REPO=oc40 SUITE=single40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2018.3 OC_REPO=oc40 SUITE=analytics40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2018.3 OC_REPO=oc40 SUITE=control40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2018.3 OC_REPO=oc40 SUITE=cluster40
+ - PLATFORM=epcim/salt:saltstack-ubuntu-xenial-salt-2018.3 OC_REPO=oc40 SUITE=vrouter40
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc311 SUITE=single3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc311 SUITE=analytics3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc311 SUITE=control3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc311 SUITE=cluster3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc311 SUITE=vrouter3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc323 SUITE=single3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc323 SUITE=analytics3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc323 SUITE=control3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc323 SUITE=cluster3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc323 SUITE=vrouter3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc40 SUITE=single40
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc40 SUITE=analytics40
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc40 SUITE=control40
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc40 SUITE=cluster40
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2017.7 OC_REPO=oc40 SUITE=vrouter40
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2018.3 OC_REPO=oc323 SUITE=single3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2018.3 OC_REPO=oc323 SUITE=analytics3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2018.3 OC_REPO=oc323 SUITE=control3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2018.3 OC_REPO=oc323 SUITE=cluster3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2018.3 OC_REPO=oc323 SUITE=vrouter3
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2018.3 OC_REPO=oc40 SUITE=single40
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2018.3 OC_REPO=oc40 SUITE=analytics40
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2018.3 OC_REPO=oc40 SUITE=control40
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2018.3 OC_REPO=oc40 SUITE=cluster40
+ # - PLATFORM=epcim/salt:saltstack-ubuntu-bionic-salt-2018.3 OC_REPO=oc40 SUITE=vrouter40
before_script:
- set -o pipefail
diff --git a/README.rst b/README.rst
index 825b1c0..ba0d7b4 100644
--- a/README.rst
+++ b/README.rst
@@ -129,6 +129,11 @@
members:
- host: 127.0.0.1
port: 9160
+ message_queue:
+ members:
+ - host: 127.0.0.1
+ - host: 127.0.0.1
+ - host: 127.0.0.1
database:
version: 2.2
cassandra:
@@ -286,6 +291,11 @@
port: 9160
- host: 127.0.0.1
port: 9160
+ message_queue:
+ members:
+ - host: 127.0.0.1
+ - host: 127.0.0.1
+ - host: 127.0.0.1
database:
version: 2.2
cassandra:
@@ -518,6 +528,11 @@
port: 9160
- host: 127.0.0.1
port: 9160
+ message_queue:
+ members:
+ - host: 127.0.0.1
+ - host: 127.0.0.1
+ - host: 127.0.0.1
database:
version: 2.2
cassandra:
diff --git a/opencontrail/files/3.0/contrail-alarm-gen.conf b/opencontrail/files/3.0/contrail-alarm-gen.conf
index 1da7577..d14cab0 100644
--- a/opencontrail/files/3.0/contrail-alarm-gen.conf
+++ b/opencontrail/files/3.0/contrail-alarm-gen.conf
@@ -1,4 +1,4 @@
-{%- from "opencontrail/map.jinja" import collector with context %}
+{%- from "opencontrail/map.jinja" import collector,common with context %}
[DEFAULTS]
host_ip = {{ collector.bind.address }}
#collectors = 127.0.0.1:8086
@@ -12,10 +12,32 @@
log_file = /var/log/contrail/contrail-alarm-gen.log
kafka_broker_list = {% for member in collector.database.members %}{{ member.host }}:9092 {% endfor %}
zk_list = {% for member in collector.database.members %}{{ member.host }}:2181{% if not loop.last %},{% endif %}{% endfor %}
+{%- if collector.get('message_queue', {}).members is defined %}
+rabbitmq_server_list={{ collector.message_queue.members | join(',', attribute='host') }}
+rabbitmq_ha_mode=True
+rabbitmq_port={{ collector.get('message_queue', {}).get('port', 5672) }}
+{%- elif collector.get('message_queue', {}).host is defined %}
+rabbitmq_server_list={{ collector.message_queue.host }}
+rabbitmq_port={{ collector.get('message_queue', {}).get('port', 5672) }}
+{%- endif %}
[DISCOVERY]
disc_server_ip = {{ collector.discovery.host }}
disc_server_port = 5998
+[API_SERVER]
+api_server_list={{ collector.discovery.host }}:8082
+api_server_use_ssl=False
+
+{%- if common.identity.engine == "keystone" and not common.get('k8s_enabled', False) %}
+[KEYSTONE]
+auth_host={{ common.identity.host }}
+auth_protocol=http
+auth_port={{ common.identity.port }}
+admin_user={{ common.identity.get('user', "admin") }}
+admin_password={{ common.identity.password }}
+admin_tenant_name={{ common.identity.get('tenant', "admin") }}
+{%- endif %}
+
[REDIS]
#redis_server_port=6379
diff --git a/opencontrail/files/3.0/contrail-snmp-collector.conf b/opencontrail/files/3.0/contrail-snmp-collector.conf
index 7beb090..d57251a 100644
--- a/opencontrail/files/3.0/contrail-snmp-collector.conf
+++ b/opencontrail/files/3.0/contrail-snmp-collector.conf
@@ -24,10 +24,23 @@
#disc_server_port=5998
[KEYSTONE]
-#keystone parameters come from contrail-keystone-auth.conf
-#auth_host=127.0.0.1
-#auth_protocol=http
-#auth_port=35357
-#admin_user=user1
-#admin_password=password1
-#admin_tenant_name=default-domain
+{%- if collector.get('identity', {}).get('engine') == 'keystone' %}
+auth_host={{ collector.identity.host }}
+auth_protocol=http
+auth_port={{ collector.identity.port }}
+admin_user={{ collector.identity.user }}
+admin_password={{ collector.identity.password }}
+admin_tenant_name={{ collector.identity.tenant }}
+insecure=True
+{%- if collector.cache is defined %}
+#memcache_servers=127.0.0.1:11211
+memcache_servers={% for member in collector.cache.members %}{{ member.host }}:{{ member.port }}{% if not loop.last %},{% endif %}{% endfor %}
+{%- endif %}
+{%- if collector.identity.version == "3" %}
+project_name={{ collector.identity.tenant }}
+project_domain_name={{ collector.identity.get('domain', 'default')|lower}}
+auth_url=http://{{ collector.identity.host }}:{{ collector.identity.port }}/v3
+{%- else %}
+auth_url=http://{{ collector.identity.host }}:{{ collector.identity.port }}/v2.0
+{%- endif %}
+{%- endif %}
diff --git a/opencontrail/files/4.0/contrail-alarm-gen.conf b/opencontrail/files/4.0/contrail-alarm-gen.conf
index ad2fbbf..ae8ea5e 100644
--- a/opencontrail/files/4.0/contrail-alarm-gen.conf
+++ b/opencontrail/files/4.0/contrail-alarm-gen.conf
@@ -11,8 +11,15 @@
partitions=30
zk_list = {% for member in collector.database.members %}{{ member.host }}:2182 {% endfor %}
#rabbitmq_server_list = xx.xx.xx.xx
-rabbitmq_server_list = {{ collector.message_queue.host }}
-rabbitmq_port = 5672
+{%- if collector.get('message_queue', {}).members is defined %}
+rabbitmq_server_list={{ collector.message_queue.members | join(',', attribute='host') }}
+rabbitmq_ha_mode=True
+rabbitmq_port={{ collector.get('message_queue', {}).get('port', 5672) }}
+{%- elif collector.get('message_queue', {}).host is defined %}
+rabbitmq_server_list={{ collector.message_queue.host }}
+rabbitmq_port={{ collector.get('message_queue', {}).get('port', 5672) }}
+{%- endif %}
+
[API_SERVER]
# List of api-servers in ip:port format separated by space
diff --git a/tests/pillar/analytics3.sls b/tests/pillar/analytics3.sls
index 1a5e861..2afcd1c 100644
--- a/tests/pillar/analytics3.sls
+++ b/tests/pillar/analytics3.sls
@@ -32,6 +32,12 @@
port: 9160
- host: 127.0.0.1
port: 9160
+ message_queue:
+ host: 127.0.0.1
+ members:
+ - host: 127.0.0.1
+ - host: 127.0.0.1
+ - host: 127.0.0.1
database:
version: 3.0
cassandra:
diff --git a/tests/pillar/cluster3.sls b/tests/pillar/cluster3.sls
index 1f97957..54c9d41 100644
--- a/tests/pillar/cluster3.sls
+++ b/tests/pillar/cluster3.sls
@@ -104,6 +104,12 @@
port: 9160
- host: 127.0.0.1
port: 9160
+ message_queue:
+ host: 127.0.0.1
+ members:
+ - host: 127.0.0.1
+ - host: 127.0.0.1
+ - host: 127.0.0.1
database:
version: 3.0
cassandra:
diff --git a/tests/pillar/single3.sls b/tests/pillar/single3.sls
index 859caf7..43f6dd6 100644
--- a/tests/pillar/single3.sls
+++ b/tests/pillar/single3.sls
@@ -80,6 +80,12 @@
members:
- host: 127.0.0.1
port: 9160
+ message_queue:
+ host: 127.0.0.1
+ members:
+ - host: 127.0.0.1
+ - host: 127.0.0.1
+ - host: 127.0.0.1
database:
version: 3.0
cassandra: