-
Notifications
You must be signed in to change notification settings - Fork 0
/
mathcounts_environment.cfg
184 lines (150 loc) · 4.59 KB
/
mathcounts_environment.cfg
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
[buildout]
extends =
webapps.cfg
haproxy_nginx_environment.cfg
relstorage_environment.cfg
always-checkout = true
# NOTE: When extending multiple base configs,
# only the parts from the bottom config are
# installed by default (even if they all use 'parts +=').
# So if we want to install parts from both configs,
# we need to explicitly list them.
parts +=
haproxy
haproxy-conf
nginx
nginx-conf
qp-cron
memcached
senchacmd
compass
app-minify
ext42
ext42-link
invitations-signer-conf
[site-sources]
<= site-mathcounts-sources
# We temporarily need the course packages
# available in source, because nti.app.assessment
# depends on them for assignments. However, since
# we have no assignments, we shouldn't need
# to configure them.
[product-sources]
<= product-courses-sources
[extra-sources]
nti.hypatia = svn https://repos.nextthought.com/svn/nti-svn/nti.hypatia/trunk${server-versions:All}
nti.app.hypatia = svn https://repos.nextthought.com/svn/nti-svn/nti.app.hypatia/trunk${server-versions:All}
[eggs]
eggs +=
${site-mathcounts-eggs:eggs}
${product-courses-eggs:eggs}
nti.hypatia
nti.app.hypatia
[zcml]
package_features += production_env
[webapp-versions]
NextThoughtWebApp = @38355
NextThoughtLoginApp = @38179
[server-versions]
All = @38342
[app-minify]
analytics-key = -a ***REMOVED***
[passwords]
file = mathcounts_passwords.pass.cast5
[relstorages]
shared-blob-dir = false
storages = Users Users_1 Users_2 Users_3 Users_4
[relstorages_opts]
sql_adapter_extra_args =
port 20014
[relstorages_users_storage_opts]
sql_host = 10.50.10.202
sql_passwd = ${passwords:sql_users_passwd}
[relstorages_users_1_storage_opts]
sql_host = 10.50.10.203
sql_passwd = ${passwords:sql_users_1_passwd}
[relstorages_users_2_storage_opts]
sql_host = 10.50.10.202
sql_passwd = ${passwords:sql_users_2_passwd}
[relstorages_users_3_storage_opts]
sql_host = 10.50.10.203
sql_passwd = ${passwords:sql_users_3_passwd}
[relstorages_users_4_storage_opts]
sql_host = 10.50.10.202
sql_passwd = ${passwords:sql_users_4_passwd}
[environment]
sql_user = ntiuser
cache_servers = 10.50.8.103:20015
smtp_server = email-smtp.us-east-1.amazonaws.com
smtp_username = AKIAIOO43PY4ANWEYP2Q
smtp_port = 587
global_host_name = mathcounts.nextthought.com
global_content_directory = ${buildout:directory}/../DataserverGlobalLibrary
global_content_location = /content/
nginx_http_port = 20010
nginx_proxy_port = 20012
dataserver_http_port = 20011
nodejs_http_port = 20018
haproxy_http_port = 20016
# SAJ: listen to all interfaces to allow load balancers to submit
# decrypted SSL traffic for processing
haproxy_http_addr = 0.0.0.0
haproxy_redirect_to_ssl_port = 20017
stunnel_socket_owner = ntiuser-mc
haproxy_stunnel_socket_user = user ${:stunnel_socket_owner}
# Because of the order of inclusion, we need this here
webapp_path = ${buildout:sources-dir}/nti.web.app
loginapp_path = ${buildout:sources-dir}/NextThoughtLoginApp
[nginx-conf]
nginx_daemon = off
[haproxy-conf]
haproxy_addl_ssl_acls = acl is_ssl so_id ${environment:haproxy_http_port}
[main-conf]
redis_client_url = redis://10.50.8.103:${redis-conf:port}
[redis-conf]
port = 20013
# Use production-level database
# persistence timing
save-settings =
save 900 1
save 300 10
save 60 10000
[pserve-conf]
email_error_subject_prefix = MATHCOUNTS Error:
dataserver_log_level = INFO
[gunicorn-conf]
preload_app = true
[memcached-conf]
memcached-port = 20015
extra-opts = -m 4096 -c 4096
[library-conf]
library-type = filesystemLibrary
library-args =
directory="${environment:global_content_directory}"
prefix="${environment:global_content_location}"
[webapp-conf]
allow_mobile_safari = true
unauth_location = /login/
features =
"presence-menu": true,
"custom-status": true,
"state-transactions": true,
"mutable-forums": true,
"v2contacts" : true,
"v2profiles": true,
"fancy-scroll": true,
"notepad": false,
"transcript-follow-video": true,
"mathcounts-question-number-hack": true,
"remove-history-tab": true
disable_profiles = true
[supervisor]
pserve_group_programs = pserve,hypatia
programs +=
1 nginx ${deployment:bin-directory}/nginx
1 haproxy ${deployment:bin-directory}/haproxy [-f ${deployment:etc-directory}/haproxy/haproxy.cfg -db]
${memcached-conf:memcached-supervisor}
99 hypatia ${deployment:bin-directory}/nti_hypatia_indexer [-v -m ${hypatia-conf:mintime} -x ${hypatia-conf:maxtime} -l ${hypatia-conf:limit}]
[boto]
aws_access_key = ***REMOVED***
aws_secret_access_key = ${passwords:aws_secret_access_key}