Mobrovac has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/232003

Change subject: RESTBase: Add MobileApps endpoints and back-end config
......................................................................

RESTBase: Add MobileApps endpoints and back-end config

The MobileApps service is now available in production (as
mobileapps.svc.eqiad.wmnet:8888). This patch enables RESTBase to expose
its public endpoints and to forward any requests to the service itself.

Note: this patch only enables RESTBase in proxy mode. A caching approach
is envisaged for later this week.

Change-Id: Ib800009eacbc4c71e199a034bcdb14312ad817ae
---
M hieradata/labs/deployment-prep/common.yaml
M hieradata/role/common/restbase.yaml
M modules/restbase/manifests/init.pp
M modules/restbase/templates/config.labs.yaml.erb
M modules/restbase/templates/config.yaml.erb
5 files changed, 102 insertions(+), 19 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/operations/puppet 
refs/changes/03/232003/1

diff --git a/hieradata/labs/deployment-prep/common.yaml 
b/hieradata/labs/deployment-prep/common.yaml
index e7a7293..d4bfda0 100644
--- a/hieradata/labs/deployment-prep/common.yaml
+++ b/hieradata/labs/deployment-prep/common.yaml
@@ -57,19 +57,20 @@
   zotero: {}
 cassandra::listen_address: '%{::ipaddress_eth0}'
 cassandra::rpc_address: '%{::ipaddress_eth0}'
-"cassandra::seeds":
+cassandra::seeds:
   - 10.68.17.227
   - 10.68.17.189
 cassandra::logging::logstash_host: 
deployment-logstash2.deployment-prep.eqiad.wmflabs
-"restbase::seeds":
+restbase::seeds:
   - 10.68.17.227
   - 10.68.17.189
-"restbase::config_template": restbase/config.labs.yaml.erb
-"restbase::parsoid_uri": 
http://deployment-parsoid05.deployment-prep.eqiad.wmflabs:8000
-"restbase::statsd_host": labmon1001.eqiad.wmnet
-"restbase::logstash_host": deployment-logstash2.deployment-prep.eqiad.wmflabs
-"restbase::cassandra_defaultConsistency": localQuorum
-restbase::graphoid_host_port: 
http://deployment-sca01.deployment-prep.eqiad.wmflabs:19000
+restbase::config_template: restbase/config.labs.yaml.erb
+restbase::parsoid_uri: 
http://deployment-parsoid05.deployment-prep.eqiad.wmflabs:8000
+restbase::statsd_host: labmon1001.eqiad.wmnet
+restbase::logstash_host: deployment-logstash2.deployment-prep.eqiad.wmflabs
+restbase::cassandra_defaultConsistency: localQuorum
+restbase::graphoid_uri: 
http://deployment-sca01.deployment-prep.eqiad.wmflabs:19000
+restbase::mobileapps_uri: http://appservice.wmflabs.org
 "mediawiki::log_aggregator": deployment-fluorine.eqiad.wmflabs:8420
 "mediawiki::forward_syslog": 
deployment-logstash2.deployment-prep.eqiad.wmflabs:10514
 mediawiki_memcached_servers:
diff --git a/hieradata/role/common/restbase.yaml 
b/hieradata/role/common/restbase.yaml
index 6a4cc4a..e0daa04 100644
--- a/hieradata/role/common/restbase.yaml
+++ b/hieradata/role/common/restbase.yaml
@@ -17,7 +17,8 @@
 restbase::cassandra_localDc: "%{::site}"
 restbase::statsd_host: statsd.eqiad.wmnet
 restbase::parsoid_uri: http://parsoid.svc.eqiad.wmnet:8000
-restbase::graphoid_host_port: http://graphoid.svc.eqiad.wmnet:19000
+restbase::graphoid_uri: http://graphoid.svc.eqiad.wmnet:19000
+restbase::mobileapps_uri: http://mobileapps.svc.eqiad.wmnet:8888
 
 lvs::realserver::realserver_ips:
   - '10.2.2.17' # restbase.svc.eqiad.wmnet
diff --git a/modules/restbase/manifests/init.pp 
b/modules/restbase/manifests/init.pp
index 933c086..c5cc5bd 100644
--- a/modules/restbase/manifests/init.pp
+++ b/modules/restbase/manifests/init.pp
@@ -34,8 +34,10 @@
 #   statsd host name. Default: localhost
 # [*statsd_port*]
 #   statsd port. Default: 8125
-# [*graphoid_host_port*]
+# [*graphoid_uri*]
 #   graphoid host + port. Default: http://graphoid.svc.eqiad.wmnet:19000
