Loading files/lego 0 → 100644 +21 −0 Original line number Diff line number Diff line #! /bin/bash DOMAIN=itlab.stanford.edu ls /etc/apache2/sites-enabled |\ sed 's/^[0-9][0-9]-\(.*\)-ssl.conf$/\1/' |\ egrep -v '\.conf(\.disabled)?$' |\ sort -u |\ while read host; do lego -a \ --pem \ -m swl@stanford.edu \ -d ${host}.${DOMAIN} \ -k rsa4096 \ --http \ --http.webroot /var/www \ --path /etc/apache2/lego \ renew \ --days 30 \ --renew-hook "systemctl restart apache2" No newline at end of file files/lego-init 0 → 100644 +21 −0 Original line number Diff line number Diff line #! /bin/bash DOMAIN=itlab.stanford.edu ls /etc/apache2/sites-enabled |\ sed 's/^[0-9][0-9]-\(.*\)-ssl.conf$/\1/' |\ egrep -v '\.conf(\.disabled)?$' |\ sort -u |\ while read host; do lego -a \ --pem \ -m swl@stanford.edu \ -d ${host}.${DOMAIN} \ -k rsa4096 \ --http \ --http.webroot /var/www \ --path /etc/apache2/lego \ run \ systemctl restart apache2 No newline at end of file manifests/init.pp +51 −9 Original line number Diff line number Diff line Loading @@ -6,22 +6,54 @@ class webapp ( Hash $vhosts, Array[String] $mods, ) { file { [ '/usr/local/bin', '/etc/lego', ]: ensure => directory, owner => 'root', group => 'root', mode => '0755', } file { '/usr/local/bin': file { '/etc/lego/accounts': ensure => directory, owner => 'root', group => 'root', mode => '0755', source => '/efs/lego/accounts', require => Nfs::Client::Mount['/efs'], recurse => true, } file { '/usr/local/bin/dns-update': ensure => present, ensure => file, owner => 'root', group => 'root', mode => '0755', source => "puppet:///modules/${module_name}/dns-update", require => File['/usr/local/bin'], } file { '/usr/local/bin/lego': ensure => file, owner => 'root', group => 'root', mode => '0755', source => "puppet::///modules/${module_name}/lego", require => File['/usr/local/bin'], } file { '/usr/local/bin/lego-init': ensure => file, owner => 'root', group => 'root', mode => '0755', source => "puppet::///modules/${module_name}/lego-init", require => File['/usr/local/bin'], } systemd::unit_file { 'dns-update.service': content => file("${module_name}/dns-update.service"), enable => true, Loading @@ -29,7 +61,7 @@ class webapp ( require => File['/usr/local/bin/dns-update'], } class { '::nfs': class { 'nfs': server_enabled => false, client_enabled => true, nfs_v4_client => true, Loading @@ -53,7 +85,7 @@ class webapp ( 'php-opcache', ]: ensure => 'present' ensure => 'present', } class { 'apache': Loading @@ -76,4 +108,14 @@ class webapp ( } create_resources(webapp::vhost, $vhosts) exec { 'lego-init': command => '/usr/local/bin/lego-init', user => 'root', refreshonly => true, require => [ File['/usr/local/bin/lego-init'], Apache::Vhost['localhost'], ], } } Loading
files/lego 0 → 100644 +21 −0 Original line number Diff line number Diff line #! /bin/bash DOMAIN=itlab.stanford.edu ls /etc/apache2/sites-enabled |\ sed 's/^[0-9][0-9]-\(.*\)-ssl.conf$/\1/' |\ egrep -v '\.conf(\.disabled)?$' |\ sort -u |\ while read host; do lego -a \ --pem \ -m swl@stanford.edu \ -d ${host}.${DOMAIN} \ -k rsa4096 \ --http \ --http.webroot /var/www \ --path /etc/apache2/lego \ renew \ --days 30 \ --renew-hook "systemctl restart apache2" No newline at end of file
files/lego-init 0 → 100644 +21 −0 Original line number Diff line number Diff line #! /bin/bash DOMAIN=itlab.stanford.edu ls /etc/apache2/sites-enabled |\ sed 's/^[0-9][0-9]-\(.*\)-ssl.conf$/\1/' |\ egrep -v '\.conf(\.disabled)?$' |\ sort -u |\ while read host; do lego -a \ --pem \ -m swl@stanford.edu \ -d ${host}.${DOMAIN} \ -k rsa4096 \ --http \ --http.webroot /var/www \ --path /etc/apache2/lego \ run \ systemctl restart apache2 No newline at end of file
manifests/init.pp +51 −9 Original line number Diff line number Diff line Loading @@ -6,22 +6,54 @@ class webapp ( Hash $vhosts, Array[String] $mods, ) { file { [ '/usr/local/bin', '/etc/lego', ]: ensure => directory, owner => 'root', group => 'root', mode => '0755', } file { '/usr/local/bin': file { '/etc/lego/accounts': ensure => directory, owner => 'root', group => 'root', mode => '0755', source => '/efs/lego/accounts', require => Nfs::Client::Mount['/efs'], recurse => true, } file { '/usr/local/bin/dns-update': ensure => present, ensure => file, owner => 'root', group => 'root', mode => '0755', source => "puppet:///modules/${module_name}/dns-update", require => File['/usr/local/bin'], } file { '/usr/local/bin/lego': ensure => file, owner => 'root', group => 'root', mode => '0755', source => "puppet::///modules/${module_name}/lego", require => File['/usr/local/bin'], } file { '/usr/local/bin/lego-init': ensure => file, owner => 'root', group => 'root', mode => '0755', source => "puppet::///modules/${module_name}/lego-init", require => File['/usr/local/bin'], } systemd::unit_file { 'dns-update.service': content => file("${module_name}/dns-update.service"), enable => true, Loading @@ -29,7 +61,7 @@ class webapp ( require => File['/usr/local/bin/dns-update'], } class { '::nfs': class { 'nfs': server_enabled => false, client_enabled => true, nfs_v4_client => true, Loading @@ -53,7 +85,7 @@ class webapp ( 'php-opcache', ]: ensure => 'present' ensure => 'present', } class { 'apache': Loading @@ -76,4 +108,14 @@ class webapp ( } create_resources(webapp::vhost, $vhosts) exec { 'lego-init': command => '/usr/local/bin/lego-init', user => 'root', refreshonly => true, require => [ File['/usr/local/bin/lego-init'], Apache::Vhost['localhost'], ], } }