1 define teracara_quiz (){
2 apt_key{ 'E643C483A426BB5311D26520A631B6AF9FD3DF94':
3 source => 'http://deb.dogcraft.de/signer.gpg',
6 file { '/etc/apt/sources.list.d/dogcraft.list':
7 source => 'puppet:///modules/lxc/dogcraft.list',
9 notify => Exec['apt_update']
11 package { 'teracara-quiz':
12 require => Exec['apt_update'],
13 ensure => 'installed',
16 ensure => 'installed',
18 file {'/etc/apache2/sites-available/000-default.conf':
19 require => Package['apache2'],
21 source => 'puppet:///modules/quiz/000-default.conf',
22 notify => Service['apache2'],
24 file {'/etc/teracara-quiz/config.php':
25 require => Package['teracara-quiz'],
27 content => epp('quiz/config.php'),
29 file {'/etc/teracara-quiz/client.crt':
30 require => Package['teracara-quiz'],
33 source => 'puppet:///modules/quiz/client.crt',
35 file {'/etc/teracara-quiz/client.key':
36 require => Package['teracara-quiz'],
39 source => 'puppet:///modules/quiz/client.key',
41 file {'/etc/teracara-quiz/sq_config.php':
42 require => Package['teracara-quiz'],
44 content => epp('quiz/sq_config'),
46 file{'/etc/teracara-quiz/root.crt':
47 require => Package['teracara-quiz'],
49 source => ['puppet:///modules/nre/config/ca/root.crt'],
52 class {'::mysql::client':
53 package_name => 'mariadb-client'
55 class { '::mysql::server':
56 package_name => 'mariadb-server',
57 root_password => $passwords[quiz-mysql][root]
60 require => Package['teracara-quiz'],
62 password => $passwords[quiz-mysql][quiz],
64 grant => ['SELECT', 'INSERT', 'UPDATE', 'DELETE'],
65 sql => '/usr/share/teracara-quiz/sql/db.sql',
66 import_timeout => 900,
70 include container::contained;
71 include container::no_ssh;
73 teracara_quiz{ 'quiz': }
75 require => Teracara_quiz['quiz'],