+# [*mobileapps_uri*]
+#   MobileApps service URI. Default: http://mobileapps.svc.eqiad.wmnet:8888
 #
 class restbase(
     $cassandra_user = 'cassandra',
@@ -53,7 +55,8 @@
     $logging_level  = 'warn',
     $statsd_host    = 'localhost',
     $statsd_port    = '8125',
-    $graphoid_host_port = 'http://graphoid.svc.eqiad.wmnet:19000',
+    $graphoid_uri   = 'http://graphoid.svc.eqiad.wmnet:19000',
+    $mobileapps_uri = 'http://mobileapps.svc.eqiad.wmnet:8888',
 ) {
     ensure_packages( ['nodejs', 'nodejs-legacy', 'npm'] )
 
diff --git a/modules/restbase/templates/config.labs.yaml.erb 
b/modules/restbase/templates/config.labs.yaml.erb
index 4832749..eaca0c1 100644
--- a/modules/restbase/templates/config.labs.yaml.erb
+++ b/modules/restbase/templates/config.labs.yaml.erb
@@ -51,6 +51,7 @@
     x-subspecs:
       - mediawiki/v1/content
       - mediawiki_v1_graphoid
+      - mediawiki/v1/mobileapps
     # - mediawiki/v1/revision-scoring
 
   wmf-sys-1.0.0: &wp/sys/1.0.0
@@ -125,10 +126,48 @@
               paths:
                 /v1/png/{title}/{revision}/{graph_id}:
                   get:
-                    backend_request:
-                      # Default value: http://graphoid.svc.eqiad.wmnet:19000
-                      uri: <%= @graphoid_host_port 
%>/{domain}/v1/png/{title}/{revision}/{graph_id}
-                      body: '{$.request.body}'
+                    on_request:
+                      - get_from_graphoid:
+                          request:
+                            uri: <%= @graphoid_uri 
%>/{domain}/v1/png/{title}/{revision}/{graph_id}
+
+      /{module:mobileapps}:
+        x-modules:
+          - name: simple_service
+            version: 1.0.0
+            type: file
+            options:
+              paths:
+                /v1/html/{title}:
+                  get:
+                    on_request:
+                      - get_from_backend:
+                          request:
+                            uri: <%= @mobileapps_uri 
%>/{domain}/v1/page/mobile-html/{title}
+                /v1/sections/{title}:
+                  get:
+                    on_request:
+                      - get_from_backend:
+                          request:
+                            uri: <%= @mobileapps_uri 
%>/{domain}/v1/page/mobile-html-sections/{title}
+                /v1/sections-lead/{title}:
+                  get:
+                    on_request:
+                      - get_from_backend:
+                          request:
+                            uri: <%= @mobileapps_uri 
%>/{domain}/v1/page/mobile-html-sections-lead/{title}
+                /v1/sections-remaining/{title}:
+                  get:
+                    on_request:
+                      - get_from_backend:
+                          request:
+                            uri: <%= @mobileapps_uri 
%>/{domain}/v1/page/mobile-html-sections-remaining/{title}
+                /v1/text/{title}:
+                  get:
+                    on_request:
+                      - get_from_backend:
+                          request:
+                            uri: <%= @mobileapps_uri 
%>/{domain}/v1/page/mobile-text/{title}
 
   wp-default-1.0.0: &wp/default/1.0.0
     x-subspecs:
diff --git a/modules/restbase/templates/config.yaml.erb 
b/modules/restbase/templates/config.yaml.erb
index 94bd976..1c7969f 100644
--- a/modules/restbase/templates/config.yaml.erb
+++ b/modules/restbase/templates/config.yaml.erb
@@ -51,6 +51,7 @@
     x-subspecs:
       - mediawiki/v1/content
       - mediawiki_v1_graphoid
+      - mediawiki/v1/mobileapps
     # - mediawiki/v1/revision-scoring
 
   wmf-sys-1.0.0: &wp/sys/1.0.0
@@ -141,10 +142,48 @@
               paths:
                 /v1/png/{title}/{revision}/{graph_id}:
                   get:
-                    backend_request:
-                      # Default value: http://graphoid.svc.eqiad.wmnet:19000
-                      uri: <%= @graphoid_host_port 
%>/{domain}/v1/png/{title}/{revision}/{graph_id}
-                      body: '{$.request.body}'
+                    on_request:
+                      - get_from_graphoid:
+                          request:
+                            uri: <%= @graphoid_uri 
%>/{domain}/v1/png/{title}/{revision}/{graph_id}
+
+      /{module:mobileapps}:
+        x-modules:
+          - name: simple_service
+            version: 1.0.0
+            type: file
+            options:
+              paths:
+                /v1/html/{title}:
+                  get:
+                    on_request:
+                      - get_from_backend:
+                          request:
+                            uri: <%= @mobileapps_uri 
%>/{domain}/v1/page/mobile-html/{title}
+                /v1/sections/{title}:
+                  get:
+                    on_request:
+                      - get_from_backend:
+                          request:
+                            uri: <%= @mobileapps_uri 
%>/{domain}/v1/page/mobile-html-sections/{title}
+                /v1/sections-lead/{title}:
+                  get:
+                    on_request:
+                      - get_from_backend:
+                          request:
+                            uri: <%= @mobileapps_uri 
%>/{domain}/v1/page/mobile-html-sections-lead/{title}
+                /v1/sections-remaining/{title}:
+                  get:
+                    on_request:
+                      - get_from_backend:
+                          request:
+                            uri: <%= @mobileapps_uri 
%>/{domain}/v1/page/mobile-html-sections-remaining/{title}
+                /v1/text/{title}:
+                  get:
+                    on_request:
+                      - get_from_backend:
+                          request:
+                            uri: <%= @mobileapps_uri 
%>/{domain}/v1/page/mobile-text/{title}
 
   wp-default-1.0.0: &wp/default/1.0.0
     x-subspecs:

-- 
To view, visit https://gerrit.wikimedia.org/r/232003
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib800009eacbc4c71e199a034bcdb14312ad817ae
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Mobrovac <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to