App Provider Service Configuration

Introduction

App providers represent apps that are not able to register themselves. Currently there is only the CS3org WOPI server app provider.

Default Values

  • App Provider listens on port 9165 by default.

Configuration

Environment Variables

The app-provider service is configured via the following environment variables. Read the Environment Variable Types documentation for important details. Column IV shows with which release the environment variable has been introduced.

  • master + Rolling 6.6.1

Environment variables for the app-provider service
Name IV Type Default Value Description

APP_PROVIDER_SERVICE_NAME

pre5.0

string

app-provider

The name of the service. This needs to be changed when using more than one app provider. Each app provider configured needs to be identified by a unique service name. Possible examples are: 'app-provider-collabora', 'app-provider-onlyoffice', 'app-provider-office365'.

OCIS_TRACING_ENABLED
APP_PROVIDER_TRACING_ENABLED

pre5.0

bool

false

Activates tracing.

OCIS_TRACING_TYPE
APP_PROVIDER_TRACING_TYPE

pre5.0

string

The type of tracing. Defaults to '', which is the same as 'jaeger'. Allowed tracing types are 'jaeger' and '' as of now.

OCIS_TRACING_ENDPOINT
APP_PROVIDER_TRACING_ENDPOINT

pre5.0

string

The endpoint of the tracing agent.

OCIS_TRACING_COLLECTOR
APP_PROVIDER_TRACING_COLLECTOR

pre5.0

string

The HTTP endpoint for sending spans directly to a collector, i.e. http://jaeger-collector:14268/api/traces. Only used if the tracing endpoint is unset.

OCIS_LOG_LEVEL
APP_PROVIDER_LOG_LEVEL

pre5.0

string

The log level. Valid values are: 'panic', 'fatal', 'error', 'warn', 'info', 'debug', 'trace'.

OCIS_LOG_PRETTY
APP_PROVIDER_LOG_PRETTY

pre5.0

bool

false

Activates pretty log output.

OCIS_LOG_COLOR
APP_PROVIDER_LOG_COLOR

pre5.0

bool

false

Activates colorized log output.

OCIS_LOG_FILE
APP_PROVIDER_LOG_FILE

pre5.0

string

The path to the log file. Activates logging to this file if set.

APP_PROVIDER_DEBUG_ADDR

pre5.0

string

127.0.0.1:9165

Bind address of the debug server, where metrics, health, config and debug endpoints will be exposed.

APP_PROVIDER_DEBUG_TOKEN

pre5.0

string

Token to secure the metrics endpoint

APP_PROVIDER_DEBUG_PPROF

pre5.0

bool

false

Enables pprof, which can be used for profiling

APP_PROVIDER_DEBUG_ZPAGES

pre5.0

bool

false

Enables zpages, which can be used for collecting and viewing traces in-memory.

APP_PROVIDER_GRPC_ADDR

pre5.0

string

127.0.0.1:9164

The bind address of the GRPC service.

OCIS_GRPC_PROTOCOL
APP_PROVIDER_GRPC_PROTOCOL

pre5.0

string

tcp

The transport protocol of the GPRC service.

OCIS_JWT_SECRET
APP_PROVIDER_JWT_SECRET

pre5.0

string

The secret to mint and validate jwt tokens.

OCIS_REVA_GATEWAY

pre5.0

string

com.owncloud.api.gateway

The CS3 gateway endpoint.

OCIS_GRPC_CLIENT_TLS_MODE

pre5.0

string

TLS mode for grpc connection to the go-micro based grpc services. Possible values are 'off', 'insecure' and 'on'. 'off': disables transport security for the clients. 'insecure' allows using transport security, but disables certificate verification (to be used with the autogenerated self-signed certificates). 'on' enables transport security, including server certificate verification.

OCIS_GRPC_CLIENT_TLS_CACERT

pre5.0

string

Path/File name for the root CA certificate (in PEM format) used to validate TLS server certificates of the go-micro based grpc services.

APP_PROVIDER_EXTERNAL_ADDR

pre5.0

string

com.owncloud.api.app-provider

Address of the app provider, where the GATEWAY service can reach it.

APP_PROVIDER_DRIVER

pre5.0

string

Driver, the APP PROVIDER services uses. Only 'wopi' is supported as of now.

APP_PROVIDER_WOPI_APP_API_KEY

pre5.0

string

API key for the wopi app.

APP_PROVIDER_WOPI_APP_DESKTOP_ONLY

pre5.0

bool

false

Offer this app only on desktop.

APP_PROVIDER_WOPI_APP_ICON_URI

pre5.0

string

URI to an app icon to be used by clients.

APP_PROVIDER_WOPI_APP_INTERNAL_URL

pre5.0

string

Internal URL to the app, like in your DMZ.

APP_PROVIDER_WOPI_APP_NAME

pre5.0

string

Human readable app name.

APP_PROVIDER_WOPI_APP_URL

pre5.0

string

URL for end users to access the app.

APP_PROVIDER_WOPI_DISABLE_CHAT
OCIS_WOPI_DISABLE_CHAT

pre5.0

bool

false

Disable the chat functionality of the office app.

APP_PROVIDER_WOPI_INSECURE

pre5.0

bool

false

Disable TLS certificate validation for requests to the WOPI server and the web office application. Do not set this in production environments.

APP_PROVIDER_WOPI_WOPI_SERVER_IOP_SECRET

pre5.0

string

Shared secret of the CS3org WOPI server.

APP_PROVIDER_WOPI_WOPI_SERVER_EXTERNAL_URL

pre5.0

string

External url of the CS3org WOPI server.

OCIS_URL
APP_PROVIDER_WOPI_FOLDER_URL_BASE_URL

pre5.0

string

https://localhost:9200/

Base url to navigate back from the app to the containing folder in the file list.

APP_PROVIDER_WOPI_FOLDER_URL_PATH_TEMPLATE

pre5.0

string

/f/{{.ResourceID}}

Path template to navigate back from the app to the containing folder in the file list. Supported template variables are {{.ResourceInfo.ResourceID}}, {{.ResourceInfo.Mtime.Seconds}}, {{.ResourceInfo.Name}}, {{.ResourceInfo.Path}}, {{.ResourceInfo.Type}}, {{.ResourceInfo.Id.SpaceId}}, {{.ResourceInfo.Id.StorageId}}, {{.ResourceInfo.Id.OpaqueId}}, {{.ResourceInfo.MimeType}}

YAML Example

  • master + Rolling 6.6.1

# Autogenerated
# Filename: app-provider-config-example.yaml

tracing:
  enabled: false
  type: ""
  endpoint: ""
  collector: ""
log:
  level: ""
  pretty: false
  color: false
  file: ""
debug:
  addr: 127.0.0.1:9165
  token: ""
  pprof: false
  zpages: false
grpc:
  addr: 127.0.0.1:9164
  tls: null
  protocol: tcp
token_manager:
  jwt_secret: ""
reva:
  address: com.owncloud.api.gateway
  tls:
    mode: ""
    cacert: ""
external_addr: com.owncloud.api.app-provider
driver: ""
drivers:
  wopi:
    app_api_key: ""
    app_desktop_only: false
    app_icon_uri: ""
    app_internal_url: ""
    app_name: ""
    app_url: ""
    app_disable_chat: false
    insecure: false
    wopi_server_iop_secret: ""
    wopi_server_external_url: ""
    wopi_folder_url_base_url: https://localhost:9200/
    wopi_folder_url_path_template: /f/{{.ResourceID}}