1 | [
|
---|
2 | [
|
---|
3 | "JURECA - login node - test",
|
---|
4 | "JURECA - login node - old",
|
---|
5 | "JURECA - login node (vis: 2xGPU)",
|
---|
6 | "JURECA - compute nodes (vis: 2xGPU)"
|
---|
7 | ],
|
---|
8 | {
|
---|
9 | "JURECA - login node - test": {
|
---|
10 | "__module__": "siteConfig",
|
---|
11 | "__class__": "siteConfig",
|
---|
12 | "directConnect": {
|
---|
13 | "regex": [
|
---|
14 | null
|
---|
15 | ],
|
---|
16 | "__module__": "siteConfig",
|
---|
17 | "cmd": null,
|
---|
18 | "requireMatch": false,
|
---|
19 | "__class__": "cmdRegEx",
|
---|
20 | "host": "login",
|
---|
21 | "failFatal": true,
|
---|
22 | "formatFatal": false,
|
---|
23 | "async": false,
|
---|
24 | "loop": false
|
---|
25 | },
|
---|
26 | "defaults": {
|
---|
27 | "jobParams_mem": 512,
|
---|
28 | "jobParams_ppn": 1,
|
---|
29 | "jobParams_nodes": 1,
|
---|
30 | "jobParams_hours": 24
|
---|
31 | },
|
---|
32 | "siteRanges": {
|
---|
33 | "jobParams_mem": [
|
---|
34 | 512,
|
---|
35 | 512
|
---|
36 | ],
|
---|
37 | "jobParams_ppn": [
|
---|
38 | 1,
|
---|
39 | 1
|
---|
40 | ],
|
---|
41 | "jobParams_nodes": [
|
---|
42 | 1,
|
---|
43 | 1
|
---|
44 | ],
|
---|
45 | "jobParams_hours": [
|
---|
46 | 1,
|
---|
47 | 24
|
---|
48 | ]
|
---|
49 | },
|
---|
50 | "sitetz": "Europe/Berlin",
|
---|
51 | "visibility": {
|
---|
52 | "usernamePanel": true,
|
---|
53 | "jobParams_nodes": false,
|
---|
54 | "jobParams_hours": false,
|
---|
55 | "jobParams_ppn": false,
|
---|
56 | "projectPanel": false,
|
---|
57 | "listProjects": true,
|
---|
58 | "resourcePanel": true,
|
---|
59 | "resolutionPanel": "Advanced",
|
---|
60 | "label_nodes": false,
|
---|
61 | "label_hours": false,
|
---|
62 | "label_ppn": false,
|
---|
63 | "cipherPanel": false,
|
---|
64 | "advancedCheckBoxPanel": true,
|
---|
65 | "debugCheckBoxPanel": "Advanced"
|
---|
66 | },
|
---|
67 | "loginHost": "jurecavis01.fz-juelich.de",
|
---|
68 | "setDisplayResolution": {
|
---|
69 | "regex": [
|
---|
70 | null
|
---|
71 | ],
|
---|
72 | "__module__": "siteConfig",
|
---|
73 | "cmd": null,
|
---|
74 | "requireMatch": false,
|
---|
75 | "__class__": "cmdRegEx",
|
---|
76 | "host": "login",
|
---|
77 | "failFatal": false,
|
---|
78 | "formatFatal": false,
|
---|
79 | "async": false,
|
---|
80 | "loop": false
|
---|
81 | },
|
---|
82 | "runSanityCheck": {
|
---|
83 | "regex": [
|
---|
84 | null
|
---|
85 | ],
|
---|
86 | "__module__": "siteConfig",
|
---|
87 | "cmd": null,
|
---|
88 | "requireMatch": false,
|
---|
89 | "__class__": "cmdRegEx",
|
---|
90 | "host": "login",
|
---|
91 | "failFatal": false,
|
---|
92 | "formatFatal": false,
|
---|
93 | "async": false,
|
---|
94 | "loop": false
|
---|
95 | },
|
---|
96 | "getProjects": {
|
---|
97 | "regex": [
|
---|
98 | "(?P<group>.*)"
|
---|
99 | ],
|
---|
100 | "__module__": "siteConfig",
|
---|
101 | "cmd": "'vncserver -profile | tail -n +2 | sed -e 's/^[[:space:]]*//' '",
|
---|
102 | "requireMatch": false,
|
---|
103 | "__class__": "cmdRegEx",
|
---|
104 | "host": "login",
|
---|
105 | "failFatal": false,
|
---|
106 | "formatFatal": false,
|
---|
107 | "async": false,
|
---|
108 | "loop": false
|
---|
109 | },
|
---|
110 | "listAll": {
|
---|
111 | "regex": [
|
---|
112 | "(?P<jobid>(?P<jobidNumber>.*)) (?P<remainingWalltime>.*)$"
|
---|
113 | ],
|
---|
114 | "__module__": "siteConfig",
|
---|
115 | "cmd": "'echo \"$(hostname)$(echo $(vncserver -list | grep '^:') | tr \" \" :) --:--:--\" '",
|
---|
116 | "requireMatch": false,
|
---|
117 | "__class__": "cmdRegEx",
|
---|
118 | "host": "login",
|
---|
119 | "failFatal": true,
|
---|
120 | "formatFatal": false,
|
---|
121 | "async": false,
|
---|
122 | "loop": false
|
---|
123 | },
|
---|
124 | "stopForRestart": {
|
---|
125 | "regex": [
|
---|
126 | null
|
---|
127 | ],
|
---|
128 | "__module__": "siteConfig",
|
---|
129 | "cmd": "'vncserver -kill :$(echo {jobidNumber} | cut -d \":\" -f 2)'",
|
---|
130 | "requireMatch": false,
|
---|
131 | "__class__": "cmdRegEx",
|
---|
132 | "host": "login",
|
---|
133 | "failFatal": true,
|
---|
134 | "formatFatal": false,
|
---|
135 | "async": false,
|
---|
136 | "loop": false
|
---|
137 | },
|
---|
138 | "startServer": {
|
---|
139 | "regex": [
|
---|
140 | "Log file is (.*).vnc/(?P<jobid>(?P<jobidNumber>.*)).log"
|
---|
141 | ],
|
---|
142 | "__module__": "siteConfig",
|
---|
143 | "cmd": "\"mkdir ~/.vnc ; rm -f ~/.vnc/strudel_vislogin_clearpass ; touch ~/.vnc/strudel_vislogin_clearpass ; chmod 600 ~/.vnc/strudel_vislogin_clearpass ; passwd=\"'$'\"( dd if=/dev/urandom bs=1 count=8 2>/dev/null | md5sum | cut -b 1-8 ) ; echo \"'$'\"passwd > ~/.vnc/strudel_vislogin_clearpass ; cat ~/.vnc/strudel_vislogin_clearpass | vncpasswd -f > ~/.vnc/strudel_vislogin_passwd ; chmod 600 ~/.vnc/strudel_vislogin_passwd ; vncserver -rfbauth ~/.vnc/strudel_vislogin_passwd -profile {project} -geometry {resolution} > ~/.vnc/vncserver_vislogin.out 2>&1 ; cat ~/.vnc/vncserver_vislogin.out \"",
|
---|
144 | "requireMatch": true,
|
---|
145 | "__class__": "cmdRegEx",
|
---|
146 | "host": "login",
|
---|
147 | "failFatal": true,
|
---|
148 | "formatFatal": false,
|
---|
149 | "async": false,
|
---|
150 | "loop": false
|
---|
151 | },
|
---|
152 | "showStart": {
|
---|
153 | "regex": [
|
---|
154 | "(?P<estimatedStart>.*)"
|
---|
155 | ],
|
---|
156 | "__module__": "siteConfig",
|
---|
157 | "cmd": null,
|
---|
158 | "requireMatch": true,
|
---|
159 | "__class__": "cmdRegEx",
|
---|
160 | "host": "login",
|
---|
161 | "failFatal": false,
|
---|
162 | "formatFatal": false,
|
---|
163 | "async": false,
|
---|
164 | "loop": false
|
---|
165 | },
|
---|
166 | "execHost": {
|
---|
167 | "regex": [
|
---|
168 | "(?P<execHost>\\S+)"
|
---|
169 | ],
|
---|
170 | "__module__": "siteConfig",
|
---|
171 | "cmd": "\"echo jurecavis01 \"",
|
---|
172 | "requireMatch": true,
|
---|
173 | "__class__": "cmdRegEx",
|
---|
174 | "host": "login",
|
---|
175 | "failFatal": true,
|
---|
176 | "formatFatal": false,
|
---|
177 | "async": false,
|
---|
178 | "loop": false
|
---|
179 | },
|
---|
180 | "agent": {
|
---|
181 | "regex": [
|
---|
182 | "agent_hello"
|
---|
183 | ],
|
---|
184 | "__module__": "siteConfig",
|
---|
185 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=yes -l {username} {loginHost} \"echo agent_hello; bash \"",
|
---|
186 | "requireMatch": true,
|
---|
187 | "__class__": "cmdRegEx",
|
---|
188 | "host": "local",
|
---|
189 | "failFatal": true,
|
---|
190 | "formatFatal": false,
|
---|
191 | "async": true,
|
---|
192 | "loop": false
|
---|
193 | },
|
---|
194 | "vncDisplay": {
|
---|
195 | "regex": [
|
---|
196 | "^.*?started on display \\S+(?P<vncDisplay>:[0-9]+)\\s*"
|
---|
197 | ],
|
---|
198 | "__module__": "siteConfig",
|
---|
199 | "cmd": "\"cat ~/.vnc/vncserver_vislogin.out\"",
|
---|
200 | "requireMatch": true,
|
---|
201 | "__class__": "cmdRegEx",
|
---|
202 | "host": "login",
|
---|
203 | "failFatal": true,
|
---|
204 | "formatFatal": false,
|
---|
205 | "async": false,
|
---|
206 | "loop": false
|
---|
207 | },
|
---|
208 | "authURL": null,
|
---|
209 | "oauthclientpasswd": null,
|
---|
210 | "oauthclient": null,
|
---|
211 | "authorizedKeysFile": null,
|
---|
212 | "username": null,
|
---|
213 | "project": null,
|
---|
214 | "onFirstLogin": null,
|
---|
215 | "otp": {
|
---|
216 | "regex": [
|
---|
217 | "^(?P<vncPasswd>\\S+)$"
|
---|
218 | ],
|
---|
219 | "__module__": "siteConfig",
|
---|
220 | "cmd": "\"cat ~/.vnc/strudel_vislogin_clearpass\"",
|
---|
221 | "requireMatch": true,
|
---|
222 | "__class__": "cmdRegEx",
|
---|
223 | "host": "login",
|
---|
224 | "failFatal": true,
|
---|
225 | "formatFatal": false,
|
---|
226 | "async": false,
|
---|
227 | "loop": false
|
---|
228 | },
|
---|
229 | "tunnel": {
|
---|
230 | "regex": [
|
---|
231 | "tunnel_hello"
|
---|
232 | ],
|
---|
233 | "__module__": "siteConfig",
|
---|
234 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=yes -L {localPortNumber}:{execHost}:{remotePortNumber} -l {username} {loginHost} \"echo tunnel_hello; bash\"",
|
---|
235 | "requireMatch": true,
|
---|
236 | "__class__": "cmdRegEx",
|
---|
237 | "host": "local",
|
---|
238 | "failFatal": true,
|
---|
239 | "formatFatal": false,
|
---|
240 | "async": true,
|
---|
241 | "loop": false
|
---|
242 | },
|
---|
243 | "onConnectScript": {
|
---|
244 | "regex": [
|
---|
245 | null
|
---|
246 | ],
|
---|
247 | "__module__": "siteConfig",
|
---|
248 | "cmd": null,
|
---|
249 | "requireMatch": false,
|
---|
250 | "__class__": "cmdRegEx",
|
---|
251 | "host": "login",
|
---|
252 | "failFatal": false,
|
---|
253 | "formatFatal": false,
|
---|
254 | "async": false,
|
---|
255 | "loop": false
|
---|
256 | },
|
---|
257 | "running": {
|
---|
258 | "regex": [
|
---|
259 | "JobState=RUNNING"
|
---|
260 | ],
|
---|
261 | "__module__": "siteConfig",
|
---|
262 | "cmd": "\"echo JobState=RUNNING\"",
|
---|
263 | "requireMatch": true,
|
---|
264 | "__class__": "cmdRegEx",
|
---|
265 | "host": "login",
|
---|
266 | "failFatal": true,
|
---|
267 | "formatFatal": false,
|
---|
268 | "async": false,
|
---|
269 | "loop": false
|
---|
270 | },
|
---|
271 | "stop": {
|
---|
272 | "regex": [
|
---|
273 | null
|
---|
274 | ],
|
---|
275 | "__module__": "siteConfig",
|
---|
276 | "cmd": "\"vncserver -kill :$(echo {jobidNumber} | cut -d \":\" -f 2)\"",
|
---|
277 | "requireMatch": false,
|
---|
278 | "__class__": "cmdRegEx",
|
---|
279 | "host": "login",
|
---|
280 | "failFatal": true,
|
---|
281 | "formatFatal": false,
|
---|
282 | "async": false,
|
---|
283 | "loop": false
|
---|
284 | },
|
---|
285 | "provision": null,
|
---|
286 | "instanceFlavour": null,
|
---|
287 | "relabel": {},
|
---|
288 | "imageid": null,
|
---|
289 | "createReservation": {
|
---|
290 | "regex": [
|
---|
291 | null
|
---|
292 | ],
|
---|
293 | "__module__": "siteConfig",
|
---|
294 | "cmd": null,
|
---|
295 | "requireMatch": false,
|
---|
296 | "__class__": "cmdRegEx",
|
---|
297 | "host": "login",
|
---|
298 | "failFatal": false,
|
---|
299 | "formatFatal": false,
|
---|
300 | "async": false,
|
---|
301 | "loop": false
|
---|
302 | },
|
---|
303 | "listReservations": {
|
---|
304 | "regex": [
|
---|
305 | null
|
---|
306 | ],
|
---|
307 | "__module__": "siteConfig",
|
---|
308 | "cmd": null,
|
---|
309 | "requireMatch": false,
|
---|
310 | "__class__": "cmdRegEx",
|
---|
311 | "host": "login",
|
---|
312 | "failFatal": false,
|
---|
313 | "formatFatal": false,
|
---|
314 | "async": false,
|
---|
315 | "loop": false
|
---|
316 | },
|
---|
317 | "deleteReservation": {
|
---|
318 | "regex": [
|
---|
319 | null
|
---|
320 | ],
|
---|
321 | "__module__": "siteConfig",
|
---|
322 | "cmd": null,
|
---|
323 | "requireMatch": false,
|
---|
324 | "__class__": "cmdRegEx",
|
---|
325 | "host": "login",
|
---|
326 | "failFatal": false,
|
---|
327 | "formatFatal": false,
|
---|
328 | "async": false,
|
---|
329 | "loop": false
|
---|
330 | },
|
---|
331 | "dbusSessionBusAddress": {
|
---|
332 | "regex": [
|
---|
333 | "^DBUS_SESSION_BUS_ADDRESS=(?P<dbusSessionBusAddress>.*)$"
|
---|
334 | ],
|
---|
335 | "__module__": "siteConfig",
|
---|
336 | "cmd": "\"echo DBUS_SESSION_BUS_ADDRESS=dummy_dbus_session_bus_address\"",
|
---|
337 | "requireMatch": true,
|
---|
338 | "__class__": "cmdRegEx",
|
---|
339 | "host": "login",
|
---|
340 | "failFatal": true,
|
---|
341 | "formatFatal": false,
|
---|
342 | "async": false,
|
---|
343 | "loop": false
|
---|
344 | },
|
---|
345 | "openWebDavShareInRemoteFileBrowser": {
|
---|
346 | "regex": [
|
---|
347 | null
|
---|
348 | ],
|
---|
349 | "__module__": "siteConfig",
|
---|
350 | "cmd": "\"/usr/bin/ssh {execHost} 'DISPLAY={vncDisplay} Thunar davs://{localUsername}:{vncPasswd}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}'\"",
|
---|
351 | "requireMatch": false,
|
---|
352 | "__class__": "cmdRegEx",
|
---|
353 | "host": "login",
|
---|
354 | "failFatal": true,
|
---|
355 | "formatFatal": false,
|
---|
356 | "async": false,
|
---|
357 | "loop": false
|
---|
358 | },
|
---|
359 | "displayWebDavInfoDialogOnRemoteDesktop": {
|
---|
360 | "regex": [
|
---|
361 | null
|
---|
362 | ],
|
---|
363 | "__module__": "siteConfig",
|
---|
364 | "cmd": "\"/usr/bin/ssh {execHost} 'echo -e \\\"You can access your local home directory in the file browser Thunar with the URL:%sbr%s\\ndavs://{localUsername}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}%sbr%s\\nYour one-time password is {vncPasswd}\\\" > ~/.vnc/\\$(hostname){vncDisplay}-webdav.txt;'\"",
|
---|
365 | "requireMatch": false,
|
---|
366 | "__class__": "cmdRegEx",
|
---|
367 | "host": "login",
|
---|
368 | "failFatal": true,
|
---|
369 | "formatFatal": false,
|
---|
370 | "async": false,
|
---|
371 | "loop": false
|
---|
372 | },
|
---|
373 | "webDavWindowID": {
|
---|
374 | "regex": [
|
---|
375 | "^DummyWebDavWindowID=(?P<webDavWindowID>.*)$"
|
---|
376 | ],
|
---|
377 | "__module__": "siteConfig",
|
---|
378 | "cmd": "\"echo DummyWebDavWindowID=-1\"",
|
---|
379 | "requireMatch": true,
|
---|
380 | "__class__": "cmdRegEx",
|
---|
381 | "host": "login",
|
---|
382 | "failFatal": true,
|
---|
383 | "formatFatal": false,
|
---|
384 | "async": false,
|
---|
385 | "loop": false
|
---|
386 | },
|
---|
387 | "webDavCloseWindow": {
|
---|
388 | "regex": [
|
---|
389 | null
|
---|
390 | ],
|
---|
391 | "__module__": "siteConfig",
|
---|
392 | "cmd": "\"/usr/bin/ssh {execHost} 'DISPLAY={vncDisplay} /usr/local/desktop/close_webdav_window.sh webdav://{localUsername}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}'\"",
|
---|
393 | "requireMatch": false,
|
---|
394 | "__class__": "cmdRegEx",
|
---|
395 | "host": "login",
|
---|
396 | "failFatal": true,
|
---|
397 | "formatFatal": false,
|
---|
398 | "async": false,
|
---|
399 | "loop": false
|
---|
400 | },
|
---|
401 | "webDavMount": {
|
---|
402 | "regex": [
|
---|
403 | null
|
---|
404 | ],
|
---|
405 | "__module__": "siteConfig",
|
---|
406 | "cmd": "echo Mounting WebDAV...",
|
---|
407 | "requireMatch": false,
|
---|
408 | "__class__": "cmdRegEx",
|
---|
409 | "host": "login",
|
---|
410 | "failFatal": true,
|
---|
411 | "formatFatal": false,
|
---|
412 | "async": false,
|
---|
413 | "loop": false
|
---|
414 | },
|
---|
415 | "webDavUnmount": {
|
---|
416 | "regex": [
|
---|
417 | "hello"
|
---|
418 | ],
|
---|
419 | "__module__": "siteConfig",
|
---|
420 | "cmd": "echo hello",
|
---|
421 | "requireMatch": true,
|
---|
422 | "__class__": "cmdRegEx",
|
---|
423 | "host": "login",
|
---|
424 | "failFatal": true,
|
---|
425 | "formatFatal": false,
|
---|
426 | "async": false,
|
---|
427 | "loop": false
|
---|
428 | },
|
---|
429 | "webDavTunnel": {
|
---|
430 | "regex": [
|
---|
431 | "tunnel_hello"
|
---|
432 | ],
|
---|
433 | "__module__": "siteConfig",
|
---|
434 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=no -oExitOnForwardFailure=yes -R {intermediateWebDavPortNumber}:localhost:{localWebDavPortNumber} -l {username} {loginHost} \"ssh -R {remoteWebDavPortNumber}:localhost:{intermediateWebDavPortNumber} {execHost} 'echo tunnel_hello; bash'\"",
|
---|
435 | "requireMatch": true,
|
---|
436 | "__class__": "cmdRegEx",
|
---|
437 | "host": "local",
|
---|
438 | "failFatal": true,
|
---|
439 | "formatFatal": false,
|
---|
440 | "async": true,
|
---|
441 | "loop": false
|
---|
442 | },
|
---|
443 | "webDavRemotePort": {
|
---|
444 | "regex": [
|
---|
445 | "^(?P<remoteWebDavPortNumber>[0-9]+)$"
|
---|
446 | ],
|
---|
447 | "__module__": "siteConfig",
|
---|
448 | "cmd": "\"/usr/bin/ssh {execHost} /usr/local/jsc/etc/xdg/scripts/strudel/get_ephemeral_port.py\"",
|
---|
449 | "requireMatch": true,
|
---|
450 | "__class__": "cmdRegEx",
|
---|
451 | "host": "login",
|
---|
452 | "failFatal": true,
|
---|
453 | "formatFatal": false,
|
---|
454 | "async": false,
|
---|
455 | "loop": false
|
---|
456 | },
|
---|
457 | "webDavIntermediatePort": {
|
---|
458 | "regex": [
|
---|
459 | "^(?P<intermediateWebDavPortNumber>[0-9]+)$"
|
---|
460 | ],
|
---|
461 | "__module__": "siteConfig",
|
---|
462 | "cmd": "\"/usr/local/jsc/etc/xdg/scripts/strudel/get_ephemeral_port.py\"",
|
---|
463 | "requireMatch": true,
|
---|
464 | "__class__": "cmdRegEx",
|
---|
465 | "host": "login",
|
---|
466 | "failFatal": true,
|
---|
467 | "formatFatal": false,
|
---|
468 | "async": false,
|
---|
469 | "loop": false
|
---|
470 | },
|
---|
471 | "messageRegexs": [
|
---|
472 | {
|
---|
473 | "pattern": "^INFO:(?P<info>.*(?:\n|\r\n?))",
|
---|
474 | "__class__": "__regex__"
|
---|
475 | },
|
---|
476 | {
|
---|
477 | "pattern": "^WARN:(?P<warn>.*(?:\n|\r\n?))",
|
---|
478 | "__class__": "__regex__"
|
---|
479 | },
|
---|
480 | {
|
---|
481 | "pattern": "^ERROR:(?P<error>.*(?:\n|\r\n?))",
|
---|
482 | "__class__": "__regex__"
|
---|
483 | }
|
---|
484 | ],
|
---|
485 | "displayStrings": {
|
---|
486 | "__module__": "siteConfig",
|
---|
487 | "onFirstLoginFailure": "An unknown error occured. Please contact your site help desk.",
|
---|
488 | "persistentMessageStop": "Stop the desktop",
|
---|
489 | "createNewKeyDialogNewPassphraseEmptyForbidden": "Sorry, empty passphrases are forbidden.",
|
---|
490 | "newPassphraseTitle": "Please enter a new passphrase",
|
---|
491 | "createNewKeyDialogNewPassphraseMismatch": "Passphrases don't match!",
|
---|
492 | "qdelQueuedJobQdel": "Delete the job",
|
---|
493 | "reconnectMessage": "An Existing Desktop was found. Would you like to reconnect or kill it and start a new desktop?",
|
---|
494 | "helpEmailAddress": "sc@fz-juelich.de",
|
---|
495 | "temporaryKey": "\nWould you like to use the launchers old behaviour (entering a password every time you start a new desktop) or try the new behaviour (creating an ssh key pair and entering a passphrase the first time you use the launcher after reboot.)\n\nPasswords are recomended if this is a shared user account.\n\nSSH Keys are recommended if you are the only person who uses this account.\n\nThis option can be changed from the Identity menu.\n",
|
---|
496 | "persistentMessagePersist": "Leave it running",
|
---|
497 | "newPassphraseEmptyForbidden": "Sorry, empty passphrases are forbidden.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
498 | "temporaryKeyNo": "Use my SSH Key",
|
---|
499 | "newPassphrase": "It looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
500 | "qdelQueuedJobNOOP": "Leave it in the queue (I'll reconnect later)",
|
---|
501 | "qdelQueuedJob": "It looks like you've been waiting for a job to start.\nDo you want me to delete the job or leave it in the queue so you can reconnect later?\n",
|
---|
502 | "temporaryKeyYes": "Use my password every time",
|
---|
503 | "passphrasePromptIncorrect": "\nSorry, that passphrase was incorrect.\nPlease enter the passphrase for you SSH Key\nIf you have forgoten the passphrase for you key, you may need to delete it and create a new key.\nYou can find this option under the Identity menu.\n",
|
---|
504 | "newPassphraseTooShort": "Sorry, the passphrase must be at least 6 characters.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
505 | "networkError": "It looks like a network error has occured. You may be able to resume your work by logging in again.",
|
---|
506 | "__class__": "sshKeyDistDisplayStrings",
|
---|
507 | "reconnectMessageYes": "Reconnect",
|
---|
508 | "passphrasePromptIncorrectl": "Sorry, that passphrase was incorrect. Please enter the passphrase for your ssh key",
|
---|
509 | "passwdPrompt": "Please enter the password for your JURECA account.",
|
---|
510 | "passphrasePrompt": "Please enter the passphrase for your SSH key",
|
---|
511 | "createNewKeyDialogNewPassphraseTooShort": "Passphrase is too short.",
|
---|
512 | "passwdPromptIncorrect": "Sorry, that password was incorrect.\nPlease enter the password for your JURECA account.",
|
---|
513 | "reconnectMessageNo": "New desktop",
|
---|
514 | "persistentMessage": "Would you like to leave your current session running so that you can reconnect later?\nIt has {timestring} remaining.",
|
---|
515 | "newPassphraseMismatch": "Sorry, the two passphrases you entered don't match.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
516 | "selectProjectMessage": "Please select from one of the following desktop profiles:"
|
---|
517 | }
|
---|
518 | },
|
---|
519 | "JURECA - login node - old": {
|
---|
520 | "__module__": "siteConfig",
|
---|
521 | "__class__": "siteConfig",
|
---|
522 | "directConnect": {
|
---|
523 | "regex": [
|
---|
524 | null
|
---|
525 | ],
|
---|
526 | "__module__": "siteConfig",
|
---|
527 | "cmd": null,
|
---|
528 | "requireMatch": false,
|
---|
529 | "__class__": "cmdRegEx",
|
---|
530 | "host": "login",
|
---|
531 | "failFatal": true,
|
---|
532 | "formatFatal": false,
|
---|
533 | "async": false,
|
---|
534 | "loop": false
|
---|
535 | },
|
---|
536 | "defaults": {
|
---|
537 | "jobParams_mem": 512,
|
---|
538 | "jobParams_ppn": 1,
|
---|
539 | "jobParams_nodes": 1,
|
---|
540 | "jobParams_hours": 24
|
---|
541 | },
|
---|
542 | "siteRanges": {
|
---|
543 | "jobParams_mem": [
|
---|
544 | 512,
|
---|
545 | 512
|
---|
546 | ],
|
---|
547 | "jobParams_ppn": [
|
---|
548 | 1,
|
---|
549 | 1
|
---|
550 | ],
|
---|
551 | "jobParams_nodes": [
|
---|
552 | 1,
|
---|
553 | 1
|
---|
554 | ],
|
---|
555 | "jobParams_hours": [
|
---|
556 | 1,
|
---|
557 | 24
|
---|
558 | ]
|
---|
559 | },
|
---|
560 | "sitetz": "Europe/Berlin",
|
---|
561 | "visibility": {
|
---|
562 | "usernamePanel": true,
|
---|
563 | "jobParams_nodes": false,
|
---|
564 | "jobParams_hours": false,
|
---|
565 | "jobParams_ppn": false,
|
---|
566 | "projectPanel": false,
|
---|
567 | "listProjects": true,
|
---|
568 | "resourcePanel": true,
|
---|
569 | "resolutionPanel": "Advanced",
|
---|
570 | "label_nodes": false,
|
---|
571 | "label_hours": false,
|
---|
572 | "label_ppn": false,
|
---|
573 | "cipherPanel": false,
|
---|
574 | "advancedCheckBoxPanel": true,
|
---|
575 | "debugCheckBoxPanel": "Advanced"
|
---|
576 | },
|
---|
577 | "loginHost": "jurecavis.fz-juelich.de",
|
---|
578 | "setDisplayResolution": {
|
---|
579 | "regex": [
|
---|
580 | null
|
---|
581 | ],
|
---|
582 | "__module__": "siteConfig",
|
---|
583 | "cmd": null,
|
---|
584 | "requireMatch": false,
|
---|
585 | "__class__": "cmdRegEx",
|
---|
586 | "host": "login",
|
---|
587 | "failFatal": false,
|
---|
588 | "formatFatal": false,
|
---|
589 | "async": false,
|
---|
590 | "loop": false
|
---|
591 | },
|
---|
592 | "getProjects": {
|
---|
593 | "regex": [
|
---|
594 | "(?P<group>.*)"
|
---|
595 | ],
|
---|
596 | "__module__": "siteConfig",
|
---|
597 | "cmd": "\"vncserver -profile | tail -n +2 | sed -e 's/^[[:space:]]*//'\"",
|
---|
598 | "requireMatch": false,
|
---|
599 | "__class__": "cmdRegEx",
|
---|
600 | "host": "login",
|
---|
601 | "failFatal": false,
|
---|
602 | "formatFatal": false,
|
---|
603 | "async": false,
|
---|
604 | "loop": false
|
---|
605 | },
|
---|
606 | "listAll": {
|
---|
607 | "regex": [
|
---|
608 | "(?P<jobid>(?P<jobidNumber>[0-9]+)) (?P<remainingWalltime>.*)$"
|
---|
609 | ],
|
---|
610 | "__module__": "siteConfig",
|
---|
611 | "cmd": "\"squeue -u {username} -o \\\"%i %L\\\" | tail -n -1\"",
|
---|
612 | "requireMatch": false,
|
---|
613 | "__class__": "cmdRegEx",
|
---|
614 | "host": "login",
|
---|
615 | "failFatal": true,
|
---|
616 | "formatFatal": false,
|
---|
617 | "async": false,
|
---|
618 | "loop": false
|
---|
619 | },
|
---|
620 | "startServer": {
|
---|
621 | "regex": [
|
---|
622 | "^Submitted batch job (?P<jobid>(?P<jobidNumber>[0-9]+))$"
|
---|
623 | ],
|
---|
624 | "__module__": "siteConfig",
|
---|
625 | "cmd": "\"mkdir ~/.vnc ; rm -f ~/.vnc/strudel_vislogin_clearpass ; touch ~/.vnc/strudel_vislogin_clearpass ; chmod 600 ~/.vnc/strudel_vislogin_clearpass ; passwd=\"'$'\"( dd if=/dev/urandom bs=1 count=8 2>/dev/null | md5sum | cut -b 1-8 ) ; echo \"'$'\"passwd > ~/.vnc/strudel_vislogin_clearpass ; cat ~/.vnc/strudel_vislogin_clearpass | vncpasswd -f > ~/.vnc/strudel_vislogin_passwd ; chmod 600 ~/.vnc/strudel_vislogin_passwd ; echo -e '#!/bin/bash\\n vncserver -rfbauth ~/.vnc/strudel_vislogin_passwd -fg -profile {project} -geometry {resolution}' | sbatch -p vis -N {nodes} --cpu_bind=none --gres=mem512,gpu:1 --mincpus {ppn} --start-xserver --time={hours}:00:00 -J desktop_{username} -o .vnc/slurm-%j.out \"",
|
---|
626 | "requireMatch": true,
|
---|
627 | "__class__": "cmdRegEx",
|
---|
628 | "host": "login",
|
---|
629 | "failFatal": true,
|
---|
630 | "formatFatal": false,
|
---|
631 | "async": false,
|
---|
632 | "loop": false
|
---|
633 | },
|
---|
634 | "showStart": {
|
---|
635 | "regex": [
|
---|
636 | "(?P<estimatedStart>.*)"
|
---|
637 | ],
|
---|
638 | "__module__": "siteConfig",
|
---|
639 | "cmd": "squeue -j {jobidNumber} --start | grep ^[0-9] | sed 's/ \\+ / /g' | cut -d\" \" -f6",
|
---|
640 | "requireMatch": true,
|
---|
641 | "__class__": "cmdRegEx",
|
---|
642 | "host": "login",
|
---|
643 | "failFatal": true,
|
---|
644 | "formatFatal": false,
|
---|
645 | "async": false,
|
---|
646 | "loop": false
|
---|
647 | },
|
---|
648 | "execHost": {
|
---|
649 | "regex": [
|
---|
650 | "(?P<execHost>\\S+)"
|
---|
651 | ],
|
---|
652 | "__module__": "siteConfig",
|
---|
653 | "cmd": "\"scontrol show job {jobidNumber} | grep BatchHost | cut -f 2 -d '=' | xargs -iname getent hosts name | cut -f 1 -d ' ' \"",
|
---|
654 | "requireMatch": true,
|
---|
655 | "__class__": "cmdRegEx",
|
---|
656 | "host": "login",
|
---|
657 | "failFatal": true,
|
---|
658 | "formatFatal": false,
|
---|
659 | "async": false,
|
---|
660 | "loop": false
|
---|
661 | },
|
---|
662 | "runSanityCheck": {
|
---|
663 | "regex": [
|
---|
664 | null
|
---|
665 | ],
|
---|
666 | "__module__": "siteConfig",
|
---|
667 | "cmd": null,
|
---|
668 | "requireMatch": false,
|
---|
669 | "__class__": "cmdRegEx",
|
---|
670 | "host": "login",
|
---|
671 | "failFatal": false,
|
---|
672 | "formatFatal": false,
|
---|
673 | "async": false,
|
---|
674 | "loop": false
|
---|
675 | },
|
---|
676 | "agent": {
|
---|
677 | "regex": [
|
---|
678 | "agent_hello"
|
---|
679 | ],
|
---|
680 | "__module__": "siteConfig",
|
---|
681 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=yes -l {username} {loginHost} \"echo agent_hello; bash \"",
|
---|
682 | "requireMatch": true,
|
---|
683 | "__class__": "cmdRegEx",
|
---|
684 | "host": "local",
|
---|
685 | "failFatal": true,
|
---|
686 | "formatFatal": false,
|
---|
687 | "async": true,
|
---|
688 | "loop": false
|
---|
689 | },
|
---|
690 | "vncDisplay": {
|
---|
691 | "regex": [
|
---|
692 | "^.*?started on display \\S+(?P<vncDisplay>:[0-9]+)\\s*"
|
---|
693 | ],
|
---|
694 | "__module__": "siteConfig",
|
---|
695 | "cmd": "\"cat .vnc/slurm-{jobidNumber}.out\"",
|
---|
696 | "requireMatch": true,
|
---|
697 | "__class__": "cmdRegEx",
|
---|
698 | "host": "login",
|
---|
699 | "failFatal": true,
|
---|
700 | "formatFatal": false,
|
---|
701 | "async": false,
|
---|
702 | "loop": false
|
---|
703 | },
|
---|
704 | "authURL": null,
|
---|
705 | "oauthclientpasswd": null,
|
---|
706 | "oauthclient": null,
|
---|
707 | "authorizedKeysFile": null,
|
---|
708 | "username": null,
|
---|
709 | "project": null,
|
---|
710 | "onFirstLogin": null,
|
---|
711 | "otp": {
|
---|
712 | "regex": [
|
---|
713 | "^(?P<vncPasswd>\\S+)$"
|
---|
714 | ],
|
---|
715 | "__module__": "siteConfig",
|
---|
716 | "cmd": "\"cat ~/.vnc/strudel_vislogin_clearpass\"",
|
---|
717 | "requireMatch": true,
|
---|
718 | "__class__": "cmdRegEx",
|
---|
719 | "host": "login",
|
---|
720 | "failFatal": true,
|
---|
721 | "formatFatal": false,
|
---|
722 | "async": false,
|
---|
723 | "loop": false
|
---|
724 | },
|
---|
725 | "tunnel": {
|
---|
726 | "regex": [
|
---|
727 | "tunnel_hello"
|
---|
728 | ],
|
---|
729 | "__module__": "siteConfig",
|
---|
730 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=yes -L {localPortNumber}:{execHost}:{remotePortNumber} -l {username} {loginHost} \"echo tunnel_hello; bash\"",
|
---|
731 | "requireMatch": true,
|
---|
732 | "__class__": "cmdRegEx",
|
---|
733 | "host": "local",
|
---|
734 | "failFatal": true,
|
---|
735 | "formatFatal": false,
|
---|
736 | "async": true,
|
---|
737 | "loop": false
|
---|
738 | },
|
---|
739 | "onConnectScript": {
|
---|
740 | "regex": [
|
---|
741 | null
|
---|
742 | ],
|
---|
743 | "__module__": "siteConfig",
|
---|
744 | "cmd": null,
|
---|
745 | "requireMatch": false,
|
---|
746 | "__class__": "cmdRegEx",
|
---|
747 | "host": "login",
|
---|
748 | "failFatal": false,
|
---|
749 | "formatFatal": false,
|
---|
750 | "async": false,
|
---|
751 | "loop": false
|
---|
752 | },
|
---|
753 | "running": {
|
---|
754 | "regex": [
|
---|
755 | "JobState=RUNNING"
|
---|
756 | ],
|
---|
757 | "__module__": "siteConfig",
|
---|
758 | "cmd": "\"scontrol show job {jobidNumber}\"",
|
---|
759 | "requireMatch": true,
|
---|
760 | "__class__": "cmdRegEx",
|
---|
761 | "host": "login",
|
---|
762 | "failFatal": true,
|
---|
763 | "formatFatal": false,
|
---|
764 | "async": false,
|
---|
765 | "loop": false
|
---|
766 | },
|
---|
767 | "stopForRestart": {
|
---|
768 | "regex": [
|
---|
769 | null
|
---|
770 | ],
|
---|
771 | "__module__": "siteConfig",
|
---|
772 | "cmd": "\"scancel {jobidNumber}\"",
|
---|
773 | "requireMatch": false,
|
---|
774 | "__class__": "cmdRegEx",
|
---|
775 | "host": "login",
|
---|
776 | "failFatal": true,
|
---|
777 | "formatFatal": false,
|
---|
778 | "async": false,
|
---|
779 | "loop": false
|
---|
780 | },
|
---|
781 | "stop": {
|
---|
782 | "regex": [
|
---|
783 | null
|
---|
784 | ],
|
---|
785 | "__module__": "siteConfig",
|
---|
786 | "cmd": "\"scancel {jobidNumber}\"",
|
---|
787 | "requireMatch": false,
|
---|
788 | "__class__": "cmdRegEx",
|
---|
789 | "host": "login",
|
---|
790 | "failFatal": true,
|
---|
791 | "formatFatal": false,
|
---|
792 | "async": false,
|
---|
793 | "loop": false
|
---|
794 | },
|
---|
795 | "provision": null,
|
---|
796 | "instanceFlavour": null,
|
---|
797 | "relabel": {},
|
---|
798 | "imageid": null,
|
---|
799 | "createReservation": {
|
---|
800 | "regex": [
|
---|
801 | null
|
---|
802 | ],
|
---|
803 | "__module__": "siteConfig",
|
---|
804 | "cmd": null,
|
---|
805 | "requireMatch": false,
|
---|
806 | "__class__": "cmdRegEx",
|
---|
807 | "host": "login",
|
---|
808 | "failFatal": false,
|
---|
809 | "formatFatal": false,
|
---|
810 | "async": false,
|
---|
811 | "loop": false
|
---|
812 | },
|
---|
813 | "listReservations": {
|
---|
814 | "regex": [
|
---|
815 | null
|
---|
816 | ],
|
---|
817 | "__module__": "siteConfig",
|
---|
818 | "cmd": null,
|
---|
819 | "requireMatch": false,
|
---|
820 | "__class__": "cmdRegEx",
|
---|
821 | "host": "login",
|
---|
822 | "failFatal": false,
|
---|
823 | "formatFatal": false,
|
---|
824 | "async": false,
|
---|
825 | "loop": false
|
---|
826 | },
|
---|
827 | "deleteReservation": {
|
---|
828 | "regex": [
|
---|
829 | null
|
---|
830 | ],
|
---|
831 | "__module__": "siteConfig",
|
---|
832 | "cmd": null,
|
---|
833 | "requireMatch": false,
|
---|
834 | "__class__": "cmdRegEx",
|
---|
835 | "host": "login",
|
---|
836 | "failFatal": false,
|
---|
837 | "formatFatal": false,
|
---|
838 | "async": false,
|
---|
839 | "loop": false
|
---|
840 | },
|
---|
841 | "dbusSessionBusAddress": {
|
---|
842 | "regex": [
|
---|
843 | "^DBUS_SESSION_BUS_ADDRESS=(?P<dbusSessionBusAddress>.*)$"
|
---|
844 | ],
|
---|
845 | "__module__": "siteConfig",
|
---|
846 | "cmd": "\"echo DBUS_SESSION_BUS_ADDRESS=dummy_dbus_session_bus_address\"",
|
---|
847 | "requireMatch": true,
|
---|
848 | "__class__": "cmdRegEx",
|
---|
849 | "host": "login",
|
---|
850 | "failFatal": true,
|
---|
851 | "formatFatal": false,
|
---|
852 | "async": false,
|
---|
853 | "loop": false
|
---|
854 | },
|
---|
855 | "openWebDavShareInRemoteFileBrowser": {
|
---|
856 | "regex": [
|
---|
857 | null
|
---|
858 | ],
|
---|
859 | "__module__": "siteConfig",
|
---|
860 | "cmd": "\"/usr/bin/ssh {execHost} 'DISPLAY={vncDisplay} Thunar davs://{localUsername}:{vncPasswd}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}'\"",
|
---|
861 | "requireMatch": false,
|
---|
862 | "__class__": "cmdRegEx",
|
---|
863 | "host": "login",
|
---|
864 | "failFatal": true,
|
---|
865 | "formatFatal": false,
|
---|
866 | "async": false,
|
---|
867 | "loop": false
|
---|
868 | },
|
---|
869 | "displayWebDavInfoDialogOnRemoteDesktop": {
|
---|
870 | "regex": [
|
---|
871 | null
|
---|
872 | ],
|
---|
873 | "__module__": "siteConfig",
|
---|
874 | "cmd": "\"/usr/bin/ssh {execHost} 'echo -e \\\"You can access your local home directory in the file browser Thunar with the URL:%sbr%s\\ndavs://{localUsername}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}%sbr%s\\nYour one-time password is {vncPasswd}\\\" > ~/.vnc/\\$(hostname){vncDisplay}-webdav.txt;'\"",
|
---|
875 | "requireMatch": false,
|
---|
876 | "__class__": "cmdRegEx",
|
---|
877 | "host": "login",
|
---|
878 | "failFatal": true,
|
---|
879 | "formatFatal": false,
|
---|
880 | "async": false,
|
---|
881 | "loop": false
|
---|
882 | },
|
---|
883 | "webDavWindowID": {
|
---|
884 | "regex": [
|
---|
885 | "^DummyWebDavWindowID=(?P<webDavWindowID>.*)$"
|
---|
886 | ],
|
---|
887 | "__module__": "siteConfig",
|
---|
888 | "cmd": "\"echo DummyWebDavWindowID=-1\"",
|
---|
889 | "requireMatch": true,
|
---|
890 | "__class__": "cmdRegEx",
|
---|
891 | "host": "login",
|
---|
892 | "failFatal": true,
|
---|
893 | "formatFatal": false,
|
---|
894 | "async": false,
|
---|
895 | "loop": false
|
---|
896 | },
|
---|
897 | "webDavCloseWindow": {
|
---|
898 | "regex": [
|
---|
899 | null
|
---|
900 | ],
|
---|
901 | "__module__": "siteConfig",
|
---|
902 | "cmd": "\"/usr/bin/ssh {execHost} 'DISPLAY={vncDisplay} /usr/local/desktop/close_webdav_window.sh webdav://{localUsername}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}'\"",
|
---|
903 | "requireMatch": false,
|
---|
904 | "__class__": "cmdRegEx",
|
---|
905 | "host": "login",
|
---|
906 | "failFatal": true,
|
---|
907 | "formatFatal": false,
|
---|
908 | "async": false,
|
---|
909 | "loop": false
|
---|
910 | },
|
---|
911 | "webDavMount": {
|
---|
912 | "regex": [
|
---|
913 | null
|
---|
914 | ],
|
---|
915 | "__module__": "siteConfig",
|
---|
916 | "cmd": "echo Mounting WebDAV...",
|
---|
917 | "requireMatch": false,
|
---|
918 | "__class__": "cmdRegEx",
|
---|
919 | "host": "login",
|
---|
920 | "failFatal": true,
|
---|
921 | "formatFatal": false,
|
---|
922 | "async": false,
|
---|
923 | "loop": false
|
---|
924 | },
|
---|
925 | "webDavUnmount": {
|
---|
926 | "regex": [
|
---|
927 | "hello"
|
---|
928 | ],
|
---|
929 | "__module__": "siteConfig",
|
---|
930 | "cmd": "echo hello",
|
---|
931 | "requireMatch": true,
|
---|
932 | "__class__": "cmdRegEx",
|
---|
933 | "host": "login",
|
---|
934 | "failFatal": true,
|
---|
935 | "formatFatal": false,
|
---|
936 | "async": false,
|
---|
937 | "loop": false
|
---|
938 | },
|
---|
939 | "webDavTunnel": {
|
---|
940 | "regex": [
|
---|
941 | "tunnel_hello"
|
---|
942 | ],
|
---|
943 | "__module__": "siteConfig",
|
---|
944 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=no -oExitOnForwardFailure=yes -R {intermediateWebDavPortNumber}:localhost:{localWebDavPortNumber} -l {username} {loginHost} \"ssh -R {remoteWebDavPortNumber}:localhost:{intermediateWebDavPortNumber} {execHost} 'echo tunnel_hello; bash'\"",
|
---|
945 | "requireMatch": true,
|
---|
946 | "__class__": "cmdRegEx",
|
---|
947 | "host": "local",
|
---|
948 | "failFatal": true,
|
---|
949 | "formatFatal": false,
|
---|
950 | "async": true,
|
---|
951 | "loop": false
|
---|
952 | },
|
---|
953 | "webDavRemotePort": {
|
---|
954 | "regex": [
|
---|
955 | "^(?P<remoteWebDavPortNumber>[0-9]+)$"
|
---|
956 | ],
|
---|
957 | "__module__": "siteConfig",
|
---|
958 | "cmd": "\"/usr/bin/ssh {execHost} /usr/local/jsc/etc/xdg/scripts/strudel/get_ephemeral_port.py\"",
|
---|
959 | "requireMatch": true,
|
---|
960 | "__class__": "cmdRegEx",
|
---|
961 | "host": "login",
|
---|
962 | "failFatal": true,
|
---|
963 | "formatFatal": false,
|
---|
964 | "async": false,
|
---|
965 | "loop": false
|
---|
966 | },
|
---|
967 | "webDavIntermediatePort": {
|
---|
968 | "regex": [
|
---|
969 | "^(?P<intermediateWebDavPortNumber>[0-9]+)$"
|
---|
970 | ],
|
---|
971 | "__module__": "siteConfig",
|
---|
972 | "cmd": "\"/usr/local/jsc/etc/xdg/scripts/strudel/get_ephemeral_port.py\"",
|
---|
973 | "requireMatch": true,
|
---|
974 | "__class__": "cmdRegEx",
|
---|
975 | "host": "login",
|
---|
976 | "failFatal": true,
|
---|
977 | "formatFatal": false,
|
---|
978 | "async": false,
|
---|
979 | "loop": false
|
---|
980 | },
|
---|
981 | "messageRegexs": [
|
---|
982 | {
|
---|
983 | "pattern": "^INFO:(?P<info>.*(?:\n|\r\n?))",
|
---|
984 | "__class__": "__regex__"
|
---|
985 | },
|
---|
986 | {
|
---|
987 | "pattern": "^WARN:(?P<warn>.*(?:\n|\r\n?))",
|
---|
988 | "__class__": "__regex__"
|
---|
989 | },
|
---|
990 | {
|
---|
991 | "pattern": "^ERROR:(?P<error>.*(?:\n|\r\n?))",
|
---|
992 | "__class__": "__regex__"
|
---|
993 | }
|
---|
994 | ],
|
---|
995 | "displayStrings": {
|
---|
996 | "__module__": "siteConfig",
|
---|
997 | "onFirstLoginFailure": "An unknown error occured. Please contact your site help desk.",
|
---|
998 | "persistentMessageStop": "Stop the desktop",
|
---|
999 | "createNewKeyDialogNewPassphraseEmptyForbidden": "Sorry, empty passphrases are forbidden.",
|
---|
1000 | "newPassphraseTitle": "Please enter a new passphrase",
|
---|
1001 | "createNewKeyDialogNewPassphraseMismatch": "Passphrases don't match!",
|
---|
1002 | "qdelQueuedJobQdel": "Delete the job",
|
---|
1003 | "reconnectMessage": "An Existing Desktop was found. It has {timestring} remaining. Would you like to reconnect or kill it and start a new desktop?",
|
---|
1004 | "helpEmailAddress": "sc@fz-juelich.de",
|
---|
1005 | "temporaryKey": "\nWould you like to use the launchers old behaviour (entering a password every time you start a new desktop) or try the new behaviour (creating an ssh key pair and entering a passphrase the first time you use the launcher after reboot.)\n\nPasswords are recomended if this is a shared user account.\n\nSSH Keys are recommended if you are the only person who uses this account.\n\nThis option can be changed from the Identity menu.\n",
|
---|
1006 | "persistentMessagePersist": "Leave it running",
|
---|
1007 | "newPassphraseEmptyForbidden": "Sorry, empty passphrases are forbidden.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
1008 | "temporaryKeyNo": "Use my SSH Key",
|
---|
1009 | "newPassphrase": "It looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
1010 | "qdelQueuedJobNOOP": "Leave it in the queue (I'll reconnect later)",
|
---|
1011 | "qdelQueuedJob": "It looks like you've been waiting for a job to start.\nDo you want me to delete the job or leave it in the queue so you can reconnect later?\n",
|
---|
1012 | "temporaryKeyYes": "Use my password every time",
|
---|
1013 | "passphrasePromptIncorrect": "\nSorry, that passphrase was incorrect.\nPlease enter the passphrase for you SSH Key\nIf you have forgoten the passphrase for you key, you may need to delete it and create a new key.\nYou can find this option under the Identity menu.\n",
|
---|
1014 | "newPassphraseTooShort": "Sorry, the passphrase must be at least 6 characters.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
1015 | "networkError": "It looks like a network error has occured. You may be able to resume your work by logging in again.",
|
---|
1016 | "__class__": "sshKeyDistDisplayStrings",
|
---|
1017 | "reconnectMessageYes": "Reconnect",
|
---|
1018 | "passphrasePromptIncorrectl": "Sorry, that passphrase was incorrect. Please enter the passphrase for your ssh key",
|
---|
1019 | "passwdPrompt": "Please enter the password for your JURECA account.",
|
---|
1020 | "passphrasePrompt": "Please enter the passphrase for your SSH key",
|
---|
1021 | "createNewKeyDialogNewPassphraseTooShort": "Passphrase is too short.",
|
---|
1022 | "passwdPromptIncorrect": "Sorry, that password was incorrect.\nPlease enter the password for your JURECA account.",
|
---|
1023 | "reconnectMessageNo": "New desktop",
|
---|
1024 | "persistentMessage": "Would you like to leave your current session running so that you can reconnect later?\nIt has {timestring} remaining.",
|
---|
1025 | "newPassphraseMismatch": "Sorry, the two passphrases you entered don't match.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
1026 | "selectProjectMessage": "Please select from one of the following desktop profiles:"
|
---|
1027 | }
|
---|
1028 | },
|
---|
1029 | "JURECA - login node (vis: 2xGPU)": {
|
---|
1030 | "__module__": "siteConfig",
|
---|
1031 | "__class__": "siteConfig",
|
---|
1032 | "directConnect": {
|
---|
1033 | "regex": [
|
---|
1034 | null
|
---|
1035 | ],
|
---|
1036 | "__module__": "siteConfig",
|
---|
1037 | "cmd": null,
|
---|
1038 | "requireMatch": false,
|
---|
1039 | "__class__": "cmdRegEx",
|
---|
1040 | "host": "login",
|
---|
1041 | "failFatal": true,
|
---|
1042 | "formatFatal": false,
|
---|
1043 | "async": false,
|
---|
1044 | "loop": false
|
---|
1045 | },
|
---|
1046 | "defaults": {
|
---|
1047 | "jobParams_mem": 512,
|
---|
1048 | "jobParams_ppn": 1,
|
---|
1049 | "jobParams_nodes": 1,
|
---|
1050 | "jobParams_hours": 24
|
---|
1051 | },
|
---|
1052 | "siteRanges": {
|
---|
1053 | "jobParams_mem": [
|
---|
1054 | 512,
|
---|
1055 | 512
|
---|
1056 | ],
|
---|
1057 | "jobParams_ppn": [
|
---|
1058 | 1,
|
---|
1059 | 1
|
---|
1060 | ],
|
---|
1061 | "jobParams_nodes": [
|
---|
1062 | 1,
|
---|
1063 | 1
|
---|
1064 | ],
|
---|
1065 | "jobParams_hours": [
|
---|
1066 | 1,
|
---|
1067 | 24
|
---|
1068 | ]
|
---|
1069 | },
|
---|
1070 | "sitetz": "Europe/Berlin",
|
---|
1071 | "visibility": {
|
---|
1072 | "usernamePanel": true,
|
---|
1073 | "jobParams_nodes": false,
|
---|
1074 | "jobParams_hours": false,
|
---|
1075 | "jobParams_ppn": false,
|
---|
1076 | "projectPanel": false,
|
---|
1077 | "listProjects": true,
|
---|
1078 | "resourcePanel": true,
|
---|
1079 | "resolutionPanel": "Advanced",
|
---|
1080 | "label_nodes": false,
|
---|
1081 | "label_hours": false,
|
---|
1082 | "label_ppn": false,
|
---|
1083 | "cipherPanel": false,
|
---|
1084 | "advancedCheckBoxPanel": true,
|
---|
1085 | "debugCheckBoxPanel": "Advanced"
|
---|
1086 | },
|
---|
1087 | "loginHost": "jurecavis.fz-juelich.de",
|
---|
1088 | "setDisplayResolution": {
|
---|
1089 | "regex": [
|
---|
1090 | null
|
---|
1091 | ],
|
---|
1092 | "__module__": "siteConfig",
|
---|
1093 | "cmd": null,
|
---|
1094 | "requireMatch": false,
|
---|
1095 | "__class__": "cmdRegEx",
|
---|
1096 | "host": "login",
|
---|
1097 | "failFatal": false,
|
---|
1098 | "formatFatal": false,
|
---|
1099 | "async": false,
|
---|
1100 | "loop": false
|
---|
1101 | },
|
---|
1102 | "runSanityCheck": {
|
---|
1103 | "regex": [
|
---|
1104 | null
|
---|
1105 | ],
|
---|
1106 | "__module__": "siteConfig",
|
---|
1107 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py sanitycheck -f viscompute -l {launcher_version_number}'",
|
---|
1108 | "requireMatch": false,
|
---|
1109 | "__class__": "cmdRegEx",
|
---|
1110 | "host": "login",
|
---|
1111 | "failFatal": false,
|
---|
1112 | "formatFatal": false,
|
---|
1113 | "async": false,
|
---|
1114 | "loop": false
|
---|
1115 | },
|
---|
1116 | "getProjects": {
|
---|
1117 | "regex": [
|
---|
1118 | "(?P<group>.*)"
|
---|
1119 | ],
|
---|
1120 | "__module__": "siteConfig",
|
---|
1121 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py getprofiles'",
|
---|
1122 | "requireMatch": false,
|
---|
1123 | "__class__": "cmdRegEx",
|
---|
1124 | "host": "login",
|
---|
1125 | "failFatal": false,
|
---|
1126 | "formatFatal": false,
|
---|
1127 | "async": false,
|
---|
1128 | "loop": false
|
---|
1129 | },
|
---|
1130 | "listAll": {
|
---|
1131 | "regex": [
|
---|
1132 | "(?P<sessionId>.*) (?P<remainingWalltime>.*)$"
|
---|
1133 | ],
|
---|
1134 | "__module__": "siteConfig",
|
---|
1135 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py listall -f vislogin'",
|
---|
1136 | "requireMatch": false,
|
---|
1137 | "__class__": "cmdRegEx",
|
---|
1138 | "host": "login",
|
---|
1139 | "failFatal": true,
|
---|
1140 | "formatFatal": false,
|
---|
1141 | "async": false,
|
---|
1142 | "loop": false
|
---|
1143 | },
|
---|
1144 | "startServer": {
|
---|
1145 | "regex": [
|
---|
1146 | "(?P<sessionId>\\S+)"
|
---|
1147 | ],
|
---|
1148 | "__module__": "siteConfig",
|
---|
1149 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py newsession -f vislogin -x {project} -r {resolution}'",
|
---|
1150 | "requireMatch": true,
|
---|
1151 | "__class__": "cmdRegEx",
|
---|
1152 | "host": "login",
|
---|
1153 | "failFatal": true,
|
---|
1154 | "formatFatal": false,
|
---|
1155 | "async": false,
|
---|
1156 | "loop": false
|
---|
1157 | },
|
---|
1158 | "showStart": {
|
---|
1159 | "regex": [
|
---|
1160 | "(?P<estimatedStart>.*)"
|
---|
1161 | ],
|
---|
1162 | "__module__": "siteConfig",
|
---|
1163 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py showstart -f vislogin -s {sessionId}'",
|
---|
1164 | "requireMatch": true,
|
---|
1165 | "__class__": "cmdRegEx",
|
---|
1166 | "host": "login",
|
---|
1167 | "failFatal": true,
|
---|
1168 | "formatFatal": false,
|
---|
1169 | "async": false,
|
---|
1170 | "loop": false
|
---|
1171 | },
|
---|
1172 | "execHost": {
|
---|
1173 | "regex": [
|
---|
1174 | "(?P<execHost>\\S+)"
|
---|
1175 | ],
|
---|
1176 | "__module__": "siteConfig",
|
---|
1177 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py exechost -f vislogin -s {sessionId}'",
|
---|
1178 | "requireMatch": true,
|
---|
1179 | "__class__": "cmdRegEx",
|
---|
1180 | "host": "login",
|
---|
1181 | "failFatal": true,
|
---|
1182 | "formatFatal": false,
|
---|
1183 | "async": false,
|
---|
1184 | "loop": false
|
---|
1185 | },
|
---|
1186 | "running": {
|
---|
1187 | "regex": [
|
---|
1188 | "true"
|
---|
1189 | ],
|
---|
1190 | "__module__": "siteConfig",
|
---|
1191 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py isrunning -f vislogin -s {sessionId}'",
|
---|
1192 | "requireMatch": true,
|
---|
1193 | "__class__": "cmdRegEx",
|
---|
1194 | "host": "login",
|
---|
1195 | "failFatal": true,
|
---|
1196 | "formatFatal": false,
|
---|
1197 | "async": false,
|
---|
1198 | "loop": false
|
---|
1199 | },
|
---|
1200 | "agent": {
|
---|
1201 | "regex": [
|
---|
1202 | "agent_hello"
|
---|
1203 | ],
|
---|
1204 | "__module__": "siteConfig",
|
---|
1205 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=yes -l {username} {loginHost} \"ssh -A -oStrictHostKeyChecking=no {execHost} \\\"echo agent_hello; bash \\\"\"",
|
---|
1206 | "requireMatch": true,
|
---|
1207 | "__class__": "cmdRegEx",
|
---|
1208 | "host": "local",
|
---|
1209 | "failFatal": true,
|
---|
1210 | "formatFatal": false,
|
---|
1211 | "async": true,
|
---|
1212 | "loop": false
|
---|
1213 | },
|
---|
1214 | "vncDisplay": {
|
---|
1215 | "regex": [
|
---|
1216 | "^(?<vncDisplay>:[0-9]+)\\s*(?P<vncPID>[0-9]+)\\s*$"
|
---|
1217 | ],
|
---|
1218 | "__module__": "siteConfig",
|
---|
1219 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py vncdisplay -f vislogin -s {sessionId}'",
|
---|
1220 | "requireMatch": true,
|
---|
1221 | "__class__": "cmdRegEx",
|
---|
1222 | "host": "login",
|
---|
1223 | "failFatal": true,
|
---|
1224 | "formatFatal": false,
|
---|
1225 | "async": false,
|
---|
1226 | "loop": false
|
---|
1227 | },
|
---|
1228 | "authURL": null,
|
---|
1229 | "oauthclientpasswd": null,
|
---|
1230 | "oauthclient": null,
|
---|
1231 | "authorizedKeysFile": null,
|
---|
1232 | "username": null,
|
---|
1233 | "onFirstLogin": null,
|
---|
1234 | "otp": {
|
---|
1235 | "regex": [
|
---|
1236 | "^(?P<vncpPasswd>\\S+)$"
|
---|
1237 | ],
|
---|
1238 | "__module__": "siteConfig",
|
---|
1239 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py otp -f vislogin -e {execHost} -d {vncDisplay}'",
|
---|
1240 | "requireMatch": true,
|
---|
1241 | "__class__": "cmdRegEx",
|
---|
1242 | "host": "login",
|
---|
1243 | "failFatal": true,
|
---|
1244 | "formatFatal": false,
|
---|
1245 | "async": false,
|
---|
1246 | "loop": false
|
---|
1247 | },
|
---|
1248 | "tunnel": {
|
---|
1249 | "regex": [
|
---|
1250 | "tunnel_hello"
|
---|
1251 | ],
|
---|
1252 | "__module__": "siteConfig",
|
---|
1253 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=yes -L {localPortNumber}:{execHost}:{remotePortNumber} -l {username} {loginHost} \"echo tunnel_hello; bash\"",
|
---|
1254 | "requireMatch": true,
|
---|
1255 | "__class__": "cmdRegEx",
|
---|
1256 | "host": "local",
|
---|
1257 | "failFatal": true,
|
---|
1258 | "formatFatal": false,
|
---|
1259 | "async": true,
|
---|
1260 | "loop": false
|
---|
1261 | },
|
---|
1262 | "onConnectScript": {
|
---|
1263 | "regex": [
|
---|
1264 | null
|
---|
1265 | ],
|
---|
1266 | "__module__": "siteConfig",
|
---|
1267 | "cmd": null,
|
---|
1268 | "requireMatch": false,
|
---|
1269 | "__class__": "cmdRegEx",
|
---|
1270 | "host": "login",
|
---|
1271 | "failFatal": false,
|
---|
1272 | "formatFatal": false,
|
---|
1273 | "async": false,
|
---|
1274 | "loop": false
|
---|
1275 | },
|
---|
1276 | "stopForRestart": {
|
---|
1277 | "regex": [
|
---|
1278 | null
|
---|
1279 | ],
|
---|
1280 | "__module__": "siteConfig",
|
---|
1281 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py stop -f vislogin -s {sessionId} --wait 4'",
|
---|
1282 | "requireMatch": false,
|
---|
1283 | "__class__": "cmdRegEx",
|
---|
1284 | "host": "login",
|
---|
1285 | "failFatal": true,
|
---|
1286 | "formatFatal": false,
|
---|
1287 | "async": false,
|
---|
1288 | "loop": false
|
---|
1289 | },
|
---|
1290 | "stop": {
|
---|
1291 | "regex": [
|
---|
1292 | null
|
---|
1293 | ],
|
---|
1294 | "__module__": "siteConfig",
|
---|
1295 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py stop -f vislogin -s {sessionId}'",
|
---|
1296 | "requireMatch": false,
|
---|
1297 | "__class__": "cmdRegEx",
|
---|
1298 | "host": "login",
|
---|
1299 | "failFatal": true,
|
---|
1300 | "formatFatal": false,
|
---|
1301 | "async": false,
|
---|
1302 | "loop": false
|
---|
1303 | },
|
---|
1304 | "provision": null,
|
---|
1305 | "instanceFlavour": null,
|
---|
1306 | "relabel": {},
|
---|
1307 | "imageid": null,
|
---|
1308 | "createReservation": {
|
---|
1309 | "regex": [
|
---|
1310 | null
|
---|
1311 | ],
|
---|
1312 | "__module__": "siteConfig",
|
---|
1313 | "cmd": null,
|
---|
1314 | "requireMatch": false,
|
---|
1315 | "__class__": "cmdRegEx",
|
---|
1316 | "host": "login",
|
---|
1317 | "failFatal": false,
|
---|
1318 | "formatFatal": false,
|
---|
1319 | "async": false,
|
---|
1320 | "loop": false
|
---|
1321 | },
|
---|
1322 | "listReservations": {
|
---|
1323 | "regex": [
|
---|
1324 | null
|
---|
1325 | ],
|
---|
1326 | "__module__": "siteConfig",
|
---|
1327 | "cmd": null,
|
---|
1328 | "requireMatch": false,
|
---|
1329 | "__class__": "cmdRegEx",
|
---|
1330 | "host": "login",
|
---|
1331 | "failFatal": false,
|
---|
1332 | "formatFatal": false,
|
---|
1333 | "async": false,
|
---|
1334 | "loop": false
|
---|
1335 | },
|
---|
1336 | "deleteReservation": {
|
---|
1337 | "regex": [
|
---|
1338 | null
|
---|
1339 | ],
|
---|
1340 | "__module__": "siteConfig",
|
---|
1341 | "cmd": null,
|
---|
1342 | "requireMatch": false,
|
---|
1343 | "__class__": "cmdRegEx",
|
---|
1344 | "host": "login",
|
---|
1345 | "failFatal": false,
|
---|
1346 | "formatFatal": false,
|
---|
1347 | "async": false,
|
---|
1348 | "loop": false
|
---|
1349 | },
|
---|
1350 | "dbusSessionBusAddress": {
|
---|
1351 | "regex": [
|
---|
1352 | "^DBUS_SESSION_BUS_ADDRESS=(?P<dbusSessionBusAddress>.*)$"
|
---|
1353 | ],
|
---|
1354 | "__module__": "siteConfig",
|
---|
1355 | "cmd": "\"echo DBUS_SESSION_BUS_ADDRESS=dummy_dbus_session_bus_address\"",
|
---|
1356 | "requireMatch": true,
|
---|
1357 | "__class__": "cmdRegEx",
|
---|
1358 | "host": "login",
|
---|
1359 | "failFatal": true,
|
---|
1360 | "formatFatal": false,
|
---|
1361 | "async": false,
|
---|
1362 | "loop": false
|
---|
1363 | },
|
---|
1364 | "openWebDavShareInRemoteFileBrowser": {
|
---|
1365 | "regex": [
|
---|
1366 | null
|
---|
1367 | ],
|
---|
1368 | "__module__": "siteConfig",
|
---|
1369 | "cmd": "\"/usr/bin/ssh {execHost} 'DISPLAY={vncDisplay} /usr/bin/konqueror webdav://{localUsername}:{vncPasswd}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}'\"",
|
---|
1370 | "requireMatch": false,
|
---|
1371 | "__class__": "cmdRegEx",
|
---|
1372 | "host": "login",
|
---|
1373 | "failFatal": true,
|
---|
1374 | "formatFatal": false,
|
---|
1375 | "async": false,
|
---|
1376 | "loop": false
|
---|
1377 | },
|
---|
1378 | "displayWebDavInfoDialogOnRemoteDesktop": {
|
---|
1379 | "regex": [
|
---|
1380 | null
|
---|
1381 | ],
|
---|
1382 | "__module__": "siteConfig",
|
---|
1383 | "cmd": "\"/usr/bin/ssh {execHost} 'echo -e \\\"You can access your local home directory in Konqueror with the URL:%sbr%s\\nwebdav://{localUsername}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}%sbr%s\\nYour one-time password is {vncPasswd}\\\" > ~/.vnc/\\$(hostname){vncDisplay}-webdav.txt;'\"",
|
---|
1384 | "requireMatch": false,
|
---|
1385 | "__class__": "cmdRegEx",
|
---|
1386 | "host": "login",
|
---|
1387 | "failFatal": true,
|
---|
1388 | "formatFatal": false,
|
---|
1389 | "async": false,
|
---|
1390 | "loop": false
|
---|
1391 | },
|
---|
1392 | "webDavWindowID": {
|
---|
1393 | "regex": [
|
---|
1394 | "^DummyWebDavWindowID=(?P<webDavWindowID>.*)$"
|
---|
1395 | ],
|
---|
1396 | "__module__": "siteConfig",
|
---|
1397 | "cmd": "\"echo DummyWebDavWindowID=-1\"",
|
---|
1398 | "requireMatch": true,
|
---|
1399 | "__class__": "cmdRegEx",
|
---|
1400 | "host": "login",
|
---|
1401 | "failFatal": true,
|
---|
1402 | "formatFatal": false,
|
---|
1403 | "async": false,
|
---|
1404 | "loop": false
|
---|
1405 | },
|
---|
1406 | "webDavCloseWindow": {
|
---|
1407 | "regex": [
|
---|
1408 | null
|
---|
1409 | ],
|
---|
1410 | "__module__": "siteConfig",
|
---|
1411 | "cmd": "\"/usr/bin/ssh {execHost} 'DISPLAY={vncDisplay} /usr/local/desktop/close_webdav_window.sh webdav://{localUsername}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}'\"",
|
---|
1412 | "requireMatch": false,
|
---|
1413 | "__class__": "cmdRegEx",
|
---|
1414 | "host": "login",
|
---|
1415 | "failFatal": true,
|
---|
1416 | "formatFatal": false,
|
---|
1417 | "async": false,
|
---|
1418 | "loop": false
|
---|
1419 | },
|
---|
1420 | "webDavMount": {
|
---|
1421 | "regex": [
|
---|
1422 | null
|
---|
1423 | ],
|
---|
1424 | "__module__": "siteConfig",
|
---|
1425 | "cmd": "echo Mounting WebDAV...",
|
---|
1426 | "requireMatch": false,
|
---|
1427 | "__class__": "cmdRegEx",
|
---|
1428 | "host": "login",
|
---|
1429 | "failFatal": true,
|
---|
1430 | "formatFatal": false,
|
---|
1431 | "async": false,
|
---|
1432 | "loop": false
|
---|
1433 | },
|
---|
1434 | "webDavUnmount": {
|
---|
1435 | "regex": [
|
---|
1436 | "hello"
|
---|
1437 | ],
|
---|
1438 | "__module__": "siteConfig",
|
---|
1439 | "cmd": "echo hello",
|
---|
1440 | "requireMatch": true,
|
---|
1441 | "__class__": "cmdRegEx",
|
---|
1442 | "host": "login",
|
---|
1443 | "failFatal": true,
|
---|
1444 | "formatFatal": false,
|
---|
1445 | "async": false,
|
---|
1446 | "loop": false
|
---|
1447 | },
|
---|
1448 | "webDavTunnel": {
|
---|
1449 | "regex": [
|
---|
1450 | "tunnel_hello"
|
---|
1451 | ],
|
---|
1452 | "__module__": "siteConfig",
|
---|
1453 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=no -oExitOnForwardFailure=yes -R {intermediateWebDavPortNumber}:localhost:{localWebDavPortNumber} -l {username} {loginHost} \"ssh -R {remoteWebDavPortNumber}:localhost:{intermediateWebDavPortNumber} {execHost} 'echo tunnel_hello; bash'\"",
|
---|
1454 | "requireMatch": true,
|
---|
1455 | "__class__": "cmdRegEx",
|
---|
1456 | "host": "local",
|
---|
1457 | "failFatal": true,
|
---|
1458 | "formatFatal": false,
|
---|
1459 | "async": true,
|
---|
1460 | "loop": false
|
---|
1461 | },
|
---|
1462 | "webDavRemotePort": {
|
---|
1463 | "regex": [
|
---|
1464 | "^(?P<remoteWebDavPortNumber>[0-9]+)$"
|
---|
1465 | ],
|
---|
1466 | "__module__": "siteConfig",
|
---|
1467 | "cmd": "\"/usr/bin/ssh {execHost} /usr/local/desktop/get_ephemeral_port.py\"",
|
---|
1468 | "requireMatch": true,
|
---|
1469 | "__class__": "cmdRegEx",
|
---|
1470 | "host": "login",
|
---|
1471 | "failFatal": true,
|
---|
1472 | "formatFatal": false,
|
---|
1473 | "async": false,
|
---|
1474 | "loop": false
|
---|
1475 | },
|
---|
1476 | "webDavIntermediatePort": {
|
---|
1477 | "regex": [
|
---|
1478 | "^(?P<intermediateWebDavPortNumber>[0-9]+)$"
|
---|
1479 | ],
|
---|
1480 | "__module__": "siteConfig",
|
---|
1481 | "cmd": "\"/usr/local/desktop/get_ephemeral_port.py\"",
|
---|
1482 | "requireMatch": true,
|
---|
1483 | "__class__": "cmdRegEx",
|
---|
1484 | "host": "login",
|
---|
1485 | "failFatal": true,
|
---|
1486 | "formatFatal": false,
|
---|
1487 | "async": false,
|
---|
1488 | "loop": false
|
---|
1489 | },
|
---|
1490 | "messageRegexs": [
|
---|
1491 | {
|
---|
1492 | "pattern": "^INFO:(?P<info>.*(?:\n|\r\n?))",
|
---|
1493 | "__class__": "__regex__"
|
---|
1494 | },
|
---|
1495 | {
|
---|
1496 | "pattern": "^WARN:(?P<warn>.*(?:\n|\r\n?))",
|
---|
1497 | "__class__": "__regex__"
|
---|
1498 | },
|
---|
1499 | {
|
---|
1500 | "pattern": "^ERROR:(?P<error>.*(?:\n|\r\n?))",
|
---|
1501 | "__class__": "__regex__"
|
---|
1502 | }
|
---|
1503 | ],
|
---|
1504 | "displayStrings": {
|
---|
1505 | "__module__": "siteConfig",
|
---|
1506 | "onFirstLoginFailure": "An unknown error occured. Please contact your site help desk.",
|
---|
1507 | "persistentMessageStop": "Stop the desktop",
|
---|
1508 | "createNewKeyDialogNewPassphraseEmptyForbidden": "Sorry, empty passphrases are forbidden.",
|
---|
1509 | "newPassphraseTitle": "Please enter a new passphrase",
|
---|
1510 | "createNewKeyDialogNewPassphraseMismatch": "Passphrases don't match!",
|
---|
1511 | "qdelQueuedJobQdel": "Delete the job",
|
---|
1512 | "reconnectMessage": "An Existing Desktop was found. It has {timestring} remaining. Would you like to reconnect or kill it and start a new desktop?",
|
---|
1513 | "helpEmailAddress": "sc@fz-juelich.de",
|
---|
1514 | "temporaryKey": "\nWould you like to use the launchers old behaviour (entering a password every time you start a new desktop) or try the new behaviour (creating an ssh key pair and entering a passphrase the first time you use the launcher after reboot.)\n\nPasswords are recomended if this is a shared user account.\n\nSSH Keys are recommended if you are the only person who uses this account.\n\nThis option can be changed from the Identity menu.\n",
|
---|
1515 | "persistentMessagePersist": "Leave it running",
|
---|
1516 | "newPassphraseEmptyForbidden": "Sorry, empty passphrases are forbidden.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
1517 | "temporaryKeyNo": "Use my SSH Key",
|
---|
1518 | "newPassphrase": "It looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
1519 | "qdelQueuedJobNOOP": "Leave it in the queue (I'll reconnect later)",
|
---|
1520 | "qdelQueuedJob": "It looks like you've been waiting for a job to start.\nDo you want me to delete the job or leave it in the queue so you can reconnect later?\n",
|
---|
1521 | "temporaryKeyYes": "Use my password every time",
|
---|
1522 | "passphrasePromptIncorrect": "\nSorry, that passphrase was incorrect.\nPlease enter the passphrase for you SSH Key\nIf you have forgoten the passphrase for you key, you may need to delete it and create a new key.\nYou can find this option under the Identity menu.\n",
|
---|
1523 | "newPassphraseTooShort": "Sorry, the passphrase must be at least 6 characters.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
1524 | "networkError": "It looks like a network error has occured. You may be able to resume your work by logging in again.",
|
---|
1525 | "__class__": "sshKeyDistDisplayStrings",
|
---|
1526 | "reconnectMessageYes": "Reconnect",
|
---|
1527 | "passphrasePromptIncorrectl": "Sorry, that passphrase was incorrect. Please enter the passphrase for your ssh key",
|
---|
1528 | "passwdPrompt": "Please enter the password for your JURECA account.",
|
---|
1529 | "passphrasePrompt": "Please enter the passphrase for your SSH key",
|
---|
1530 | "createNewKeyDialogNewPassphraseTooShort": "Passphrase is too short.",
|
---|
1531 | "passwdPromptIncorrect": "Sorry, that password was incorrect.\nPlease enter the password for your JURECA account.",
|
---|
1532 | "reconnectMessageNo": "New desktop",
|
---|
1533 | "persistentMessage": "Would you like to leave your current session running so that you can reconnect later?\nIt has {timestring} remaining.",
|
---|
1534 | "newPassphraseMismatch": "Sorry, the two passphrases you entered don't match.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher."
|
---|
1535 | }
|
---|
1536 | },
|
---|
1537 | "JURECA - compute nodes (vis: 2xGPU)": {
|
---|
1538 | "__module__": "siteConfig",
|
---|
1539 | "__class__": "siteConfig",
|
---|
1540 | "directConnect": {
|
---|
1541 | "regex": [
|
---|
1542 | null
|
---|
1543 | ],
|
---|
1544 | "__module__": "siteConfig",
|
---|
1545 | "cmd": null,
|
---|
1546 | "requireMatch": false,
|
---|
1547 | "__class__": "cmdRegEx",
|
---|
1548 | "host": "login",
|
---|
1549 | "failFatal": true,
|
---|
1550 | "formatFatal": false,
|
---|
1551 | "async": false,
|
---|
1552 | "loop": false
|
---|
1553 | },
|
---|
1554 | "defaults": {
|
---|
1555 | "jobParams_mem": 512,
|
---|
1556 | "jobParams_ppn": 24,
|
---|
1557 | "jobParams_nodes": 1,
|
---|
1558 | "jobParams_hours": 24
|
---|
1559 | },
|
---|
1560 | "siteRanges": {
|
---|
1561 | "jobParams_mem": [
|
---|
1562 | 512,
|
---|
1563 | 1024
|
---|
1564 | ],
|
---|
1565 | "jobParams_ppn": [
|
---|
1566 | 24,
|
---|
1567 | 24
|
---|
1568 | ],
|
---|
1569 | "jobParams_nodes": [
|
---|
1570 | 1,
|
---|
1571 | 10
|
---|
1572 | ],
|
---|
1573 | "jobParams_hours": [
|
---|
1574 | 1,
|
---|
1575 | 24
|
---|
1576 | ]
|
---|
1577 | },
|
---|
1578 | "sitetz": "Europe/Berlin",
|
---|
1579 | "visibility": {
|
---|
1580 | "usernamePanel": true,
|
---|
1581 | "jobParams_nodes": true,
|
---|
1582 | "jobParams_hours": true,
|
---|
1583 | "jobParams_ppn": true,
|
---|
1584 | "projectPanel": false,
|
---|
1585 | "listProjects": true,
|
---|
1586 | "resourcePanel": true,
|
---|
1587 | "resolutionPanel": "Advanced",
|
---|
1588 | "label_nodes": true,
|
---|
1589 | "label_hours": true,
|
---|
1590 | "label_ppn": true,
|
---|
1591 | "cipherPanel": false,
|
---|
1592 | "advancedCheckBoxPanel": true,
|
---|
1593 | "debugCheckBoxPanel": "Advanced"
|
---|
1594 | },
|
---|
1595 | "loginHost": "jurecavis.fz-juelich.de",
|
---|
1596 | "setDisplayResolution": {
|
---|
1597 | "regex": [
|
---|
1598 | null
|
---|
1599 | ],
|
---|
1600 | "__module__": "siteConfig",
|
---|
1601 | "cmd": null,
|
---|
1602 | "requireMatch": false,
|
---|
1603 | "__class__": "cmdRegEx",
|
---|
1604 | "host": "login",
|
---|
1605 | "failFatal": false,
|
---|
1606 | "formatFatal": false,
|
---|
1607 | "async": false,
|
---|
1608 | "loop": false
|
---|
1609 | },
|
---|
1610 | "runSanityCheck": {
|
---|
1611 | "regex": [
|
---|
1612 | null
|
---|
1613 | ],
|
---|
1614 | "__module__": "siteConfig",
|
---|
1615 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py sanitycheck -f viscompute -l {launcher_version_number}'",
|
---|
1616 | "requireMatch": false,
|
---|
1617 | "__class__": "cmdRegEx",
|
---|
1618 | "host": "login",
|
---|
1619 | "failFatal": false,
|
---|
1620 | "formatFatal": false,
|
---|
1621 | "async": false,
|
---|
1622 | "loop": false
|
---|
1623 | },
|
---|
1624 | "getProjects": {
|
---|
1625 | "regex": [
|
---|
1626 | "(?P<group>.*)"
|
---|
1627 | ],
|
---|
1628 | "__module__": "siteConfig",
|
---|
1629 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py getprofiles'",
|
---|
1630 | "requireMatch": false,
|
---|
1631 | "__class__": "cmdRegEx",
|
---|
1632 | "host": "login",
|
---|
1633 | "failFatal": false,
|
---|
1634 | "formatFatal": false,
|
---|
1635 | "async": false,
|
---|
1636 | "loop": false
|
---|
1637 | },
|
---|
1638 | "listAll": {
|
---|
1639 | "regex": [
|
---|
1640 | "(?P<sessionId>[0-9]+) (?P<remainingWalltime>.*)$"
|
---|
1641 | ],
|
---|
1642 | "__module__": "siteConfig",
|
---|
1643 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py listall -f viscompute'",
|
---|
1644 | "requireMatch": false,
|
---|
1645 | "__class__": "cmdRegEx",
|
---|
1646 | "host": "login",
|
---|
1647 | "failFatal": true,
|
---|
1648 | "formatFatal": false,
|
---|
1649 | "async": false,
|
---|
1650 | "loop": false
|
---|
1651 | },
|
---|
1652 | "startServer": {
|
---|
1653 | "regex": [
|
---|
1654 | "(?P<sessionId>[0-9]+)"
|
---|
1655 | ],
|
---|
1656 | "__module__": "siteConfig",
|
---|
1657 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py newsession -f viscompute -x {project} -t {hours} -n {nodes} -r {resolution} -m {mem} -c {ppn}'",
|
---|
1658 | "requireMatch": true,
|
---|
1659 | "__class__": "cmdRegEx",
|
---|
1660 | "host": "login",
|
---|
1661 | "failFatal": true,
|
---|
1662 | "formatFatal": false,
|
---|
1663 | "async": false,
|
---|
1664 | "loop": false
|
---|
1665 | },
|
---|
1666 | "showStart": {
|
---|
1667 | "regex": [
|
---|
1668 | "(?P<estimatedStart>.*)"
|
---|
1669 | ],
|
---|
1670 | "__module__": "siteConfig",
|
---|
1671 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py showstart -f viscompute -s {sessionId}'",
|
---|
1672 | "requireMatch": true,
|
---|
1673 | "__class__": "cmdRegEx",
|
---|
1674 | "host": "login",
|
---|
1675 | "failFatal": true,
|
---|
1676 | "formatFatal": false,
|
---|
1677 | "async": false,
|
---|
1678 | "loop": false
|
---|
1679 | },
|
---|
1680 | "execHost": {
|
---|
1681 | "regex": [
|
---|
1682 | "(?P<execHost>\\S+)"
|
---|
1683 | ],
|
---|
1684 | "__module__": "siteConfig",
|
---|
1685 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py exechost -f viscompute -s {sessionId}'",
|
---|
1686 | "requireMatch": true,
|
---|
1687 | "__class__": "cmdRegEx",
|
---|
1688 | "host": "login",
|
---|
1689 | "failFatal": true,
|
---|
1690 | "formatFatal": false,
|
---|
1691 | "async": false,
|
---|
1692 | "loop": false
|
---|
1693 | },
|
---|
1694 | "running": {
|
---|
1695 | "regex": [
|
---|
1696 | "true"
|
---|
1697 | ],
|
---|
1698 | "__module__": "siteConfig",
|
---|
1699 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py isrunning -f viscompute -s {sessionId}'",
|
---|
1700 | "requireMatch": true,
|
---|
1701 | "__class__": "cmdRegEx",
|
---|
1702 | "host": "login",
|
---|
1703 | "failFatal": true,
|
---|
1704 | "formatFatal": false,
|
---|
1705 | "async": false,
|
---|
1706 | "loop": false
|
---|
1707 | },
|
---|
1708 | "agent": {
|
---|
1709 | "regex": [
|
---|
1710 | "agent_hello"
|
---|
1711 | ],
|
---|
1712 | "__module__": "siteConfig",
|
---|
1713 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=yes -l {username} {loginHost} \"ssh -A -oStrictHostKeyChecking=no {execHost} \\\"echo agent_hello; bash \\\"\"",
|
---|
1714 | "requireMatch": true,
|
---|
1715 | "__class__": "cmdRegEx",
|
---|
1716 | "host": "local",
|
---|
1717 | "failFatal": true,
|
---|
1718 | "formatFatal": false,
|
---|
1719 | "async": true,
|
---|
1720 | "loop": false
|
---|
1721 | },
|
---|
1722 | "vncDisplay": {
|
---|
1723 | "regex": [
|
---|
1724 | "^(?<vncDisplay>:[0-9]+)\\s*(?P<vncPID>[0-9]+)\\s*$"
|
---|
1725 | ],
|
---|
1726 | "__module__": "siteConfig",
|
---|
1727 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py vncdisplay -f viscompute -s {sessionId}'",
|
---|
1728 | "requireMatch": true,
|
---|
1729 | "__class__": "cmdRegEx",
|
---|
1730 | "host": "login",
|
---|
1731 | "failFatal": true,
|
---|
1732 | "formatFatal": false,
|
---|
1733 | "async": false,
|
---|
1734 | "loop": false
|
---|
1735 | },
|
---|
1736 | "authURL": null,
|
---|
1737 | "oauthclientpasswd": null,
|
---|
1738 | "oauthclient": null,
|
---|
1739 | "authorizedKeysFile": null,
|
---|
1740 | "username": null,
|
---|
1741 | "onFirstLogin": null,
|
---|
1742 | "otp": {
|
---|
1743 | "regex": [
|
---|
1744 | "^(?P<vncpPasswd>\\S+)$"
|
---|
1745 | ],
|
---|
1746 | "__module__": "siteConfig",
|
---|
1747 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py otp -f viscompute -e {execHost} -d {vncDisplay}'",
|
---|
1748 | "requireMatch": true,
|
---|
1749 | "__class__": "cmdRegEx",
|
---|
1750 | "host": "login",
|
---|
1751 | "failFatal": true,
|
---|
1752 | "formatFatal": false,
|
---|
1753 | "async": false,
|
---|
1754 | "loop": false
|
---|
1755 | },
|
---|
1756 | "tunnel": {
|
---|
1757 | "regex": [
|
---|
1758 | "tunnel_hello"
|
---|
1759 | ],
|
---|
1760 | "__module__": "siteConfig",
|
---|
1761 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=yes -L {localPortNumber}:{execHost}:{remotePortNumber} -l {username} {loginHost} \"echo tunnel_hello; bash\"",
|
---|
1762 | "requireMatch": true,
|
---|
1763 | "__class__": "cmdRegEx",
|
---|
1764 | "host": "local",
|
---|
1765 | "failFatal": true,
|
---|
1766 | "formatFatal": false,
|
---|
1767 | "async": true,
|
---|
1768 | "loop": false
|
---|
1769 | },
|
---|
1770 | "onConnectScript": {
|
---|
1771 | "regex": [
|
---|
1772 | null
|
---|
1773 | ],
|
---|
1774 | "__module__": "siteConfig",
|
---|
1775 | "cmd": null,
|
---|
1776 | "requireMatch": false,
|
---|
1777 | "__class__": "cmdRegEx",
|
---|
1778 | "host": "login",
|
---|
1779 | "failFatal": false,
|
---|
1780 | "formatFatal": false,
|
---|
1781 | "async": false,
|
---|
1782 | "loop": false
|
---|
1783 | },
|
---|
1784 | "stopForRestart": {
|
---|
1785 | "regex": [
|
---|
1786 | null
|
---|
1787 | ],
|
---|
1788 | "__module__": "siteConfig",
|
---|
1789 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py stop -f viscompute -s {sessionId} --wait 4'",
|
---|
1790 | "requireMatch": false,
|
---|
1791 | "__class__": "cmdRegEx",
|
---|
1792 | "host": "login",
|
---|
1793 | "failFatal": true,
|
---|
1794 | "formatFatal": false,
|
---|
1795 | "async": false,
|
---|
1796 | "loop": false
|
---|
1797 | },
|
---|
1798 | "stop": {
|
---|
1799 | "regex": [
|
---|
1800 | null
|
---|
1801 | ],
|
---|
1802 | "__module__": "siteConfig",
|
---|
1803 | "cmd": "'/usr/local/jsc/etc/xdg/scripts/strudel/vis_manager.py stop -f viscompute -s {sessionId}'",
|
---|
1804 | "requireMatch": false,
|
---|
1805 | "__class__": "cmdRegEx",
|
---|
1806 | "host": "login",
|
---|
1807 | "failFatal": true,
|
---|
1808 | "formatFatal": false,
|
---|
1809 | "async": false,
|
---|
1810 | "loop": false
|
---|
1811 | },
|
---|
1812 | "provision": null,
|
---|
1813 | "instanceFlavour": null,
|
---|
1814 | "relabel": {},
|
---|
1815 | "imageid": null,
|
---|
1816 | "createReservation": {
|
---|
1817 | "regex": [
|
---|
1818 | null
|
---|
1819 | ],
|
---|
1820 | "__module__": "siteConfig",
|
---|
1821 | "cmd": null,
|
---|
1822 | "requireMatch": false,
|
---|
1823 | "__class__": "cmdRegEx",
|
---|
1824 | "host": "login",
|
---|
1825 | "failFatal": false,
|
---|
1826 | "formatFatal": false,
|
---|
1827 | "async": false,
|
---|
1828 | "loop": false
|
---|
1829 | },
|
---|
1830 | "listReservations": {
|
---|
1831 | "regex": [
|
---|
1832 | null
|
---|
1833 | ],
|
---|
1834 | "__module__": "siteConfig",
|
---|
1835 | "cmd": null,
|
---|
1836 | "requireMatch": false,
|
---|
1837 | "__class__": "cmdRegEx",
|
---|
1838 | "host": "login",
|
---|
1839 | "failFatal": false,
|
---|
1840 | "formatFatal": false,
|
---|
1841 | "async": false,
|
---|
1842 | "loop": false
|
---|
1843 | },
|
---|
1844 | "deleteReservation": {
|
---|
1845 | "regex": [
|
---|
1846 | null
|
---|
1847 | ],
|
---|
1848 | "__module__": "siteConfig",
|
---|
1849 | "cmd": null,
|
---|
1850 | "requireMatch": false,
|
---|
1851 | "__class__": "cmdRegEx",
|
---|
1852 | "host": "login",
|
---|
1853 | "failFatal": false,
|
---|
1854 | "formatFatal": false,
|
---|
1855 | "async": false,
|
---|
1856 | "loop": false
|
---|
1857 | },
|
---|
1858 | "dbusSessionBusAddress": {
|
---|
1859 | "regex": [
|
---|
1860 | "^DBUS_SESSION_BUS_ADDRESS=(?P<dbusSessionBusAddress>.*)$"
|
---|
1861 | ],
|
---|
1862 | "__module__": "siteConfig",
|
---|
1863 | "cmd": "\"echo DBUS_SESSION_BUS_ADDRESS=dummy_dbus_session_bus_address\"",
|
---|
1864 | "requireMatch": true,
|
---|
1865 | "__class__": "cmdRegEx",
|
---|
1866 | "host": "login",
|
---|
1867 | "failFatal": true,
|
---|
1868 | "formatFatal": false,
|
---|
1869 | "async": false,
|
---|
1870 | "loop": false
|
---|
1871 | },
|
---|
1872 | "openWebDavShareInRemoteFileBrowser": {
|
---|
1873 | "regex": [
|
---|
1874 | null
|
---|
1875 | ],
|
---|
1876 | "__module__": "siteConfig",
|
---|
1877 | "cmd": "\"/usr/bin/ssh {execHost} 'DISPLAY={vncDisplay} /usr/bin/konqueror webdav://{localUsername}:{vncPasswd}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}'\"",
|
---|
1878 | "requireMatch": false,
|
---|
1879 | "__class__": "cmdRegEx",
|
---|
1880 | "host": "login",
|
---|
1881 | "failFatal": true,
|
---|
1882 | "formatFatal": false,
|
---|
1883 | "async": false,
|
---|
1884 | "loop": false
|
---|
1885 | },
|
---|
1886 | "displayWebDavInfoDialogOnRemoteDesktop": {
|
---|
1887 | "regex": [
|
---|
1888 | null
|
---|
1889 | ],
|
---|
1890 | "__module__": "siteConfig",
|
---|
1891 | "cmd": "\"/usr/bin/ssh {execHost} 'echo -e \\\"You can access your local home directory in Konqueror with the URL:%sbr%s\\nwebdav://{localUsername}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}%sbr%s\\nYour one-time password is {vncPasswd}\\\" > ~/.vnc/\\$(hostname){vncDisplay}-webdav.txt;'\"",
|
---|
1892 | "requireMatch": false,
|
---|
1893 | "__class__": "cmdRegEx",
|
---|
1894 | "host": "login",
|
---|
1895 | "failFatal": true,
|
---|
1896 | "formatFatal": false,
|
---|
1897 | "async": false,
|
---|
1898 | "loop": false
|
---|
1899 | },
|
---|
1900 | "webDavWindowID": {
|
---|
1901 | "regex": [
|
---|
1902 | "^DummyWebDavWindowID=(?P<webDavWindowID>.*)$"
|
---|
1903 | ],
|
---|
1904 | "__module__": "siteConfig",
|
---|
1905 | "cmd": "\"echo DummyWebDavWindowID=-1\"",
|
---|
1906 | "requireMatch": true,
|
---|
1907 | "__class__": "cmdRegEx",
|
---|
1908 | "host": "login",
|
---|
1909 | "failFatal": true,
|
---|
1910 | "formatFatal": false,
|
---|
1911 | "async": false,
|
---|
1912 | "loop": false
|
---|
1913 | },
|
---|
1914 | "webDavCloseWindow": {
|
---|
1915 | "regex": [
|
---|
1916 | null
|
---|
1917 | ],
|
---|
1918 | "__module__": "siteConfig",
|
---|
1919 | "cmd": "\"/usr/bin/ssh {execHost} 'DISPLAY={vncDisplay} /usr/local/desktop/close_webdav_window.sh webdav://{localUsername}@localhost:{remoteWebDavPortNumber}/{homeDirectoryWebDavShareName}'\"",
|
---|
1920 | "requireMatch": false,
|
---|
1921 | "__class__": "cmdRegEx",
|
---|
1922 | "host": "login",
|
---|
1923 | "failFatal": true,
|
---|
1924 | "formatFatal": false,
|
---|
1925 | "async": false,
|
---|
1926 | "loop": false
|
---|
1927 | },
|
---|
1928 | "webDavMount": {
|
---|
1929 | "regex": [
|
---|
1930 | null
|
---|
1931 | ],
|
---|
1932 | "__module__": "siteConfig",
|
---|
1933 | "cmd": "echo Mounting WebDAV...",
|
---|
1934 | "requireMatch": false,
|
---|
1935 | "__class__": "cmdRegEx",
|
---|
1936 | "host": "login",
|
---|
1937 | "failFatal": true,
|
---|
1938 | "formatFatal": false,
|
---|
1939 | "async": false,
|
---|
1940 | "loop": false
|
---|
1941 | },
|
---|
1942 | "webDavUnmount": {
|
---|
1943 | "regex": [
|
---|
1944 | "hello"
|
---|
1945 | ],
|
---|
1946 | "__module__": "siteConfig",
|
---|
1947 | "cmd": "echo hello",
|
---|
1948 | "requireMatch": true,
|
---|
1949 | "__class__": "cmdRegEx",
|
---|
1950 | "host": "login",
|
---|
1951 | "failFatal": true,
|
---|
1952 | "formatFatal": false,
|
---|
1953 | "async": false,
|
---|
1954 | "loop": false
|
---|
1955 | },
|
---|
1956 | "webDavTunnel": {
|
---|
1957 | "regex": [
|
---|
1958 | "tunnel_hello"
|
---|
1959 | ],
|
---|
1960 | "__module__": "siteConfig",
|
---|
1961 | "cmd": "{sshBinary} -A -c {cipher} -t -t -oStrictHostKeyChecking=no -oExitOnForwardFailure=yes -R {intermediateWebDavPortNumber}:localhost:{localWebDavPortNumber} -l {username} {loginHost} \"ssh -R {remoteWebDavPortNumber}:localhost:{intermediateWebDavPortNumber} {execHost} 'echo tunnel_hello; bash'\"",
|
---|
1962 | "requireMatch": true,
|
---|
1963 | "__class__": "cmdRegEx",
|
---|
1964 | "host": "local",
|
---|
1965 | "failFatal": true,
|
---|
1966 | "formatFatal": false,
|
---|
1967 | "async": true,
|
---|
1968 | "loop": false
|
---|
1969 | },
|
---|
1970 | "webDavRemotePort": {
|
---|
1971 | "regex": [
|
---|
1972 | "^(?P<remoteWebDavPortNumber>[0-9]+)$"
|
---|
1973 | ],
|
---|
1974 | "__module__": "siteConfig",
|
---|
1975 | "cmd": "\"/usr/bin/ssh {execHost} /usr/local/desktop/get_ephemeral_port.py\"",
|
---|
1976 | "requireMatch": true,
|
---|
1977 | "__class__": "cmdRegEx",
|
---|
1978 | "host": "login",
|
---|
1979 | "failFatal": true,
|
---|
1980 | "formatFatal": false,
|
---|
1981 | "async": false,
|
---|
1982 | "loop": false
|
---|
1983 | },
|
---|
1984 | "webDavIntermediatePort": {
|
---|
1985 | "regex": [
|
---|
1986 | "^(?P<intermediateWebDavPortNumber>[0-9]+)$"
|
---|
1987 | ],
|
---|
1988 | "__module__": "siteConfig",
|
---|
1989 | "cmd": "\"/usr/local/desktop/get_ephemeral_port.py\"",
|
---|
1990 | "requireMatch": true,
|
---|
1991 | "__class__": "cmdRegEx",
|
---|
1992 | "host": "login",
|
---|
1993 | "failFatal": true,
|
---|
1994 | "formatFatal": false,
|
---|
1995 | "async": false,
|
---|
1996 | "loop": false
|
---|
1997 | },
|
---|
1998 | "messageRegexs": [
|
---|
1999 | {
|
---|
2000 | "pattern": "^INFO:(?P<info>.*(?:\n|\r\n?))",
|
---|
2001 | "__class__": "__regex__"
|
---|
2002 | },
|
---|
2003 | {
|
---|
2004 | "pattern": "^WARN:(?P<warn>.*(?:\n|\r\n?))",
|
---|
2005 | "__class__": "__regex__"
|
---|
2006 | },
|
---|
2007 | {
|
---|
2008 | "pattern": "^ERROR:(?P<error>.*(?:\n|\r\n?))",
|
---|
2009 | "__class__": "__regex__"
|
---|
2010 | }
|
---|
2011 | ],
|
---|
2012 | "displayStrings": {
|
---|
2013 | "__module__": "siteConfig",
|
---|
2014 | "onFirstLoginFailure": "An unknown error occured. Please contact your site help desk.",
|
---|
2015 | "persistentMessageStop": "Stop the desktop",
|
---|
2016 | "createNewKeyDialogNewPassphraseEmptyForbidden": "Sorry, empty passphrases are forbidden.",
|
---|
2017 | "newPassphraseTitle": "Please enter a new passphrase",
|
---|
2018 | "createNewKeyDialogNewPassphraseMismatch": "Passphrases don't match!",
|
---|
2019 | "qdelQueuedJobQdel": "Delete the job",
|
---|
2020 | "reconnectMessage": "An Existing Desktop was found. It has {timestring} remaining. Would you like to reconnect or kill it and start a new desktop?",
|
---|
2021 | "helpEmailAddress": "sc@fz-juelich.de",
|
---|
2022 | "temporaryKey": "\nWould you like to use the launchers old behaviour (entering a password every time you start a new desktop) or try the new behaviour (creating an ssh key pair and entering a passphrase the first time you use the launcher after reboot.)\n\nPasswords are recomended if this is a shared user account.\n\nSSH Keys are recommended if you are the only person who uses this account.\n\nThis option can be changed from the Identity menu.\n",
|
---|
2023 | "persistentMessagePersist": "Leave it running",
|
---|
2024 | "newPassphraseEmptyForbidden": "Sorry, empty passphrases are forbidden.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
2025 | "temporaryKeyNo": "Use my SSH Key",
|
---|
2026 | "newPassphrase": "It looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
2027 | "qdelQueuedJobNOOP": "Leave it in the queue (I'll reconnect later)",
|
---|
2028 | "qdelQueuedJob": "It looks like you've been waiting for a job to start.\nDo you want me to delete the job or leave it in the queue so you can reconnect later?\n",
|
---|
2029 | "temporaryKeyYes": "Use my password every time",
|
---|
2030 | "passphrasePromptIncorrect": "\nSorry, that passphrase was incorrect.\nPlease enter the passphrase for you SSH Key\nIf you have forgoten the passphrase for you key, you may need to delete it and create a new key.\nYou can find this option under the Identity menu.\n",
|
---|
2031 | "newPassphraseTooShort": "Sorry, the passphrase must be at least 6 characters.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher.",
|
---|
2032 | "networkError": "It looks like a network error has occured. You may be able to resume your work by logging in again.",
|
---|
2033 | "__class__": "sshKeyDistDisplayStrings",
|
---|
2034 | "reconnectMessageYes": "Reconnect",
|
---|
2035 | "passphrasePromptIncorrectl": "Sorry, that passphrase was incorrect. Please enter the passphrase for your ssh key",
|
---|
2036 | "passwdPrompt": "Please enter the password for your JURECA account.",
|
---|
2037 | "passphrasePrompt": "Please enter the passphrase for your SSH key",
|
---|
2038 | "createNewKeyDialogNewPassphraseTooShort": "Passphrase is too short.",
|
---|
2039 | "passwdPromptIncorrect": "Sorry, that password was incorrect.\nPlease enter the password for your JURECA account.",
|
---|
2040 | "reconnectMessageNo": "New desktop",
|
---|
2041 | "persistentMessage": "Would you like to leave your current session running so that you can reconnect later?\nIt has {timestring} remaining.",
|
---|
2042 | "newPassphraseMismatch": "Sorry, the two passphrases you entered don't match.\nIt looks like this is the first time you're logging in to JURECA with this version of the launcher.\nTo make logging in faster and more secure, the launcher will generate a local\npassphrase protected key on your computer which is used to\nauthenticate you and set up your JURECA desktop.\n\nPlease enter a new passphrase (twice to avoid typos) to protect your local key. \nAfter you've done this, your passphrase will be the primary method of\nauthentication for the launcher."
|
---|
2043 | }
|
---|
2044 | }
|
---|
2045 | }
|
---|
2046 | ] |
---|