infra-ansible/roles/deploy_site_pp/templates/site.pp.j2

151 lines
6.8 KiB
Django/Jinja

#
# Top-level variables
#
# There must not be any whitespace between this comment and the variables or
# in between any two variables in order for them to be correctly parsed and
# passed around in test.sh
#
#
# Default: should at least behave like an openstack server
#
node default {
class { 'openstack_project::server':
sysadmins => hiera('sysadmins', []),
}
}
#
# Long lived servers:
#
node 'review-dev.openstack.org' {
class { 'openstack_project::review_dev':
project_config_repo => 'https://git.openstack.org/openstack-infra/project-config',
github_oauth_token => hiera('gerrit_dev_github_token', 'XXX'),
github_project_username => hiera('github_dev_project_username', 'username'),
github_project_password => hiera('github_dev_project_password', 'XXX'),
mysql_host => hiera('gerrit_dev_mysql_host', 'localhost'),
mysql_password => hiera('gerrit_dev_mysql_password', 'XXX'),
email_private_key => hiera('gerrit_dev_email_private_key', 'XXX'),
contactstore_appsec => hiera('gerrit_dev_contactstore_appsec', 'XXX'),
contactstore_pubkey => hiera('gerrit_dev_contactstore_pubkey', 'XXX'),
ssh_dsa_key_contents => hiera('gerrit_dev_ssh_dsa_key_contents', 'XXX'),
ssh_dsa_pubkey_contents => hiera('gerrit_dev_ssh_dsa_pubkey_contents', 'XXX'),
ssh_rsa_key_contents => hiera('gerrit_dev_ssh_rsa_key_contents', 'XXX'),
ssh_rsa_pubkey_contents => hiera('gerrit_dev_ssh_rsa_pubkey_contents', 'XXX'),
ssh_project_rsa_key_contents => hiera('gerrit_dev_project_ssh_rsa_key_contents', 'XXX'),
ssh_project_rsa_pubkey_contents => hiera('gerrit_dev_project_ssh_rsa_pubkey_contents', 'XXX'),
lp_sync_consumer_key => hiera('gerrit_dev_lp_consumer_key', 'XXX'),
lp_sync_token => hiera('gerrit_dev_lp_access_token', 'XXX'),
lp_sync_secret => hiera('gerrit_dev_lp_access_secret', 'XXX'),
sysadmins => hiera('sysadmins', []),
}
}
node '{{ groups['meta-infra_type_jenkins'][0] }}' {
$group = "jenkins"
class { 'openstack_project::jenkins':
project_config_repo => 'https://git.openstack.org/openstack-infra/project-config',
jenkins_jobs_password => hiera('jenkins_jobs_password', 'XXX'),
jenkins_ssh_private_key => hiera('jenkins_ssh_private_key_contents', 'XXX'),
ssl_cert_file => '/etc/ssl/certs/ssl-cert-snakeoil.pem',
ssl_key_file => '/etc/ssl/private/ssl-cert-snakeoil.key',
ssl_chain_file => '',
sysadmins => hiera('sysadmins', []),
zmq_event_receivers => ['{{ groups['meta-infra_type_nodepool'][0] }}'],
}
}
node '{{ groups['meta-infra_type_puppetmaster'][0] }}' {
class { 'openstack_project::puppetmaster':
root_rsa_key => hiera('puppetmaster_root_rsa_key', 'XXX'),
sysadmins => hiera('sysadmins', []),
version => '3.6.',
puppetmaster_server => '{{ groups['meta-infra_type_puppetmaster'][0] }}',
puppetdb => false,
}
}
node 'puppetdb.openstack.org' {
class { 'openstack_project::puppetdb':
sysadmins => hiera('sysadmins', []),
}
}
node 'nodepool.openstack.org' {
class { 'openstack_project::nodepool_prod':
project_config_repo => 'https://git.openstack.org/openstack-infra/project-config',
mysql_password => hiera('nodepool_mysql_password', 'XXX'),
mysql_root_password => hiera('nodepool_mysql_root_password', 'XXX'),
nodepool_ssh_private_key => hiera('jenkins_ssh_private_key_contents', 'XXX'),
sysadmins => hiera('sysadmins', []),
statsd_host => 'graphite.openstack.org',
jenkins_api_user => hiera('jenkins_api_user', 'username'),
jenkins_api_key => hiera('jenkins_api_key', 'XXX'),
jenkins_credentials_id => hiera('jenkins_credentials_id', 'XXX'),
rackspace_username => hiera('nodepool_rackspace_username', 'username'),
rackspace_password => hiera('nodepool_rackspace_password', 'XXX'),
rackspace_project => hiera('nodepool_rackspace_project', 'project'),
hpcloud_username => hiera('nodepool_hpcloud_username', 'username'),
hpcloud_password => hiera('nodepool_hpcloud_password', 'XXX'),
hpcloud_project => hiera('nodepool_hpcloud_project', 'project'),
tripleo_username => hiera('nodepool_tripleo_username', 'username'),
tripleo_password => hiera('nodepool_tripleo_password', 'XXX'),
tripleo_project => hiera('nodepool_tripleo_project', 'project'),
}
}
node /^zm\d+\.openstack\.org$/ {
$group = "zuul-merger"
class { 'openstack_project::zuul_merger':
gearman_server => 'zuul.openstack.org',
gerrit_server => 'review.openstack.org',
gerrit_user => 'jenkins',
gerrit_ssh_host_key => hiera('gerrit_ssh_rsa_pubkey_contents', 'XXX'),
zuul_ssh_private_key => hiera('zuul_ssh_private_key_contents', 'XXX'),
sysadmins => hiera('sysadmins', []),
}
}
node 'zuul-dev.openstack.org' {
class { 'openstack_project::zuul_dev':
project_config_repo => 'https://git.openstack.org/openstack-infra/project-config',
gerrit_server => 'review-dev.openstack.org',
gerrit_user => 'jenkins',
gerrit_ssh_host_key => hiera('gerrit_dev_ssh_rsa_pubkey_contents', 'XXX'),
zuul_ssh_private_key => hiera('zuul_dev_ssh_private_key_contents', 'XXX'),
url_pattern => 'http://logs.openstack.org/{build.parameters[LOG_PATH]}',
zuul_url => 'http://zuul-dev.openstack.org/p',
sysadmins => hiera('sysadmins', []),
statsd_host => 'graphite.openstack.org',
gearman_workers => [
'jenkins.openstack.org',
'jenkins01.openstack.org',
'jenkins02.openstack.org',
'jenkins03.openstack.org',
'jenkins04.openstack.org',
'jenkins05.openstack.org',
'jenkins06.openstack.org',
'jenkins07.openstack.org',
'jenkins-dev.openstack.org',
],
}
}
node 'pypi.slave.openstack.org' {
include openstack_project
class { 'openstack_project::pypi_slave':
pypi_username => 'openstackci',
pypi_password => hiera('pypi_password', 'XXX'),
jenkins_ssh_public_key => $openstack_project::jenkins_ssh_key,
jenkinsci_username => hiera('jenkins_ci_org_user', 'username'),
jenkinsci_password => hiera('jenkins_ci_org_password', 'XXX'),
mavencentral_username => hiera('mavencentral_org_user', 'username'),
mavencentral_password => hiera('mavencentral_org_password', 'XXX'),
puppet_forge_username => hiera('puppet_forge_username', 'username'),
puppet_forge_password => hiera('puppet_forge_password', 'XXX'),
}
}
# vim:sw=2:ts=2:expandtab:textwidth=79