  #
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
#

---

# Simvascular is deployed on its own server at simvascular.stanford.edu

tusd_vhost_servername: "tus.simvascular.scigap.org"
# configure user_data_dir and real_user_data_dir
user_data_dir: "/var/www/portals/gateway-user-data"
real_user_data_dir: "/home/www-shared/gateway-user-data"
django_database_host_ip_address: "localhost"
django_database_hosts:
  # Database is installed on the same host as the Django server
  - simvascular

vhost_servername: "new.django.simvascular.scigap.org"
vhost_ssl: True
ssl_certificate_file: "/etc/letsencrypt/live/{{ vhost_servername }}/cert.pem"
ssl_certificate_chain_file: "/etc/letsencrypt/live/{{ vhost_servername }}/fullchain.pem"
ssl_certificate_key_file: "/etc/letsencrypt/live/{{ vhost_servername }}/privkey.pem"

django_file_upload_max_file_size_mb: 2000

## Keycloak related variables
tenant_domain: "simvascular"
oauth_client_key: "{{ vault_oauth_client_key }}"
oauth_client_secret: "{{ vault_oauth_client_secret }}"

auth_options:
  password:
    name: "SimVascular"
  external:
    - name: "existing institution credentials"
      idp_alias: "cilogon"
      logo: "images/cilogon-logo-24x24-b.png"
      idp_token_url: "{{ oauth_service_url }}/realms/{{ tenant_domain }}/broker/cilogon/token"
      userinfo_url: "{{ cilogon_userinfo_url }}"

gateway_id: "simvascular"
experiment_data_dir: "{{ user_data_dir }}/simvascular"
gateway_data_store_hostname: "simvascular.stanford.edu"
gateway_data_store_resource_id: "simvascular.stanford.edu_758fc879-e037-4a10-980f-3566ac7cab1b"
gateway_data_store_ssh_public_key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCNdivlUyLh11poF2vufwa8pCjVY0/fkvym9qdpEeu6nS55CVZe5VXqA1NZ+IwVDabAFwoLrUvaWt7eE8POEZNiBgtonZ21x6KIK5/HilSM6jHds1u6NY436AiHqmcybO/u+NkUI8gUjWTbs4S/i/2WfvAHZc3dbcCHls3QgG55TqOdNnh2pjFLSA1wu0d1qRnrPwnje/yC4GD+3XU1HPLHb9FXLHO4umswKq8sDk2lOIN7u08pCF8Y+BPYfmEdvY8oFwdVsj3OoA3fWEE42xTjb3g65X2oCbhco1g1ya0cfJMgSUbHCcOc2D//rXD+L4/z0/A2VCiEFJtTllrws609"

admin_emails: "[('Eroma Abeysinghe', 'eroma@gatech.edu'), ('Martin Pfaller','pfaller@stanford.edu'), ('Weiguang Yang','wgyang@stanford.edu'), ('David W. Parker','davep@stanford.edu'), ('Justin Tran','justran@Fullerton.edu') ]"
portal_title: "SimVascular Gateway Portal"

django_google_analytics_tracking_id: "UA-111528347-7"
...
