39 lines
1 KiB
Puppet
39 lines
1 KiB
Puppet
#Class for SUNET-Drive-portal-Server
|
|
class sunetdrive::jupyter_site (
|
|
String $site_version = '0.0.1-1'
|
|
) {
|
|
|
|
$domain = 'jupyter.sunet.dev'
|
|
sunet::docker_compose { 'portal_compose':
|
|
content => template('sunetdrive/jupyter_site/docker-compose.erb.yaml'),
|
|
service_name => 'jupyter_site',
|
|
compose_dir => '/opt/',
|
|
compose_filename => 'docker-compose.yml',
|
|
description => 'Web server',
|
|
}
|
|
|
|
exec { 'workaround_docker_compose_dir':
|
|
command => 'mkdir -p /opt/jupyter_site/nginx',
|
|
unless => 'test -d /opt/jupyter_site/nginx',
|
|
}
|
|
|
|
$nginx_dirs = ['acme', 'certs', 'conf', 'dhparam', 'html', 'vhost']
|
|
$nginx_dirs.each | $dir| {
|
|
file { "/opt/jupyter_site/nginx/${dir}":
|
|
ensure => directory,
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0751',
|
|
}
|
|
}
|
|
sunet::misc::ufw_allow { 'https':
|
|
from => '0.0.0.0/0',
|
|
port => 443,
|
|
}
|
|
# For acme and redirect
|
|
sunet::misc::ufw_allow { 'http':
|
|
from => '0.0.0.0/0',
|
|
port => 80,
|
|
}
|
|
}
|