<commit_before>---
include:
  default:
    - profile::openstack::compute::migration
    - profile::openstack::compute::hypervisor
    - profile::openstack::volume
    - profile::openstack::network
    - profile::logging::rsyslog::client
    - profile::openstack::openrc
    - profile::application::rngd
  kickstart:
    - profile::base::lvm
    - profile::virtualization::nested
    - profile::network::yum_proxy
    - profile::monitoring::sensu::agent
  bootstrap:
    - profile::base::lvm
    - profile::network::yum_proxy

# Manage default availability zone
profile::openstack::compute::manage_az:            true

profile::base::network::manage_httpproxy: true
profile::network::yum_proxy::yum_proxy:   "http://%{hiera('mgmt__address__proxy')}:8888"

# enable rng daemon for better entropy
profile::application::rngd::enable:       true

# Source proxy for internet access during puppetrun
#puppet::cron_cmd: "if [ -e /root/proxy.sh ] ; then source /root/proxy.sh ; fi ; \
#  /usr/bin/env puppet agent --config %{puppet::dir}/puppet.conf --onetime --no-daemonize"
puppet::cron_cmd: "if [ -e /root/proxy.sh ] ; then source /root/proxy.sh ; fi ; \
  /opt/puppetlabs/bin/puppet agent --config /etc/puppetlabs/puppet/puppet.conf --onetime --no-daemonize"

profile::openstack::compute::migration::enable_nova_account: true
# Set .ssh dir for nova to 0755 to enable sensu checks
profile::openstack::compute::migration::chmod_ssh_dir:       true
# Enable intance migration via ssh
profile::firewall::pre::ssh_settings:
  source: "0.0.0.0/0" #FIXME (limit source)
# compute nodes write firewall rules on the fly, thou shalt not purge
profile::base::firewall::purge_firewall: false

openstack_extras::repo::redhat::redhat::manage_rdo: false
profile::base::common::manage_lvm: true

profile::openstack::openrc::password:     "%{<PASSWORD>('nova_<PASSWORD>')}"
profile::openstack::openrc::username:     'nova'
profile::openstack::openrc::project_name: 'services'

profile::openstack::network::plugin: calico

profile::base::common::packages:
  'networking-calico': {}
  'gcc-c++': {}
  'bash-completion': {}
  'bash-completion-extras': {}
  'jq': {}
  'openstack-selinux': {}

# Sensu (needs gcc-c++)
profile::monitoring::sensu::agent::plugins:
  sensu-plugins-http:
    type:         package
    pkg_version:  '2.8.4'

profile::monitoring::sensu::agent::plugin_gems:
  sensu-plugins-himlar:
    ensure:   '0.1.0'
    provider: 'sensu_gem'
    source:   'http://download.iaas.uio.no/uh-iaas/gem'

# metadata api check
profile::monitoring::sensu::agent::checks:
  'metadata-api':
    command:      "check-http.rb -u http://127.0.0.1:8775"
    interval:     60
    subscribers:  ['checks']
  'etcd-client-health':
    command:      "check-http.rb -u http://127.0.0.1:2379/health -q 'true' --response-code 405"
    interval:     60
    subscribers:  ['checks']
  'nova-ssh-key':
    command:      "sudo /opt/sensu/embedded/bin/check-file-exists.rb -f /var/lib/nova/.ssh/id_rsa"
    interval:     60
    subscribers:  ['checks']
  'metrics-disk':
    type:         'metric'
    command:      'metrics-disk-usage.rb --scheme disk.%{::hostname} -f -B G'
    interval:     60
    subscribers:  ['metrics']
    handlers:     ['graphite_tcp']

sudo::configs:
  sensu_tty:
    priority:   20
    content:    'Defaults:sensu !requiretty'
  sensu:
    priority:   25
    content:    'sensu ALL = (root) NOPASSWD: /opt/sensu/embedded/bin/check-file-exists.rb -f /var/lib/nova/.ssh/id_rsa'


