-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
che.properties
212 lines (165 loc) · 9.24 KB
/
che.properties
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
#
# Copyright (c) 2012-2016 Codenvy, S.A.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
# Codenvy, S.A. - initial API and implementation
#
### CHE SERVER
# Folder where Che will store internal data objects
che.database=${che.home}/storage
# API service. Browsers initiate REST communications to Che server with this URL
che.api=http://localhost:${SERVER_PORT}/wsmaster/api
# Your projects are synchronized from the Che server into the machine running each
# workspace. This is the directory in the ws runtime where your projects are mounted.
che.workspace.storage=${che.home}/workspaces
# Your projects are synchronized from the Che server into the machine running each
# workspace. This is the directory in the machine where your projects are placed.
che.workspace.projects.storage=/projects
# Configures proxies used by runtimes powering workspaces
che.workspace.http_proxy=
che.workspace.https_proxy=
che.workspace.no_proxy=
# During the stop of the workspace automatically creates a snapshot if the value is {true},
# Otherwise just stops the workspace.
che.workspace.auto_snapshot=true
# During the start of the workspace automatically restore it from a snapshot if the value is {true},
# Otherwise create a new workspace.
che.workspace.auto_restore=true
# Java command line options used to start Che agent in workspace runtime
che.workspace.java_opts=-Xms256m -Xmx2048m -Djava.security.egd=file:/dev/./urandom
# Folder that will be a volume mount from your host into your workspace.
che.workspace.volume=
# If your workspace creates SSH connections, their timeouts are managed by this property.
che.workspace.ssh_connection_timeout_ms=10000
# The location of the Web terminal used within the browser.
# This is copied into the workspace and runs within the workspace.
# Suffix helps differentiate archive for different architectures/OSes
che.workspace.terminal_linux_amd64=${che.home}/lib/linux_amd64/terminal
che.workspace.terminal_linux_arm7=${che.home}/lib/linux_arm7/terminal
# Folder where the workspace will store logs from agents and other runtimes
che.workspace.logs=${che.logs.dir}/machine/logs
# RAM default for new machines.
# TODO: is this per machine, or for the entire environment?
che.workspace.default_memory_mb=1024
# This archive contains the server to run the workspace agent and any custom extensions.
# Che injects this archive into machines when they are booted or started.
# Each machine can have many agents installed, each located in a different location.
che.workspace.agent.dev=${che.home}/lib/ws-agent.tar.gz
# Hosts listed here will be added to /etc/hosts of each workspace.
che.workspace.hosts=NULL
# This is the API endpoint of the workspace master running within the core Che server.
# This tells the workspace agent how to connect back to the Che server.
# che-host is a hostname entry added to /etc/hosts of the workspace by the Che server.
che.workspace.che_server_endpoint=http://che-host:${SERVER_PORT}/wsmaster/api
### AGENTS
# When the Che server launches a new workspace, Che pings a mini Che server running inside of the
# workspace runtime. We call this mini-Che an "agent". The Che server knows that the workspace
# is ready for user when the agent returns a valid response.
che.workspace.agent.dev.max_start_time_ms=180000
che.workspace.agent.dev.ping_delay_ms=2000
che.workspace.agent.dev.ping_conn_timeout_ms=2000
che.workspace.agent.dev.ping_timeout_error_msg=Timeout. The Che server is unable to ping your workspace. This implies a network configuration issue, workspace boot failure, or an unusually slow workspace boot.
che.agent.dev.max_start_time_ms=120000
che.agent.dev.ping_delay_ms=2000
### TEMPLATES
# Folder that contains JSON files with code templates and samples
che.template.storage=${che.home}/templates
### STACKS
# File name containing default stacks definitions
che.stacks.storage=${che.home}/stacks/stacks.json
# che.stacks.default=${che.home}/stacks/stacks.json
# Folder name where stack images are stored
che.stacks.images=${che.home}/stacks/images
### AUTHENTICATION PARAMETERS
# Che has a single identity implementation, so this does not change the user experience.
# If true, enables user creation at API level
che.auth.user_self_creation=false
che.auth.access_denied_error_page=/error-oauth
# Reserved user names
che.auth.reserved_user_names=
# You can setup GitHub oAuth to automate authentication to remote repositories.
# You need to first register this application with GitHub oAuth.
che.oauth.github.clientid=NULL
che.oauth.github.clientsecret=NULL
che.oauth.github.authuri= https://github.com/login/oauth/authorize
che.oauth.github.tokenuri= https://github.com/login/oauth/access_token
che.oauth.github.redirecturis= http://localhost:${SERVER_PORT}/wsmaster/api/oauth/callback
### DOCKER PARAMETERS
# Docker is the default machine implementation within Che. Workspaces are powered by machines
# that are constructed when the workspace is started. The images used to generate containers
# for the machines can come from DockerHub or a private Docker registry.
che.docker.registry=${CHE_REGISTRY_HOST}:5000
# If this is true, then we always pull an image from a registry even if we have an image cached
# locally. If false, Docker only pulls image if it does not exist locally.
che.docker.always_pull_image=true
# If true, then launches all workspace runtime containers with Docker's
# privilged mode. Please use responsibly. This is required if you want Che workspaces
# to be able to launch their own runtimes which are embedded Docker containers.
che.docker.privilege=false
# Limits the number of processes that can be forked inside a cgroup. Set -1 for unlimited.
# Since 4.3 kernel.
che.docker.pids_limit=-1
# Adds options when mounting the /projects volume.
che.docker.volumes_projects_options=Z
# Adds options when mounting the /mnt/che/terminal, /mnt/che/ws-agent.tar.gz, /mnt/che/conf volume
che.docker.volumes_agent_options=ro,Z
# If the browser clients that are accessing Che are remote AND the configuration of Docker is an
# internal IP address or using Unix sockets, then remote browser clients will not be able to connect
# to the workspace. Set the Docker configuration so that Docker containers have an external IP
# address and provide that external host or IP address here.
# This is uncommon, and only needed for advanced Docker configurations.
che.docker.ip=NULL
# The hostname that a browser should use to connect to a workspace container.
# Only set this if your workspace containers are not directly pingable.
# This is unusual, but happens for example in Docker for Mac when containers are in a VM.
che.docker.ip.external=NULL
# Provides a Docker network where Che server is running.
# Workspace containers created by Che will be added to this Docker network.
# Communications between the Che server and container occur over this network.
che.docker.network=NULL
# Use a Docker registry for workspace snapshots. If false, snaps are saved to disk.
che.docker.registry_for_snapshots=false
# Registry snapshot namespace
che.docker.namespace=NULL
# Docker unused containers cleanup period
che.docker.unused_containers_cleanup_min=60
# Version number of the Docker API used within the Che implementation
che.docker.api=1.20
che.docker.network_driver=NULL
che.docker.tcp_connection_timeout_ms=600000
che.docker.tcp_connection_read_timeout_ms=600000
# Docker registry example. Uncomment to add a registry configuration.
# You can configure multiple registries with different names.
#che.docker.registry.auth.<insert-name>.url=https://index.docker.io/v1/
#che.docker.registry.auth.<insert-name>.username=<username>
#che.docker.registry.auth.<insert-name>.password=<password>
# Allows to adjust machine swap memory by multiplying current machnine memory to provided value.
# default is -1 which is unlimited swap. If set, value is multipled by machine memory set by user
# to determine swap size. To disable swap set to 0.
che.docker.swap=-1
### INTERNAL
# Remove locations where internal message bus events should be propagated to.
# For debugging - set to retrieve internal events from external clients.
notification.server.propagate_events=
# Che extensions can be scheduled executions on a time basis.
# This configures the size of the thread pool allocated to extensions that are launched on
# a recurring schedule.
schedule.core_pool_size=10
# Everrest is a Java Web Services toolkit that manages JAX-RS & web socket communications
# Users should rarely need to configure this.
# Disable asynchronous mechanism that is embedded in everrest.
org.everrest.asynchronous=false
# Quantity of asynchronous requests which may be processed at the same time
org.everrest.asynchronous.pool.size=20
# Size of queue. If asynchronous request can't be processed after consuming it will be added in queue.
org.everrest.asynchronous.queue.size=500
# Timeout in minutes for request. If after timeout request is not done or client did not come yet to get result of request it may be discarded.
org.everrest.asynchronous.job.timeout=10
# Size of cache for waiting, running and ended request.
org.everrest.asynchronous.cache.size=1024
# Path to asynchronous service
org.everrest.asynchronous.service.path=/async/