]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/community/templates/default/web_only.yml.erb
community: Add custom static atom feed
[chef.git] / cookbooks / community / templates / default / web_only.yml.erb
index ca1b7a8f5daa916eb5d813801a632e3a9d543155..eb46dbe37ae1b733a25dd2ef819f4a37e85f812a 100644 (file)
@@ -1,6 +1,5 @@
 templates:
   - "templates/web.template.yml"
-  - "templates/web.ratelimited.template.yml"
   - "templates/web.ssl.template.yml"
 
 ## which TCP/IP ports should this container expose?
@@ -19,23 +18,23 @@ links:
 # any extra arguments for Docker?
 # docker_args:
 
-# Workaround bug: https://github.com/discourse/discourse_docker/pull/505
-params:
-#  version: v2.8.1
+# Latest Version v3.0.1
+params:
+  version: stable
 
 env:
   LC_ALL: en_US.UTF-8
   LANG: en_US.UTF-8
   LANGUAGE: en_US.UTF-8
-  EMBER_CLI_PROD_ASSETS: 1
   DISCOURSE_FORCE_HTTPS: true
 
   ## How many concurrent web requests are supported? Depends on memory and CPU cores.
   ## will be set automatically by bootstrap based on detected CPUs, or you can override
-  UNICORN_WORKERS: 8
+  UNICORN_WORKERS: <%= node.cpu_cores %>
 
   ## TODO: The domain name this Discourse instance will respond to
   DISCOURSE_HOSTNAME: community.openstreetmap.org
+  DISCOURSE_CDN_URL: https://community-cdn.openstreetmap.org
 
   ## Uncomment if you want the container to be started with the same
   ## hostname (-h option) as specified above (default "$hostname-$config")
@@ -45,14 +44,11 @@ env:
   ## on initial signup example 'user1@example.com,user2@example.com'
   DISCOURSE_DEVELOPER_EMAILS: 'operations@openstreetmap.org'
 
-  ## TODO: The SMTP mail server used to validate new accounts and send notifications
-  # SMTP ADDRESS, username, and password are required
-  # WARNING the char '#' in SMTP password can cause problems!
-  DISCOURSE_SMTP_ADDRESS: mail.openstreetmap.org
-  DISCOURSE_SMTP_PORT: 26
+  DISCOURSE_SMTP_ADDRESS: <%= node[:exim][:smarthost_via].split(":", 2)[0] %>
+  DISCOURSE_SMTP_PORT: <%= node[:exim][:smarthost_via].split(":", 2)[1] || "25" %>
+  DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none
   DISCOURSE_SMTP_USER_NAME:
   DISCOURSE_SMTP_PASSWORD:
-  # DISCOURSE_SMTP_ENABLE_START_TLS: true           # (optional, default true)
   DISCOURSE_SMTP_DOMAIN: community.openstreetmap.org
   DISCOURSE_NOTIFICATION_EMAIL: community@noreply.openstreetmap.org
 
@@ -65,7 +61,12 @@ env:
 
   ## The maxmind geolocation IP address key for IP address lookup
   ## see https://meta.discourse.org/t/-/137387/23 for details
+<% if @license_keys -%>
   DISCOURSE_MAXMIND_LICENSE_KEY: '<%= @license_keys[node[:geoipupdate][:account]] %>'
+<% end -%>
+
+  # Increase base SIDEKIQ memory limit to 1GB
+  UNICORN_SIDEKIQ_MAX_RSS: 1000
 
 volumes:
   - volume:
@@ -80,6 +81,9 @@ volumes:
   - volume:
       host: /etc/ssl/private/community.openstreetmap.org.key
       guest: /shared/ssl/ssl.key
+  - volume:
+      host: /srv/community.openstreetmap.org/files/update-feeds.atom
+      guest: /var/www/discourse/public/update-feeds.atom
 
 ## Plugins go here
 ## see https://meta.discourse.org/t/19157 for details
@@ -88,47 +92,19 @@ hooks:
     - exec:
         cd: $home/plugins
         cmd:
-          - git clone --depth 1 https://github.com/discourse/docker_manager.git
-          - git clone --depth 1 https://github.com/discourse/discourse-oauth2-basic.git
-          - git clone --depth 1 https://github.com/discourse/discourse-solved.git
-          - git clone --depth 1 https://github.com/discourse/discourse-canned-replies.git
-          - git clone --depth 1 https://github.com/discourse/discourse-reactions.git
-    - exec:
-        cd: $home
-        cmd:
-          - git fetch --depth=1 origin tag v2.8.1 --no-tags
-          - git checkout v2.8.1
+          - sudo -H -E -u discourse git clone --depth 1 https://github.com/discourse/discourse-oauth2-basic.git
+          - sudo -H -E -u discourse git clone --depth 1 https://github.com/discourse/discourse-solved.git
+          - sudo -H -E -u discourse git clone --depth 1 https://github.com/discourse/discourse-canned-replies.git
+          - sudo -H -E -u discourse git clone --depth 1 https://github.com/discourse/discourse-reactions.git
+          - sudo -H -E -u discourse git clone --depth 1 https://github.com/discourse/discourse-prometheus.git
+          - sudo -H -E -u discourse git clone --depth 1 https://github.com/discourse/discourse-translator.git
   after_ssl:
-    - file:
-        path: "/etc/nginx/letsencrypt.conf"
-        contents: |
-          user www-data;
-          worker_processes auto;
-          daemon on;
-
-          events {
-            worker_connections 768;
-            # multi_accept on;
-          }
-
-          http {
-            sendfile on;
-            tcp_nopush on;
-            tcp_nodelay on;
-            keepalive_timeout 65;
-            types_hash_max_size 2048;
-
-            access_log /var/log/nginx/access.letsencrypt.log;
-            error_log /var/log/nginx/error.letsencrypt.log;
-
-            server {
-              listen 80;
-              listen [::]:80;
-
-              rewrite ^/\.well-known/acme-challenge/(.*)$ http://acme.openstreetmap.org/.well-known/acme-challenge/$1 permanent;
-
-            }
-          }
+    - replace:
+        filename: "/etc/nginx/conf.d/discourse.conf"
+        from: /listen 80;/
+        to: |
+          listen 80;
+          rewrite ^/\.well-known/acme-challenge/(.*)$ http://acme.openstreetmap.org/.well-known/acme-challenge/$1 permanent;
 
     - replace:
         filename: "/etc/nginx/conf.d/discourse.conf"