Newer
Older
class aes::aes_sw {
$examadm_user = examadm
$examadm_group = "${examadm_user}"
$examadm_home = "/home/${examadm_user}"
'java-11-openjdk-devel',
]:
ensure => installed,
}
user { "examadm" :
ensure => present,
managehome => false,
membership => inclusive,
system => true,
shell => '/sbin/nologin',
}
file { "/etc/systemd/system/aes_login.service":
ensure => present,
owner => root,
group => root,
mode => '0644',
content => @(LOGINSERVICE)
[Unit]
Description=AES Login server
After=network.target
[Service]
Type=simple
User=examadm
WorkingDirectory=/home/examadm/Version-3.1/exam
ExecStart=/usr/bin/python3 /home/examadm/Version-3.1/pub/bin/examiner/find_pnr_and_otp_from_liuid.py
[Install]
WantedBy=multi-user.target
| LOGINSERVICE
}
service { "aes_login" :
ensure => "running",
}
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
file { "/etc/systemd/system/aes_ms.service":
ensure => present,
owner => root,
group => root,
mode => '0644',
content => @(MSSERVICE)
[Unit]
Description=AES Exam server
After=network.target
[Service]
Type=simple
User=examadm
WorkingDirectory=/home/examadm/Version-3.1
ExecStart=/usr/bin/java -Xmx512M -jar /home/examadm/Version-3.1/pub/bin/examiner/ms.jar /home/examadm/Version-3.1
[Install]
WantedBy=multi-user.target
| MSSERVICE
}
file { "/etc/cron.daily/aes_ms":
ensure => present,
owner => root,
group => root,
mode => '0700',
content => @(MSCRON)
#!/bin/sh
/usr/bin/systemctl restart aes_ms
| MSCRON
}
# todo: logrotate
service { "aes_ms" :
ensure => "running",
}
exec { 'script-repo-clone':
command => '/usr/bin/git clone --quiet --single-branch --branch master --depth 1 git@gitlab.liu.se:examadm/scripts.git',
cwd => "${examadm_home}",
creates => "${examadm_home}/scripts",
user => "${examadm_user}",
group => "${examadm_group}",
require => File["${examadm_home}/.ssh/known_hosts"],
}
schedule { 'everyday':
period => daily,
range => '01:00 - 04:00',
}
exec { 'script-repo-pull':
cwd => "${examadm_home}/scripts",
onlyif => "/usr/bin/test -d ${examadm_home}/scripts/.git",
user => "${examadm_user}",
group => "${examadm_group}",
file { "${examadm_home}/.ssh/known_hosts":
ensure => present,
owner => "${examadm_user}",
group => "${examadm_group}",
mode => '0644',
content => @(KNOWNHOST)
gitlab.liu.se,2001:6b0:17:f003::44 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBF3yWjkuKo7f3OH4BhGwcd71lkWZqdyk7cxOCn5exPoqLldt2OfbhEA7lM+89Gr/AqRbHlbrS1M8An7j4Lj77hc=
| KNOWNHOST
}