profile::openstack::compute::hypervisor::fix_snapshot_loc: true # FIXME - Should probably be removed for newton release

profile::openstack::telemetry::polling::polling_interval:  3600 # FIXME

calico::compute: true
etcd::mode: 'proxy'

calico::compute::bird_template:  'profile/bird/bird.conf.erb'
calico::compute::bird6_template: 'profile/bird/bird6.conf.erb'

named_interfaces::config:
  mgmt:
    - em3
  transport: #FIXME
    - team1
  trp:
    - team1
  service: #FIXME
    - team1
  live:
    - team1.120

sudo::purge: false

profile::base::lvm::physical_volume:
  '/dev/sda3':
    ensure: present
    force:  true
profile::base::lvm::volume_group:
  'vg_ext':
    physical_volumes:
      - /dev/sda3
profile::base::lvm::logical_volume:
  'lv_instances':
    volume_group: 'vg_ext'
    fs_type:      "xfs"
    mountpath:    "/var/lib/nova/instances"

# Enable extra yum repo
profile::base::yumrepo::repo_hash:
  rdo-release:
    ensure: present
#    exclude: 'openstack-neutron openstack-neutron-common python-neutron'
  calico26:
    ensure: present
    exclude: 'calico-dhcp-agent' #FIXME
  ceph-%{hiera('ceph_version')}:
    ensure: present
  centos-qemu-ev:
    ensure: present
  epel: # should be absent when using RDO, but whitelist can also work
    ensure:   present
    includepkgs: 'htop bash-completion-extras lttng-ust userspace-rcu libbabeltrace leveldb'

# Compute nodes need only admin and cinder keys
ceph::profile::params::client_keys:
  'client.admin':
    secret: "%{hiera('client_admin::secret')}"
    mode: '0600'<commit_msg>add bird to epel include list<commit_after>---
include:
  default:
    - profile::openstack::compute::migration
    - profile::openstack::compute::hypervisor
    - profile::openstack::volume
    - profile::openstack::network
    - profile::logging::rsyslog::client
    - profile::openstack::openrc
    - profile::application::rngd
  kickstart:
    - profile::base::lvm
    - profile::virtualization::nested
    - profile::network::yum_proxy
    - profile::monitoring::sensu::agent
  bootstrap:
    - profile::base::lvm
    - profile::network::yum_proxy

# Manage default availability zone
profile::openstack::compute::manage_az:            true

profile::base::network::manage_httpproxy: true
profile::network::yum_proxy::yum_proxy:   "http://%{hiera('mgmt__address__proxy')}:8888"

# enable rng daemon for better entropy
profile::application::rngd::enable:       true

# Source proxy for internet access during puppetrun
#puppet::cron_cmd: "if [ -e /root/proxy.sh ] ; then source /root/proxy.sh ; fi ; \
#  /usr/bin/env puppet agent --config %{puppet::dir}/puppet.conf --onetime --no-daemonize"
puppet::cron_cmd: "if [ -e /root/proxy.sh ] ; then source /root/proxy.sh ; fi ; \
  /opt/puppetlabs/bin/puppet agent --config /etc/puppetlabs/puppet/puppet.conf --onetime --no-daemonize"

profile::openstack::compute::migration::enable_nova_account: true
# Set .ssh dir for nova to 0755 to enable sensu checks
profile::openstack::compute::migration::chmod_ssh_dir:       true
# Enable intance migration via ssh
profile::firewall::pre::ssh_settings:
  source: "0.0.0.0/0" #FIXME (limit source)
# compute nodes write firewall rules on the fly, thou shalt not purge
profile::base::firewall::purge_firewall: false

openstack_extras::repo::redhat::redhat::manage_rdo: false
profile::base::common::manage_lvm: true

profile::openstack::openrc::password:     "%{h<PASSWORD>('nova_api_password')}"
profile::openstack::openrc::username:     'nova'
profile::openstack::openrc::project_name: 'services'

profile::openstack::network::plugin: calico

