exec 2>&1
set -ex -o pipefail
-if [[ -s /etc/arvados/config.yml ]] ; then
+if [[ -s /etc/arvados/config.yml ]] && [[ /var/lib/arvados/cluster_config.yml.override -ot /etc/arvados/config.yml ]] ; then
exit
fi
fi
management_token=$(cat /var/lib/arvados/management_token)
+if ! test -s /var/lib/arvados/system_root_token ; then
+ ruby -e 'puts rand(2**400).to_s(36)' > /var/lib/arvados/system_root_token
+fi
+system_root_token=$(cat /var/lib/arvados/system_root_token)
+
if ! test -s /var/lib/arvados/sso_app_secret ; then
ruby -e 'puts rand(2**400).to_s(36)' > /var/lib/arvados/sso_app_secret
fi
cat >/var/lib/arvados/cluster_config.yml <<EOF
Clusters:
${uuid_prefix}:
+ SystemRootToken: $system_root_token
ManagementToken: $management_token
Services:
RailsAPI:
SSO:
ExternalURL: "https://$localip:${services[sso]}"
Keepproxy:
+ ExternalURL: "https://$localip:${services[keepproxy-ssl]}"
+ InternalURLs:
+ "http://localhost:${services[keepproxy]}": {}
+ Keepstore:
InternalURLs:
- "http://localhost:${services[keepproxy]}/": {}
- ExternalURL: "http://$localip:${services[keepproxy-ssl]}/"
+ "http://localhost:${services[keepstore0]}": {}
+ "http://localhost:${services[keepstore1]}": {}
Websocket:
ExternalURL: "wss://$localip:${services[websockets-ssl]}/websocket"
InternalURLs:
GitHTTP:
InternalURLs:
"http://localhost:${services[arv-git-httpd]}/": {}
- ExternalURL: "https://git.$localip:${services[arv-git-httpd-ssl]}/"
+ ExternalURL: "https://$localip:${services[arv-git-httpd-ssl]}/"
WebDAV:
InternalURLs:
"http://localhost:${services[keep-web]}/": {}
InternalURLs:
"http://localhost:${services[keep-web]}/": {}
Composer:
- ExternalURL: "http://$localip:${services[composer]}"
+ ExternalURL: "https://$localip:${services[composer]}"
Controller:
ExternalURL: "https://$localip:${services[controller-ssl]}"
InternalURLs:
RailsAPI:
InternalURLs:
"http://localhost:${services[api]}/": {}
- Keepproxy:
- ExternalURL: "https://$localip:${services[keepproxy-ssl]}"
- InternalURLs:
- "http://localhost:${services[keepproxy]}": {}
PostgreSQL:
ConnectionPool: 32 # max concurrent connections per arvados server daemon
Connection:
DefaultReplication: 1
TrustAllContent: true
Login:
- ProviderAppSecret: $sso_app_secret
- ProviderAppID: arvados-server
+ SSO:
+ Enable: true
+ ProviderAppSecret: $sso_app_secret
+ ProviderAppID: arvados-server
Users:
NewUsersAreActive: true
AutoAdminFirstUser: true
AutoSetupNewUsers: true
AutoSetupNewUsersWithVmUUID: $vm_uuid
AutoSetupNewUsersWithRepository: true
- AnonymousUserToken: $(cat /var/lib/arvados/superuser_token)
Workbench:
SecretKeyBase: $workbench_secret_key_base
ArvadosDocsite: http://$localip:${services[doc]}/
GitCommand: /usr/share/gitolite3/gitolite-shell
GitoliteHome: /var/lib/arvados/git
Repositories: /var/lib/arvados/git/repositories
+ Volumes:
+ ${uuid_prefix}-nyw5e-000000000000000:
+ Driver: Directory
+ DriverParameters:
+ Root: /var/lib/arvados/keep0
+ AccessViaHosts:
+ "http://localhost:${services[keepstore0]}": {}
+ ${uuid_prefix}-nyw5e-111111111111111:
+ Driver: Directory
+ DriverParameters:
+ Root: /var/lib/arvados/keep1
+ AccessViaHosts:
+ "http://localhost:${services[keepstore1]}": {}
EOF
/usr/local/lib/arvbox/yml_override.py /var/lib/arvados/cluster_config.yml