Skip to content

Commit

Permalink
Version 3.0.0 from develop (#64)
Browse files Browse the repository at this point in the history
* Broadsea 3.0 merge into develop (#52)

* Initial commit of adding SSL to traefik and Solr

* Added Ares profile, using forked version

* Added profiles, support for git-based webapi and atlas builds

* Fixed WebAPI from git. Began security env variable sections. Added docker arch variable.

* Fixed yml error

* Added AD section

* Added more security provider env vars, some cleanup

* Added volume for cacerts (LDAPS)

* Removed original config-local

* Added security provider enabled entries, default values for sec items

* New README, removed extraneous db specific WebAPI stuff, organized .env into sections

* Fixed md issue in readme

* Added ldaps item to readme

* Clarification on ssl in readme

* Added OMOP vocab and phoebe loading services. With updated readme

* Workaround for if cacerts file isn't present

* Removed tmpfs assignment from postgres-load

* Fixes for phoebe unzip, clarity on vocab and phoebe vars

* Added vocab cpt conversion option based on if env var is fulfilled

* Added Ares data folder env and updated README

* Using new MAVEN_PARAMS in webapi from git. Renamed SOLR_ENDPOINT.

* Added dynamic splash page, ares entry, changed routes for content and hades. Added env var for certs folder.

* Updated hades and atlasdb to amd64 arch

* Added restart attribute to solr vocab

* Fixes #62, images were blocked due to content security policy meta tag

* Fixes div show/hide by removing extra quotes

* Updated Ares copy

* Tweak to hades config for backslash issue. Updated Mac Silicon language in readme

* Added .jar to gitignore
  • Loading branch information
alondhe authored Apr 19, 2023
1 parent 7e61aae commit 069e049
Show file tree
Hide file tree
Showing 99 changed files with 9,607 additions and 551 deletions.
235 changes: 234 additions & 1 deletion .env
Original file line number Diff line number Diff line change
@@ -1 +1,234 @@
BROADSEA_HOST=127.0.0.1
############################################################################################################################################################
# Section 1:
# Broadsea Host
############################################################################################################################################################
DOCKER_ARCH="linux/amd64" # change this to linux/arm64 if using Mac Silicon, otherwise keep as-is
BROADSEA_HOST="127.0.0.1" # change to your host URL (without the http part)
HTTP_TYPE="http" # if using https, you need to add the crt and key files to the ./certs folder
BROADSEA_CERTS_FOLDER="./certs"

############################################################################################################################################################
# Section 2:
# Atlas GUI configuration
############################################################################################################################################################

ATLAS_INSTANCE_NAME="Broadsea"
ATLAS_COHORT_COMPARISON_RESULTS_ENABLED="false"
ATLAS_USER_AUTH_ENABLED="false" # set to true if using security, but ensure you fill out the WebAPI/Atlas security sections below
ATLAS_PLP_RESULTS_ENABLED="false"

############################################################################################################################################################
# Section 3:
# WebAPI Database configuration
############################################################################################################################################################

# Keep as-is if using Broadsea to launch the WebAPI postgres, replace if using an external postgres instance
WEBAPI_DATASOURCE_URL="jdbc:postgresql://broadsea-atlasdb:5432/postgres"
WEBAPI_DATASOURCE_USERNAME="postgres"
WEBAPI_DATASOURCE_PASSWORD="mypass"
WEBAPI_DATASOURCE_OHDSI_SCHEMA="webapi"

############################################################################################################################################################
# Section 4:
# Atlas security provider configuration
############################################################################################################################################################

# Only modify if you are enabling security!

ATLAS_SECURITY_PROVIDER_TYPE="none" # ad, ldap, kerberos, openid, cas, oauth, iap, basic
ATLAS_SECURITY_PROVIDER_NAME="none" # What to call the provider in the Atlas GUI (e.g. "OHDSI Active Directory")
ATLAS_SECURITY_ICON="fa-cubes" # font-awesome icon name
ATLAS_SECURITY_USE_FORM="false" # set to true for most security providers
ATLAS_SECURITY_USE_AJAX="false" # set to true for most security providers except CAS

############################################################################################################################################################
# Section 5:
# WebAPI security configuration
############################################################################################################################################################

WEBAPI_SECURITY_PROVIDER="DisabledSecurity" # Change to AtlasRegularSecurity

# choose one, set it to enabled, and replace with appropriate values

# Basic
SECURITY_AUTH_JDBC_ENABLED="false"
SECURITY_DB_DATASOURCE_SCHEMA=""
SECURITY_DB_DATASOURCE_URL=""
SECURITY_DB_DATASOURCE_DRIVERCLASSNAME=""
SECURITY_DB_DATASOURCE_USERNAME=""
SECURITY_DB_DATASOURCE_PASSWORD=""

# LDAP
SECURITY_AUTH_LDAP_ENABLED="false"
SECURITY_LDAP_DN="cn={0},dc=example,dc=org"
SECURITY_LDAP_URL="ldap://localhost:389"
SECURITY_LDAP_BASEDN=
SECURITY_LDAP_SYSTEM_USERNAME=
SECURITY_LDAP_SYSTEM_PASSWORD=
SECURITY_LDAP_SEARCHSTRING="(&(objectClass=person)(CN={0}))"
SECURITY_LDAP_USERMAPPING_DISPLAYNAMEATTR="displayname"
SECURITY_LDAP_USERMAPPING_FIRSTNAMEATTR="givenName"
SECURITY_LDAP_USERMAPPING_MIDDLENAMEATTR="initials"
SECURITY_LDAP_USERMAPPING_LASTNAMEATTR="sn"
SECURITY_LDAP_USERMAPPING_USERNAMEATTR="cn"
SECURITY_LDAP_USERIMPORT_USERNAMEATTR="cn"
SECURITY_LDAP_USERIMPORT_LOGINATTR="uid"
SECURITY_LDAP_SEARCHBASE="CN=Users,DC=example,DC=org"

# AD
SECURITY_AUTH_AD_ENABLED="false"
SECURITY_AD_URL=
SECURITY_AD_SEARCHBASE="CN=Users,DC=example,DC=org"
SECURITY_AD_PRINCIPALSUFFIX=
SECURITY_AD_SYSTEM_USERNAME=
SECURITY_AD_SYSTEM_PASSWORD=
SECURITY_AD_SEARCHFILTER="(&(objectClass=person)(cn=%s))"
SECURITY_AD_IGNORE_PARTIAL_RESULT_EXCEPTION="true"
SECURITY_AD_RESULT_COUNT_LIMIT="30000"
SECURITY_AD_DEFAULT_IMPORT_GROUP="public"
SECURITY_AD_SEARCHSTRING="(&(objectClass=person)(userPrincipalName=%s))"
SECURITY_AD_USERMAPPING_DISPLAYNAMEATTR="displayName"
SECURITY_AD_USERMAPPING_FIRSTNAMEATTR="givenname"
SECURITY_AD_USERMAPPING_MIDDLENAMEATTR="initials"
SECURITY_AD_USERMAPPING_LASTNAMEATTR="sn"
SECURITY_AD_USERMAPPING_USERNAMEATTR="sAMAccountName"
SECURITY_AD_USERIMPORT_LOGINATTR="sAMAccountName"
SECURITY_AD_USERIMPORT_USERNAMEATTR="cn"

# Kerberos
SECURITY_AUTH_KERBEROS_ENABLED="false"
SECURITY_KERBEROS_SPN=
SECURITY_KERBEROS_KEYTABPATH=

# OAuth
SECURITY_OAUTH_CALLBACK_UI="http://localhost/Atlas/#/welcome"
SECURITY_OAUTH_CALLBACK_API="http://localhost:8080/WebAPI/user/oauth/callback"
SECURITY_OAUTH_CALLBACK_URLRESOLVER="query"
SECURITY_AUTH_GOOGLE_ENABLED="false"
SECURITY_OAUTH_GOOGLE_APIKEY=
SECURITY_OAUTH_GOOGLE_APISECRET=
SECURITY_AUTH_FACEBOOK_ENABLED="false"
SECURITY_OAUTH_FACEBOOK_APIKEY=
SECURITY_OAUTH_FACEBOOK_APISECRET=
SECURITY_AUTH_GITHUB_ENABLED="false"
SECURITY_OAUTH_GITHUB_APIKEY=
SECURITY_OAUTH_GITHUB_APISECRET=

# OpenID
SECURITY_AUTH_OPENID_ENABLED="false"
SECURITY_OID_CLIENTID=
SECURITY_OID_APISECRET=
SECURITY_OID_URL=
SECURITY_OID_LOGOUTURL=
SECURITY_OID_EXTRASCOPES=
SECURITY_OID_REDIRECTURL="http://localhost/index.html#/welcome/"

# CAS
SECURITY_AUTH_CAS_ENABLED="false"
WEBAPI_SECURITY_CAS_SERVER=""

# IAP
SECURITY_AUTH_GOOGLEIAP_ENABLED="false"
SECURITY_GOOGLEIAP_CLOUDPROJECTID=""
SECURITY_GOOGLEIAP_BACKENDSERVICEID=""
SECURITY_GOOGLE_ACCESSTOKEN_ENABLED="false"

# SAML
SECURITY_SAML_ENABLED="false"
SECURITY_SAML_ENTITYID=""
SECURITY_SAML_IDPMETADATALOCATION=""
SECURITY_SAML_KEYMANAGER_KEYSTOREFILE=""
SECURITY_SAML_KEYMANAGER_STOREPASSWORD=""
SECURITY_SAML_KEYMANAGER_DEFAULTKEY=""
SECURITY_SAML_KEYMANAGER_PASSWORDS_ARACHNENETWORK=""
SECURITY_SAML_METADATALOCATION=""
SECURITY_SAML_CALLBACKURL=""
SECURITY_SAML_SLOURL=""
SECURITY_SAML_MAXIMUMAUTHENTICATIONLIFETIME="60"

############################################################################################################################################################
# Section 6:
# Building Atlas or WebAPI from Git
############################################################################################################################################################

# if building Atlas from git rather than docker hub image
ATLAS_GITHUB_URL="https://github.com/OHDSI/Atlas.git#rc-2.13.0"

# if building WebAPI from git rather than docker hub image
WEBAPI_GITHUB_URL="https://github.com/OHDSI/WebAPI.git#rc-2.13.0"

############################################################################################################################################################
# Section 7:
# SOLR Vocab (optional)
############################################################################################################################################################

# keep as-is if using Broadsea to launch SOLR OMOP Vocabulary, otherwise replace with external SOLR OMOP Vocabulary endpoint
SOLR_VOCAB_ENDPOINT="http://broadsea-solr-vocab:8983/solr"

# if using Broadsea to launch SOLR, fill these out to build the vocab core
VOCAB_VERSION="v5.0_23-JAN-23" # replace spaces with underscores
VOCAB_JDBC_DRIVER_PATH="org.postgresql.Driver"
VOCAB_JDBC_URL="jdbc:postgresql://broadsea-atlasdb:5432/postgres"
VOCAB_JDBC_USER="postgres"
VOCAB_JDBC_PASSWORD="mypass"
VOCAB_JDBC_FILE_NAME="postgresql-42.5.0.jar" # this needs to be added to the Broadsea folder root
VOCAB_DATABASE_SCHEMA="vocab"

############################################################################################################################################################
# Section 8:
# HADES credentials to use in RStudio
############################################################################################################################################################

HADES_USER="ohdsi"
HADES_PASSWORD="mypass"


############################################################################################################################################################
# Section 9:
# Postgres and UMLS credentials for loading OMOP Vocab files into Postgres schema
############################################################################################################################################################

VOCAB_PG_HOST="broadsea-atlasdb" # the host name by itself (without db name)
VOCAB_PG_DATABASE="postgres"
VOCAB_PG_SCHEMA="omop_vocab"
VOCAB_PG_USER="postgres"
VOCAB_PG_PASSWORD="mypass"

# IMPORTANT: If CPT4 conversion needed, use API KEY from UMLS account profile: https://uts.nlm.nih.gov/uts/profile
UMLS_API_KEY= # if CPT4 conversion not needed, leave as empty

############################################################################################################################################################
# Section 10:
# Postgres credentials for loading Phoebe file for Atlas 2.12+ Concept Recommendations into Postgres hosted OMOP Vocabulary schema
############################################################################################################################################################

# Should be an existing OMOP Vocabulary schema, you will need to make it the default Vocabulary source in Atlas

PHOEBE_PG_HOST="broadsea-atlasdb" # the host name by itself (without db name)
PHOEBE_PG_DATABASE="postgres"
PHOEBE_PG_SCHEMA="omop_vocab"
PHOEBE_PG_USER="postgres"
PHOEBE_PG_PASSWORD="mypass"


############################################################################################################################################################
# Section 11:
# Ares Data Folder config
############################################################################################################################################################

# change to the Ares data folder on your host

ARES_DATA_FOLDER="./ares_data"


############################################################################################################################################################
# Section 12:
# Broadsea Content Page config
############################################################################################################################################################

# divs with links to apps
# either "show" to include on the page or "none" to hide it

CONTENT_ARES_DISPLAY="show"
CONTENT_ATLAS_DISPLAY="show"
CONTENT_HADES_DISPLAY="show"
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,4 @@
.DS_Store
omop_vocab/files
.env_local
*.jar
Loading

0 comments on commit 069e049

Please sign in to comment.