From 387f70630a07704ae6f17f22b4dc837a99f31fa1 Mon Sep 17 00:00:00 2001 From: Michael Scherer Date: Mon, 2 Apr 2012 11:05:23 +0000 Subject: finish to clean sympa module --- modules/sympa/manifests/init.pp | 98 +-------------------------------------- modules/sympa/manifests/server.pp | 96 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 97 insertions(+), 97 deletions(-) create mode 100644 modules/sympa/manifests/server.pp (limited to 'modules/sympa') diff --git a/modules/sympa/manifests/init.pp b/modules/sympa/manifests/init.pp index 6ad63363..7f6fcfe6 100644 --- a/modules/sympa/manifests/init.pp +++ b/modules/sympa/manifests/init.pp @@ -1,97 +1 @@ -class sympa { - class server inherits variable { - # perl-CGI-Fast is needed for fast cgi - # perl-Socket6 is required by perl-IO-Socket-SSL - # (optional requirement) - package {['sympa', - 'sympa-www', - 'perl-CGI-Fast', - 'perl-Socket6']: } - - # sympa script start 5 differents script, I am not - # sure that puppet will correctly handle this - service { 'sympa': - subscribe => [ Package['sympa'], File['/etc/sympa/sympa.conf']] - } - - $pgsql_password = extlookup('sympa_pgsql','x') - $ldap_password = extlookup('sympa_ldap','x') - - postgresql::remote_db_and_user { 'sympa': - password => $pgsql_password, - description => 'Sympa database', - } - - File { - require => Package['sympa'], - } - - file { '/etc/sympa/sympa.conf': - # should be cleaner to have it root owned, but puppet do not support acl - # and in any case, config will be reset if it change - owner => 'sympa', - group => 'apache', - mode => '0640', - content => template('sympa/sympa.conf'), - } - - file { '/etc/sympa/auth.conf': - content => template('sympa/auth.conf'), - notify => Service['httpd'], - } - - - include apache::mod::fcgid - apache::webapp_other { 'sympa': - webapp_file => 'sympa/webapp_sympa.conf', - } - - apache::vhost::redirect_ssl { $sympa::variable::vhost: } - - apache::vhost::base { $sympa::variable::vhost: - use_ssl => true, - content => template('sympa/vhost_ml.conf'), - } - - subversion::snapshot { '/etc/sympa/web_tt2': - source => 'svn://svn.mageia.org/svn/web/templates/sympa/trunk', - } - - file { ['/etc/sympa/lists_xml/', - '/etc/sympa/scenari/', - '/etc/sympa/data_sources/', - '/etc/sympa/search_filters/']: - ensure => directory, - purge => true, - recurse => true, - force => true, - } - - file { - '/etc/sympa/scenari/subscribe.open_web_only_notify': - source => 'puppet:///modules/sympa/scenari/open_web_only_notify'; - '/etc/sympa/scenari/unsubscribe.open_web_only_notify': - source => 'puppet:///modules/sympa/scenari/open_web_only_notify'; - '/etc/sympa/scenari/send.subscriber_moderated': - source => 'puppet:///modules/sympa/scenari/subscriber_moderated'; - '/etc/sympa/scenari/create_list.forbidden': - source => 'puppet:///modules/sympa/scenari/forbidden'; - '/etc/sympa/topics.conf': - source => 'puppet:///modules/sympa/topics.conf'; - } - - # add each group that could be used in a sympa ml either as - # - owner - # - editor ( moderation ) - sympa::datasource::ldap_group { 'mga-sysadmin': } - sympa::datasource::ldap_group { 'mga-ml_moderators': } - - - # directory that will hold the list data - # i am not sure of the name ( misc, 09/12/10 ) - file { '/var/lib/sympa/expl/': - ensure => directory, - owner => 'sympa', - } - } -} +class sympa { } diff --git a/modules/sympa/manifests/server.pp b/modules/sympa/manifests/server.pp new file mode 100644 index 00000000..304f43aa --- /dev/null +++ b/modules/sympa/manifests/server.pp @@ -0,0 +1,96 @@ +class sympa::server { + include sympa::variable + # perl-CGI-Fast is needed for fast cgi + # perl-Socket6 is required by perl-IO-Socket-SSL + # (optional requirement) + package {['sympa', + 'sympa-www', + 'perl-CGI-Fast', + 'perl-Socket6']: } + + # sympa script start 5 differents script, I am not + # sure that puppet will correctly handle this + service { 'sympa': + subscribe => [ Package['sympa'], File['/etc/sympa/sympa.conf']] + } + + $pgsql_password = extlookup('sympa_pgsql','x') + $ldap_password = extlookup('sympa_ldap','x') + + postgresql::remote_db_and_user { 'sympa': + password => $pgsql_password, + description => 'Sympa database', + } + + File { + require => Package['sympa'], + } + + file { '/etc/sympa/sympa.conf': + # should be cleaner to have it root owned, but puppet do not support acl + # and in any case, config will be reset if it change + owner => 'sympa', + group => 'apache', + mode => '0640', + content => template('sympa/sympa.conf'), + } + + file { '/etc/sympa/auth.conf': + content => template('sympa/auth.conf'), + notify => Service['httpd'], + } + + + include apache::mod::fcgid + apache::webapp_other { 'sympa': + webapp_file => 'sympa/webapp_sympa.conf', + } + + apache::vhost::redirect_ssl { $sympa::variable::vhost: } + + apache::vhost::base { $sympa::variable::vhost: + use_ssl => true, + content => template('sympa/vhost_ml.conf'), + } + + subversion::snapshot { '/etc/sympa/web_tt2': + source => 'svn://svn.mageia.org/svn/web/templates/sympa/trunk', + } + + file { ['/etc/sympa/lists_xml/', + '/etc/sympa/scenari/', + '/etc/sympa/data_sources/', + '/etc/sympa/search_filters/']: + ensure => directory, + purge => true, + recurse => true, + force => true, + } + + file { + '/etc/sympa/scenari/subscribe.open_web_only_notify': + source => 'puppet:///modules/sympa/scenari/open_web_only_notify'; + '/etc/sympa/scenari/unsubscribe.open_web_only_notify': + source => 'puppet:///modules/sympa/scenari/open_web_only_notify'; + '/etc/sympa/scenari/send.subscriber_moderated': + source => 'puppet:///modules/sympa/scenari/subscriber_moderated'; + '/etc/sympa/scenari/create_list.forbidden': + source => 'puppet:///modules/sympa/scenari/forbidden'; + '/etc/sympa/topics.conf': + source => 'puppet:///modules/sympa/topics.conf'; + } + + # add each group that could be used in a sympa ml either as + # - owner + # - editor ( moderation ) + sympa::datasource::ldap_group { 'mga-sysadmin': } + sympa::datasource::ldap_group { 'mga-ml_moderators': } + + + # directory that will hold the list data + # i am not sure of the name ( misc, 09/12/10 ) + file { '/var/lib/sympa/expl/': + ensure => directory, + owner => 'sympa', + } +} -- cgit v1.2.1