Puppet Class: heat::db

Defined in:
manifests/db.pp

Overview

Class: heat::db

Configure the Heat database

Parameters

database_connection

Url used to connect to database. (Optional) Defaults to ‘sqlite:////var/lib/heat/heat.sqlite’.

database_connection_recycle_time

Timeout when db connections should be reaped. (Optional) Defaults to $facts.

database_max_pool_size

Maximum number of SQL connections to keep open in a pool. (Optional) Defaults to $facts.

database_max_retries

Maximum db connection retries during startup. Setting -1 implies an infinite retry count. (Optional) Defaults to $facts.

database_retry_interval

Interval between retries of opening a sql connection. (Optional) Defaults to $facts.

database_max_overflow

If set, use this value for max_overflow with sqlalchemy. (Optional) Defaults to $facts.

database_pool_timeout

(Optional) If set, use this value for pool_timeout with SQLAlchemy. Defaults to $facts

database_db_max_retries

(Optional) Maximum retries in case of connection error or deadlock error before error is raised. Set to -1 to specify an infinite retry count. Defaults to $facts

mysql_enable_ndb

(Optional) If True, transparently enables support for handling MySQL Cluster (NDB). Defaults to $facts

sync_db

(Optional) Run db sync on nodes after connection setting has been set. Defaults to true

Parameters:

  • database_connection (Any) (defaults to: 'sqlite:////var/lib/heat/heat.sqlite')
  • database_connection_recycle_time (Any) (defaults to: $facts['os_service_default'])
  • database_max_pool_size (Any) (defaults to: $facts['os_service_default'])
  • database_max_retries (Any) (defaults to: $facts['os_service_default'])
  • database_retry_interval (Any) (defaults to: $facts['os_service_default'])
  • database_max_overflow (Any) (defaults to: $facts['os_service_default'])
  • database_pool_timeout (Any) (defaults to: $facts['os_service_default'])
  • mysql_enable_ndb (Any) (defaults to: $facts['os_service_default'])
  • database_db_max_retries (Any) (defaults to: $facts['os_service_default'])
  • sync_db (Any) (defaults to: true)


50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# File 'manifests/db.pp', line 50

class heat::db (
  $database_connection              = 'sqlite:////var/lib/heat/heat.sqlite',
  $database_connection_recycle_time = $facts['os_service_default'],
  $database_max_pool_size           = $facts['os_service_default'],
  $database_max_retries             = $facts['os_service_default'],
  $database_retry_interval          = $facts['os_service_default'],
  $database_max_overflow            = $facts['os_service_default'],
  $database_pool_timeout            = $facts['os_service_default'],
  $mysql_enable_ndb                 = $facts['os_service_default'],
  $database_db_max_retries          = $facts['os_service_default'],
  $sync_db                          = true,
) {

  include heat::deps
  validate_legacy(Boolean, 'validate_bool', $sync_db)

  oslo::db { 'heat_config':
    connection              => $database_connection,
    connection_recycle_time => $database_connection_recycle_time,
    max_pool_size           => $database_max_pool_size,
    max_retries             => $database_max_retries,
    retry_interval          => $database_retry_interval,
    max_overflow            => $database_max_overflow,
    pool_timeout            => $database_pool_timeout,
    mysql_enable_ndb        => $mysql_enable_ndb,
    db_max_retries          => $database_db_max_retries,
  }

  if $sync_db {
    include heat::db::sync
  }

}