Add webhook things for Ganneff based on his patch
authorPeter Palfrader <peter@palfrader.org>
Fri, 5 Jan 2018 16:55:51 +0000 (17:55 +0100)
committerPeter Palfrader <peter@palfrader.org>
Fri, 5 Jan 2018 16:55:51 +0000 (17:55 +0100)
modules/salsa/manifests/init.pp
modules/salsa/manifests/packages.pp
modules/salsa/manifests/web.pp
modules/salsa/templates/apache-webhook.salsa.debian.org.conf.erb [new file with mode: 0644]

index b7c8b03..dbcaaf6 100644 (file)
@@ -66,6 +66,9 @@ class salsa inherits salsa::params {
        file { "/var/lib/systemd/linger/git":
                ensure => present,
        }
+       file { "/var/lib/systemd/linger/salsa-webhook":
+               ensure => present,
+       }
        file { "/etc/ssh/userkeys/git":
                ensure => link,
                target => "${salsa::home}/.ssh/authorized_keys",
index 9fa4e6f..4312256 100644 (file)
@@ -30,6 +30,9 @@ class salsa::packages inherits salsa {
                'ruby-dev',
                'ruby-sinatra',
                'ruby-sinatra-contrib',
+               'ruby-mail',
+               'ruby-soap4r',
+               'thin',
                'libpq-dev',
                'zlib1g-dev'
        ]
index 18ebc14..43489fb 100644 (file)
@@ -5,9 +5,11 @@ class salsa::web inherits salsa {
        include apache2::rewrite
        include apache2::ssl
 
-       ssl::service { [ 'salsa.debian.org',
-                        'signup.salsa.debian.org',
-                      ]:
+       ssl::service { [
+               'salsa.debian.org',
+               'signup.salsa.debian.org',
+               'webhook.salsa.debian.org',
+               ]:
                notify  => Exec['service apache2 reload'],
                key => true,
        }
@@ -20,6 +22,10 @@ class salsa::web inherits salsa {
                site    => 'signup.salsa.debian.org',
                content => template('salsa/apache-signup.salsa.debian.org.conf.erb'),
        }
+       apache2::site { '010-webhook.salsa.debian.org':
+               site    => 'webhook.salsa.debian.org',
+               content => template('salsa/apache-webhook.salsa.debian.org.conf.erb'),
+       }
        apache2::site { '010-pages.debian.net':
                site    => 'pages.debian.net',
                content => template('salsa/apache-pages.debian.net.conf.erb'),
diff --git a/modules/salsa/templates/apache-webhook.salsa.debian.org.conf.erb b/modules/salsa/templates/apache-webhook.salsa.debian.org.conf.erb
new file mode 100644 (file)
index 0000000..d806e50
--- /dev/null
@@ -0,0 +1,21 @@
+Use common-debian-service-https-redirect * webhook.salsa.debian.org
+
+<VirtualHost *:443>
+       ServerName webhook.salsa.debian.org
+       ServerAdmin debian-admin@lists.debian.org
+
+       Use common-debian-service-ssl webhook.salsa.debian.org
+       Use common-ssl-HSTS
+       Use http-pkp-webhook.salsa.debian.org
+
+       ErrorLog /var/log/apache2/webhook.salsa.debian.org-error.log
+       CustomLog /var/log/apache2/webhook.salsa.debian.org-access.log privacy
+
+       ProxyPreserveHost On
+       AllowEncodedSlashes NoDecode
+
+       ProxyPass / http://127.0.0.1:7443/ retry=15 nocanon
+       ProxyPassReverse http://127.0.0.1:7443/
+</VirtualHost>
+
+# vim:set syn=apache: