bird
: Install and configure bird
bird::snippet
: manage a partial bird config file on setups with many peers it's common to save each peer in a single file. This is possible with this defined resource. Your bird config needs to contain an include statement!
Install and configure bird
class { 'bird':
config_file_v4 => 'puppet:///modules/bgp/ldn/bird.conf',
}
class { 'bird':
enable_v6 => true,
config_file_v4 => 'puppet:///modules/bgp/ldn/bird.conf',
config_file_v6 => 'puppet:///modules/bgp/ldn/bird6.conf',
}
The following parameters are available in the bird
class:
config_file_v4
config_template_v4
config_epp_v4
config_epp_v4_data
daemon_name_v6
package_name_v6
daemon_name_v4
package_name_v4
config_path_v6
config_path_v4
enable_v6
manage_conf
manage_service
service_v6_ensure
service_v6_enable
service_v4_ensure
service_v4_enable
config_file_v6
config_template_v6
config_epp_v6
config_epp_v6_data
manage_repo
config_content_v4
config_content_v6
v4_path
v6_path
purge_unmanaged_snippets
snippets
Data type: Optional[Stdlib::Filesource]
Bird configuration file for IPv4.
Default value: undef
Data type: Optional[String[1]]
Bird configuration template for IPv4. This value is a template source, it will be passed into the template() function.
Default value: undef
Data type: Optional[String[1]]
Bird configuration template for IPv4. This value is an epp source, it will be passed into the epp() function.
Default value: undef
Data type: Hash[String[1], Any]
Bird configuration template data for IPv4. This value is an epp data source will be passed into the epp() function.
Default value: {}
Data type: String[1]
The service name used by puppet resource
Default value: 'bird6'
Data type: String[1]
The package name used by puppet resource
Data type: String[1]
The service name used by puppet resource
Default value: 'bird'
Data type: String[1]
The package name used by puppet resource
Default value: 'bird'
Data type: Stdlib::Absolutepath
The full path of the v6 configuration file
Data type: Stdlib::Absolutepath
The full path of the v4 configuration file
Data type: Boolean
Boolean for enable IPv6 (install bird6 package). Defaults to false and it's only required if you use a legacy distribution that ships bird + bird6. Newer releases have native IPv6 support.
Data type: Boolean
Boolean, global parameter to disable or enable mangagment of bird configuration files.
Default value: false
Data type: Boolean
Boolean, global parameter to disable or enable mangagment of bird service.
Default value: false
Data type: Stdlib::Ensure::Service
Bird IPv6 daemon ensure (shoud be running or stopped).
Default value: 'running'
Data type: Boolean
Boolean, enabled param of Bird IPv6 service (run at boot time).
Default value: false
Data type: Stdlib::Ensure::Service
Bird IPv4 daemon ensure (shoud be running or stopped).
Default value: 'running'
Data type: Boolean
Boolean, enabled param of Bird IPv4 service (run at boot time).
Default value: false
Data type: Optional[Stdlib::Filesource]
Bird configuration file for IPv6.
Default value: undef
Data type: Optional[String[1]]
Bird configuration template for IPv6. This value is a template source, it will be passed into the template() function.
Default value: undef
Data type: Optional[String[1]]
Bird configuration template for IPv6. This value is a epp source, it will be passed into the epp() function.
Default value: undef
Data type: Hash[String[1], Any]
Bird configuration template data for IPv4. This value is an epp data source will be passed into the epp() function.
Default value: {}
Data type: Boolean
Add the upstream repository from CZ.NIC. This is currently only supported for CentOS 7
Default value: false
Data type: Optional[String[1]]
A string that will be used for the bird config file
Default value: undef
Data type: Optional[String[1]]
A string that will be used for the bird6 config file
Default value: undef
Data type: Stdlib::Absolutepath
Path to the bird binary
Data type: Optional[Stdlib::Absolutepath]
Optional path to the bird6 binary. Only set on legacy operating systems that run bird1
Data type: Boolean
The module won't purge unmanaged snippets by default. By enabling this, Puppet will purge all of them except the ones created with bird::snippet()
Default value: false
Data type: Hash[String[1], Hash]
Hash of resources for bird::snippet()
Default value: {}
manage a partial bird config file on setups with many peers it's common to save each peer in a single file. This is possible with this defined resource. Your bird config needs to contain an include statement!
bird::snippet { 'AS4242420181':
content => "protocol bgp AS4242420181 from dnpeers {\n neighbor fe80::181:1%as20181 as 4242420181;\n}\n",
}
The following parameters are available in the bird::snippet
defined type:
Data type: Boolean
for bird1, there is a dedicated instance for IPv6. if this boolean is true, the config will be used for that instance
Default value: false
Data type: Boolean
if the new file should be validated. Beware: For some statements it's not possible to modify and validate them, in those cases you need to disable the check
Default value: true
Data type: Optional[Variant[String[1], Sensitive[String[1]]]]
The content of the snippet. You cannot provide this in combination with $source.
Default value: undef
Data type: Optional[Stdlib::Filesource]
the source of the snippet. You cannot provide this in combination with $content.
Default value: undef