#
#
# 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.
#

---
user: "pga"
group: "pga"
doc_root_dir: "/var/www/portals/scigap"
vhost_servername: "staging.scigap.org"
vhost_ssl: True
ssl_certificate_file: "/etc/letsencrypt/live/staging.scigap.org/cert.pem"
ssl_certificate_chain_file: "/etc/letsencrypt/live/staging.scigap.org/fullchain.pem"
ssl_certificate_key_file: "/etc/letsencrypt/live/staging.scigap.org/privkey.pem"

## Keycloak related variables
tenant_domain: "{{ gateway_id }}"
admin_username: "scigap_admin"
admin_password: "{{ vault_admin_password }}"
oauth_client_key: "{{ vault_oauth_client_key }}"
oauth_client_secret: "{{ vault_oauth_client_secret }}"
# With Keycloak, we have to have static role names
#user_role_name: "airavata-user"
initial_role_name: "gateway-provider"
oidc_discovery_url: "https://iam.scigap.org/auth/realms/{{ tenant_domain }}/.well-known/openid-configuration"

auth_options:
  - name: "SciGaP"
    oauth_grant_type: "password"
  - name: "CILogon"
    oauth_grant_type: "authorization_code"
    oauth_authorize_url_extra_params: "kc_idp_hint=cilogon"
    logo: "/assets/cilogon-logo-24x24-b.png"
oauth_callback_url: "https://{{ vhost_servername }}/callback-url"

gateway_id: "scigap"
# relative to document root dir
experiment_data_dir: "{{ user_data_dir }}/scigap"
gateway_data_store_resource_id: "pga.staging.scigap.org_aa63ffa0-a99f-4885-8f4b-81e3c4c4d737"

## Portal related variables
super_admin_portal: "true"
admin_emails: "['sgrc-iu-group@iu.edu']"
portal_email_username: "pga.airavata@gmail.com"
portal_email_password: "{{ vault_portal_email_password }}"
portal_theme: "scigap"
portal_theme_repo: "https://github.com/SciGaP/scigap-portal-theme"
portal_title: "SciGaP Admin Portal"
#pga_google_analytics_id: "UA-111528347-4"
...
