aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/salt-formulas/opendaylight/client.sls
blob: dba51b39917746b3c46c5eff8141f81b840db990 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
##############################################################################
# Copyright (c) 2017 Mirantis Inc. and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Apache License, Version 2.0
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
{%- from "opendaylight/map.jinja" import client with context %}
{%- if client.get('enabled', True) %}

opendaylight_client_packages:
  pkg.installed:
  - pkgs: {{ client.pkgs }}

{%- if pillar.linux.network.bridge is defined and pillar.linux.network.bridge == 'openvswitch' %}
ovs_set_manager:
  cmd.run:
  - name: "ovs-vsctl set-manager {{ client.ovsdb_server_iface }} {{ client.ovsdb_odl_iface }}"
  - unless: "ovs-vsctl get-manager | grep -Fx {{ client.ovsdb_odl_iface }}"

ovs_set_tunnel_endpoint:
  cmd.run:
  - name: "ovs-vsctl set Open_vSwitch . other_config:local_ip={{ client.tunnel_ip }}"
  - unless: "ovs-vsctl get Open_vSwitch . other_config | fgrep local_ip"
  - require:
    - cmd: ovs_set_manager

{%- if client.provider_mappings is defined %}
ovs_set_provider_mapping:
  cmd.run:
  - name: "ovs-vsctl set Open_vSwitch . other_config:provider_mappings={{ client.provider_mappings }}"
  - unless: "ovs-vsctl get Open_vSwitch . other_config | fgrep provider_mappings"
  - require:
    - cmd: ovs_set_manager
{%- endif %}

{%- endif %}
{%- endif %}