1 define teracara_quiz (){
3 apt_key{ 'E643C483A426BB5311D26520A631B6AF9FD3DF94':
4 source => 'http://deb.dogcraft.de/signer.gpg',
7 file { '/etc/apt/sources.list.d/dogcraft.list':
8 source => 'puppet:///modules/lxc/dogcraft.list',
10 notify => Exec['apt_update']
12 package { 'teracara-quiz':
13 require => Exec['apt_update'],
14 ensure => 'installed',
17 ensure => 'installed',
19 file {'/etc/apache2/sites-available/000-default.conf':
20 require => Package['apache2'],
22 source => 'puppet:///modules/quiz/000-default.conf',
23 notify => Service['apache2'],
25 file {'/etc/teracara-quiz/config.php':
26 require => Package['teracara-quiz'],
28 content => epp('quiz/config.php'),
30 file {'/etc/teracara-quiz/client.crt':
31 require => Package['teracara-quiz'],
34 source => 'puppet:///modules/quiz/client.crt',
36 file {'/etc/teracara-quiz/client.key':
37 require => Package['teracara-quiz'],
40 source => 'puppet:///modules/quiz/client.key',
42 file {'/etc/teracara-quiz/sq_config.php':
43 require => Package['teracara-quiz'],
45 content => epp('quiz/sq_config'),
47 file{'/etc/teracara-quiz/root.crt':
48 require => Package['teracara-quiz'],
50 source => ['puppet:///modules/nre/config/ca/root.crt'],
53 class {'::mysql::client':
54 package_name => 'mariadb-client'
56 class { '::mysql::server':
57 package_name => 'mariadb-server',
58 root_password => $passwords[quiz-mysql][root]
61 require => Package['teracara-quiz'],
63 password => $passwords[quiz-mysql][quiz],
65 grant => ['SELECT', 'INSERT', 'UPDATE', 'DELETE'],
66 sql => '/usr/share/teracara-quiz/sql/db.sql',
67 import_timeout => 900,
71 include container::contained;
72 include container::no_ssh;
74 teracara_quiz{ 'quiz': }
76 require => Teracara_quiz['quiz'],