Puppet Class: openstack::octavia::service::epoxy

Defined in:
modules/openstack/manifests/octavia/service/epoxy.pp

Overview

Parameters:

  • db_user (String)
  • region (String)
  • memcached_nodes (Array[Stdlib::Fqdn])
  • rabbitmq_nodes (Array[Stdlib::Fqdn])
  • control_nodes (Array[Stdlib::IP::Address])
  • db_pass (String)
  • db_name (String)
  • db_host (Stdlib::Fqdn)
  • ldap_user_pass (String)
  • keystone_fqdn (Stdlib::Fqdn)
  • api_bind_port (Stdlib::Port)
  • rabbit_user (String)
  • rabbit_pass (String)
  • ca_passphrase (String)
  • amphora_secgroup (String)
  • amphora_flavor (String)
  • amphora_boot_network (String)
  • heartbeat_key (String)
  • octavia_project_id (String)


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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'modules/openstack/manifests/octavia/service/epoxy.pp', line 3

class openstack::octavia::service::epoxy(
    String $db_user,
    String $region,
    Array[Stdlib::Fqdn] $memcached_nodes,
    Array[Stdlib::Fqdn] $rabbitmq_nodes,
    Array[Stdlib::IP::Address] $control_nodes,
    String $db_pass,
    String $db_name,
    Stdlib::Fqdn $db_host,
    String $ldap_user_pass,
    Stdlib::Fqdn $keystone_fqdn,
    Stdlib::Port $api_bind_port,
    String $rabbit_user,
    String $rabbit_pass,
    String $ca_passphrase,
    String $amphora_secgroup,
    String $amphora_flavor,
    String $amphora_boot_network,
    String $heartbeat_key,
    String $octavia_project_id,
) {
    require "openstack::serverpackages::epoxy::${::lsbdistcodename}"

    $packages = [
        'octavia-api',
        'octavia-health-manager',
        'octavia-housekeeping',
        'octavia-worker',
        'python3-octavia',
        'python3-octaviaclient'
    ]
    package { $packages:
        ensure  => 'present',
    }

    $version = inline_template("<%= @title.split(':')[-1] -%>")
    $keystone_auth_username = 'octavia'
    $keystone_auth_project = 'octavia'
    file {
        '/etc/octavia/octavia.conf':
            content   => template('openstack/epoxy/octavia/octavia.conf.erb'),
            owner     => 'octavia',
            group     => 'octavia',
            mode      => '0440',
            show_diff => false,
            notify    => Service['octavia-api'],
            require   => Package['octavia-api'];
    }
    file {
        '/etc/octavia/policy.yaml':
            source  => 'puppet:///modules/openstack/epoxy/octavia/policy.yaml',
            owner   => 'root',
            group   => 'root',
            mode    => '0644',
            notify  => Service['octavia-api'],
            require => Package['octavia-api'];
    }
}