Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-31682

Add mobile-service to ns-server



    • Task
    • Resolution: Unresolved
    • Major
    • backlog
    • None
    • ns_server
    • None


      Server build integration: This task is currently in progress in CBG-75 (gerrit review)

      Binary name: mobile-service

      Api listening ports: see design doc under Architecture / Mobile Service / Api ports


      Port Port Number Bound Interface Externally Accessible Auth Description
      Mobile Service REST HTTP :8097 localhost No Cbauth based authentication Expected clients:
      • Javascript code running in the UI
      • CBcollectinfo
      • CBBackup
      Mobile Service REST TLS :18097 Same as Mobile Service REST HTTP
      Mobile Service GRPC TLS :18098 (all interfaces) Yes – users would need to update their firewall rules since connections might be coming in from different subnets. Basic Auth + TLS.  Requires “Mobile Admin” role under Roles and Permissions Expected clients:
      • Gateway nodes


      Command line arguments: see design doc under Architecture / Mobile Service / Command line arguments


      Name Description
      --dataDir The path where the mobile service can store local data
      --uuid The node UUID
      --server The node’s REST host/port (result of misc:node_rest_port(Config, node()))


      Stats endpoints: There are stats endpoints spec'd out in the design doc, however, they have not been implemented in the prototype yet. Can we hold off on that until a later phase, or should I implement those in the prototype before this work can start?


      Option to run under the delve debugger: Here is the patch I've been using for local prototyping – one thing you'll notice is in the src/ns_ports_setup.erl file there is an option to run under the delve debugger. As a quick hack, I just had it kick in if a special port was specified. Is there a way to put this behind a config setting, environment variable, or command line argument? It's useful for development, since it allows remote debugging of the golang process. Also, ignore the "port 4986", that was never being used.


        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.



              artem Artem Stemkovski
              traun Traun Leyden (Inactive)
              0 Vote for this issue
              5 Start watching this issue



                Gerrit Reviews

                  There are no open Gerrit changes