2012-11-15 14:25:13 -08:00
|
|
|
# == Class: openstack_project::static
|
|
|
|
#
|
2012-09-06 10:32:48 -07:00
|
|
|
class openstack_project::static (
|
2014-07-03 13:56:16 +10:00
|
|
|
$swift_authurl = '',
|
|
|
|
$swift_user = '',
|
|
|
|
$swift_key = '',
|
|
|
|
$swift_tenant_name = '',
|
|
|
|
$swift_region_name = '',
|
|
|
|
$swift_default_container = '',
|
2014-09-19 18:25:26 -07:00
|
|
|
$project_config_repo = '',
|
2015-02-11 21:59:50 +00:00
|
|
|
$security_ssl_cert_file_contents = '',
|
|
|
|
$security_ssl_key_file_contents = '',
|
|
|
|
$security_ssl_chain_file_contents = '',
|
2015-03-05 13:28:05 +01:00
|
|
|
$jenkins_gitfullname = 'OpenStack Jenkins',
|
|
|
|
$jenkins_gitemail = 'jenkins@openstack.org',
|
2012-09-06 10:32:48 -07:00
|
|
|
) {
|
2014-09-19 18:25:26 -07:00
|
|
|
class { 'project_config':
|
|
|
|
url => $project_config_repo,
|
|
|
|
}
|
|
|
|
|
2012-09-10 10:08:23 -07:00
|
|
|
include openstack_project
|
2012-08-15 09:30:14 -07:00
|
|
|
class { 'jenkins::jenkinsuser':
|
2015-03-05 13:28:05 +01:00
|
|
|
ssh_key => $openstack_project::jenkins_ssh_key,
|
|
|
|
gitfullname => $jenkins_gitfullname,
|
|
|
|
gitemail => $jenkins_gitemail,
|
2012-08-15 09:30:14 -07:00
|
|
|
}
|
|
|
|
|
2015-07-06 13:05:17 -04:00
|
|
|
include ::httpd
|
|
|
|
include ::httpd::mod::wsgi
|
2012-08-10 15:38:08 -07:00
|
|
|
|
2015-07-06 13:05:17 -04:00
|
|
|
httpd_mod { 'rewrite':
|
2012-12-26 11:40:25 -08:00
|
|
|
ensure => present,
|
|
|
|
}
|
2015-07-06 13:05:17 -04:00
|
|
|
httpd_mod { 'proxy':
|
2012-12-26 11:40:25 -08:00
|
|
|
ensure => present,
|
|
|
|
}
|
2015-07-06 13:05:17 -04:00
|
|
|
httpd_mod { 'proxy_http':
|
2012-12-26 11:40:25 -08:00
|
|
|
ensure => present,
|
|
|
|
}
|
|
|
|
|
2014-09-04 09:37:57 -07:00
|
|
|
if ! defined(File['/srv/static']) {
|
|
|
|
file { '/srv/static':
|
|
|
|
ensure => directory,
|
|
|
|
}
|
2013-03-28 14:49:10 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
###########################################################
|
|
|
|
# Tarballs
|
|
|
|
|
2015-07-06 13:05:17 -04:00
|
|
|
::httpd::vhost { 'tarballs.openstack.org':
|
2012-08-10 15:38:08 -07:00
|
|
|
port => 80,
|
|
|
|
priority => '50',
|
|
|
|
docroot => '/srv/static/tarballs',
|
|
|
|
require => File['/srv/static/tarballs'],
|
|
|
|
}
|
|
|
|
|
2013-03-28 14:49:10 -07:00
|
|
|
file { '/srv/static/tarballs':
|
|
|
|
ensure => directory,
|
|
|
|
owner => 'jenkins',
|
|
|
|
group => 'jenkins',
|
|
|
|
require => User['jenkins'],
|
|
|
|
}
|
|
|
|
|
|
|
|
###########################################################
|
2015-04-16 15:39:12 +00:00
|
|
|
# legacy ci.openstack.org site redirect
|
2013-03-28 14:49:10 -07:00
|
|
|
|
2015-07-06 13:05:17 -04:00
|
|
|
::httpd::vhost { 'ci.openstack.org':
|
2015-04-16 15:39:12 +00:00
|
|
|
port => 80,
|
|
|
|
priority => '50',
|
|
|
|
docroot => 'MEANINGLESS_ARGUMENT',
|
|
|
|
template => 'openstack_project/ci.vhost.erb',
|
2013-03-28 14:49:10 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
###########################################################
|
|
|
|
# Logs
|
2015-03-24 15:49:19 -07:00
|
|
|
class { 'openstackci::logserver':
|
|
|
|
jenkins_ssh_key => $openstack_project::jenkins_ssh_key,
|
|
|
|
domain => 'openstack.org',
|
|
|
|
swift_authurl => $swift_authurl,
|
|
|
|
swift_user => $swift_user,
|
|
|
|
swift_key => $swift_key,
|
|
|
|
swift_tenant_name => $swift_tenant_name,
|
|
|
|
swift_region_name => $swift_region_name,
|
|
|
|
swift_default_container => $swift_default_container,
|
2013-03-25 11:30:37 -07:00
|
|
|
}
|
|
|
|
|
2013-03-28 14:49:10 -07:00
|
|
|
###########################################################
|
|
|
|
# Docs-draft
|
|
|
|
|
2015-07-06 13:05:17 -04:00
|
|
|
::httpd::vhost { 'docs-draft.openstack.org':
|
2012-11-02 13:39:03 -07:00
|
|
|
port => 80,
|
|
|
|
priority => '50',
|
|
|
|
docroot => '/srv/static/docs-draft',
|
|
|
|
require => File['/srv/static/docs-draft'],
|
|
|
|
}
|
|
|
|
|
2013-03-28 14:49:10 -07:00
|
|
|
file { '/srv/static/docs-draft':
|
2012-12-21 14:14:13 -08:00
|
|
|
ensure => directory,
|
|
|
|
owner => 'jenkins',
|
|
|
|
group => 'jenkins',
|
|
|
|
require => User['jenkins'],
|
2012-08-10 15:38:08 -07:00
|
|
|
}
|
|
|
|
|
2013-03-28 14:49:10 -07:00
|
|
|
file { '/srv/static/docs-draft/robots.txt':
|
|
|
|
ensure => present,
|
|
|
|
owner => 'root',
|
|
|
|
group => 'root',
|
|
|
|
mode => '0444',
|
|
|
|
source => 'puppet:///modules/openstack_project/disallow_robots.txt',
|
|
|
|
require => File['/srv/static/docs-draft'],
|
2012-08-10 15:38:08 -07:00
|
|
|
}
|
|
|
|
|
2014-11-07 20:09:46 +00:00
|
|
|
###########################################################
|
|
|
|
# Security
|
|
|
|
|
2015-07-06 13:05:17 -04:00
|
|
|
::httpd::vhost { 'security.openstack.org':
|
2015-02-11 21:59:50 +00:00
|
|
|
port => 443, # Is required despite not being used.
|
|
|
|
docroot => '/srv/static/security',
|
|
|
|
priority => '50',
|
|
|
|
ssl => true,
|
|
|
|
template => 'openstack_project/security.vhost.erb',
|
|
|
|
vhost_name => 'security.openstack.org',
|
|
|
|
require => File['/srv/static/security'],
|
2014-11-07 20:09:46 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
file { '/srv/static/security':
|
|
|
|
ensure => directory,
|
|
|
|
owner => 'jenkins',
|
|
|
|
group => 'jenkins',
|
|
|
|
require => User['jenkins'],
|
|
|
|
}
|
|
|
|
|
2015-02-11 21:59:50 +00:00
|
|
|
file { '/etc/ssl/certs':
|
|
|
|
ensure => directory,
|
|
|
|
owner => 'root',
|
|
|
|
group => 'root',
|
|
|
|
mode => '0755',
|
|
|
|
}
|
|
|
|
|
|
|
|
file { '/etc/ssl/private':
|
|
|
|
ensure => directory,
|
|
|
|
owner => 'root',
|
|
|
|
group => 'root',
|
|
|
|
mode => '0700',
|
|
|
|
}
|
|
|
|
|
|
|
|
file { '/etc/ssl/certs/security.openstack.org.pem':
|
|
|
|
ensure => present,
|
|
|
|
owner => 'root',
|
|
|
|
group => 'root',
|
|
|
|
mode => '0644',
|
|
|
|
content => $security_ssl_cert_file_contents,
|
|
|
|
require => File['/etc/ssl/certs'],
|
2015-07-06 13:05:17 -04:00
|
|
|
before => Httpd::Vhost['security.openstack.org'],
|
2015-02-11 21:59:50 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
file { '/etc/ssl/private/security.openstack.org.key':
|
|
|
|
ensure => present,
|
|
|
|
owner => 'root',
|
|
|
|
group => 'root',
|
|
|
|
mode => '0600',
|
|
|
|
content => $security_ssl_key_file_contents,
|
|
|
|
require => File['/etc/ssl/private'],
|
2015-07-06 13:05:17 -04:00
|
|
|
before => Httpd::Vhost['security.openstack.org'],
|
2015-02-11 21:59:50 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
file { '/etc/ssl/certs/security.openstack.org_intermediate.pem':
|
|
|
|
ensure => present,
|
|
|
|
owner => 'root',
|
|
|
|
group => 'root',
|
|
|
|
mode => '0644',
|
|
|
|
content => $security_ssl_chain_file_contents,
|
|
|
|
require => File['/etc/ssl/certs'],
|
2015-07-06 13:05:17 -04:00
|
|
|
before => Httpd::Vhost['security.openstack.org'],
|
2015-02-11 21:59:50 +00:00
|
|
|
}
|
|
|
|
|
2014-11-02 15:25:08 +00:00
|
|
|
###########################################################
|
|
|
|
# Governance
|
|
|
|
|
2015-07-06 13:05:17 -04:00
|
|
|
::httpd::vhost { 'governance.openstack.org':
|
2014-11-02 15:25:08 +00:00
|
|
|
port => 80,
|
|
|
|
priority => '50',
|
|
|
|
docroot => '/srv/static/governance',
|
|
|
|
require => File['/srv/static/governance'],
|
|
|
|
}
|
|
|
|
|
|
|
|
file { '/srv/static/governance':
|
|
|
|
ensure => directory,
|
|
|
|
owner => 'jenkins',
|
|
|
|
group => 'jenkins',
|
|
|
|
require => User['jenkins'],
|
|
|
|
}
|
|
|
|
|
2014-07-10 12:38:15 -04:00
|
|
|
###########################################################
|
|
|
|
# Specs
|
|
|
|
|
2015-07-06 13:05:17 -04:00
|
|
|
::httpd::vhost { 'specs.openstack.org':
|
2014-07-10 12:38:15 -04:00
|
|
|
port => 80,
|
|
|
|
priority => '50',
|
|
|
|
docroot => '/srv/static/specs',
|
|
|
|
require => File['/srv/static/specs'],
|
|
|
|
}
|
|
|
|
|
|
|
|
file { '/srv/static/specs':
|
|
|
|
ensure => directory,
|
|
|
|
owner => 'jenkins',
|
|
|
|
group => 'jenkins',
|
|
|
|
require => User['jenkins'],
|
|
|
|
}
|
|
|
|
|
2014-11-01 22:55:18 +00:00
|
|
|
###########################################################
|
|
|
|
# legacy summit.openstack.org site redirect
|
|
|
|
|
2015-07-06 13:05:17 -04:00
|
|
|
::httpd::vhost { 'summit.openstack.org':
|
2014-11-01 22:55:18 +00:00
|
|
|
port => 80,
|
|
|
|
priority => '50',
|
|
|
|
docroot => 'MEANINGLESS_ARGUMENT',
|
|
|
|
template => 'openstack_project/summit.vhost.erb',
|
|
|
|
}
|
|
|
|
|
2014-10-21 18:41:14 +00:00
|
|
|
###########################################################
|
|
|
|
# legacy devstack.org site redirect
|
|
|
|
|
2015-07-06 13:05:17 -04:00
|
|
|
::httpd::vhost { 'devstack.org':
|
2014-10-21 18:41:14 +00:00
|
|
|
port => 80,
|
|
|
|
priority => '50',
|
|
|
|
docroot => 'MEANINGLESS_ARGUMENT',
|
|
|
|
serveraliases => ['*.devstack.org'],
|
|
|
|
template => 'openstack_project/devstack.vhost.erb',
|
|
|
|
}
|
2015-06-23 20:58:54 +00:00
|
|
|
|
|
|
|
###########################################################
|
|
|
|
# Trystack
|
|
|
|
|
2015-07-06 13:05:17 -04:00
|
|
|
::httpd::vhost { 'trystack.openstack.org':
|
2015-06-23 20:58:54 +00:00
|
|
|
port => 80,
|
|
|
|
priority => '50',
|
|
|
|
docroot => '/opt/trystack',
|
|
|
|
template => 'openstack_project/trystack.vhost.erb',
|
|
|
|
require => Vcsrepo['/opt/trystack'],
|
|
|
|
}
|
|
|
|
|
|
|
|
vcsrepo { '/opt/trystack':
|
|
|
|
ensure => latest,
|
|
|
|
provider => git,
|
|
|
|
revision => 'master',
|
|
|
|
source => 'https://git.openstack.org/openstack-infra/trystack-site',
|
|
|
|
}
|
2012-08-10 15:38:08 -07:00
|
|
|
}
|