profile::base::common::packages:
  'networking-calico': {}
  'gcc-c++': {}
  'bash-completion': {}
  'bash-completion-extras': {}
  'jq': {}
  'openstack-selinux': {}

# Sensu (needs gcc-c++)
profile::monitoring::sensu::agent::plugins:
  sensu-plugins-http:
    type:         package
    pkg_version:  '2.8.4'

profile::monitoring::sensu::agent::plugin_gems:
  sensu-plugins-himlar:
    ensure:   '0.1.0'
    provider: 'sensu_gem'
    source:   'http://download.iaas.uio.no/uh-iaas/gem'

# metadata api check
profile::monitoring::sensu::agent::checks:
  'metadata-api':
    command:      "check-http.rb -u http://127.0.0.1:8775"
    interval:     60
    subscribers:  ['checks']
  'etcd-client-health':
    command:      "check-http.rb -u http://127.0.0.1:2379/health -q 'true' --response-code 405"
    interval:     60
    subscribers:  ['checks']
  'nova-ssh-key':
    command:      "sudo /opt/sensu/embedded/bin/check-file-exists.rb -f /var/lib/nova/.ssh/id_rsa"
    interval:     60
    subscribers:  ['checks']
  'metrics-disk':
    type:         'metric'
    command:      'metrics-disk-usage.rb --scheme disk.%{::hostname} -f -B G'
    interval:     60
    subscribers:  ['metrics']
    handlers:     ['graphite_tcp']

sudo::configs:
  sensu_tty:
    priority:   20
    content:    'Defaults:sensu !requiretty'
  sensu:
    priority:   25
    content:    'sensu ALL = (root) NOPASSWD: /opt/sensu/embedded/bin/check-file-exists.rb -f /var/lib/nova/.ssh/id_rsa'


profile::openstack::compute::hypervisor::fix_snapshot_loc: true # FIXME - Should probably be removed for newton release

profile::openstack::telemetry::polling::polling_interval:  3600 # FIXME

calico::compute: true
etcd::mode: 'proxy'

calico::compute::bird_template:  'profile/bird/bird.conf.erb'
calico::compute::bird6_template: 'profile/bird/bird6.conf.erb'

named_interfaces::config:
  mgmt:
    - em3
  transport: #FIXME
    - team1
  trp:
    - team1
  service: #FIXME
    - team1
  live:
    - team1.120

sudo::purge: false

profile::base::lvm::physical_volume:
  '/dev/sda3':
    ensure: present
    force:  true
profile::base::lvm::volume_group:
  'vg_ext':
    physical_volumes:
      - /dev/sda3
profile::base::lvm::logical_volume:
  'lv_instances':
    volume_group: 'vg_ext'
    fs_type:      "xfs"
    mountpath:    "/var/lib/nova/instances"

# Enable extra yum repo
profile::base::yumrepo::repo_hash:
  rdo-release:
    ensure: present
#    exclude: 'openstack-neutron openstack-neutron-common python-neutron'
  calico26:
    ensure: present
    exclude: 'calico-dhcp-agent' #FIXME
  ceph-%{hiera('ceph_version')}:
    ensure: present
  centos-qemu-ev:
    ensure: present
  epel: # should be absent when using RDO, but whitelist can also work
    ensure:   present
    includepkgs: 'bird bird6 htop bash-completion-extras lttng-ust userspace-rcu libbabeltrace leveldb'

# Compute nodes need only admin and cinder keys
ceph::profile::params::client_keys:
  'client.admin':
    secret: "%{hiera('client_admin::secret')}"
    mode: '0600'
{'fraction_non_alphanumeric': 0.15221274062313953, 'fraction_numerical': 0.015181583647549117, 'mean_word_length': 3.9117933723196883, 'pattern_counts': {'":': 0, '<': 6, '<?xml version=': 0, '>': 6, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 6, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5377388', 'n_tokens_mistral': 3710, 'n_tokens_neox': 3566, 'n_words': 668}