diff --git a/scripts/.env.template b/scripts/.env.template index 4e274092e..dc225ff0e 100644 --- a/scripts/.env.template +++ b/scripts/.env.template @@ -7,7 +7,8 @@ RS_HOME="/path/to/prime-reportstream" RS_LCL_API_URL="http://localhost:7071" RS_STG_API_URL="https://staging.prime.cdc.gov:443" RS_PRD_API_URL="https://prime.cdc.gov:443" -TI_LCL_API_URL="http://host.docker.internal:8080" +TI_LCL_API_URL="http://localhost:8080" +TI_LCL_API_URL_RS_CONFIG="http://host.docker.internal:8080" TI_STG_API_URL="https://cdcti-stg-api.azurewebsites.net:443" TI_PRD_API_URL="https://cdcti-prd-api.azurewebsites.net:443" diff --git a/scripts/README.md b/scripts/README.md index 554dd3434..0f9fee201 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -1,8 +1,34 @@ -# Scripts +- [Setup](#setup) +- [Available Scripts](#available-scripts) + - [submit.sh](#submitsh) + - [Requirements](#requirements) + - [Usage](#usage) + - [rs.sh](#rssh) + - [Requirements](#requirements-1) + - [Usage](#usage-1) + - [Examples](#examples) + - [ti.sh](#tish) + - [Requirements](#requirements-2) + - [Usage](#usage-2) + - [Examples](#examples-1) + - [ucsd.sh](#ucsdsh) + - [Requirements](#requirements-3) + - [Before running the script](#before-running-the-script) + - [Usage](#usage-3) + - [setup/update-examples-snapshots.sh](#setupupdate-examples-snapshotssh) + - [Requirements](#requirements-4) + - [Usage](#usage-4) + - [setup/setup-reportstream.sh](#setupsetup-reportstreamsh) + - [Requirements](#requirements-5) + - [Usage](#usage-5) + - [lib/common.sh](#libcommonsh) + - [lib/submission-utils.sh](#libsubmission-utilssh) +- [Resources](#resources) ## Setup - -Follow the instructions below to load the environments variables required for these scripts +The steps to set up TT and RS locally are in [setup locally section in the main README.md ](../README.md#setup-with-reportstream). +Follow the instructions below to load the environments variables required for these scripts. +ReportStream and Trusted Intermediary must be running locally before running any scripts. 1. Copy `.env.template` to `.env` ``` @@ -209,7 +235,7 @@ Sends all the HL7 files with `_0_initial_message.hl7` suffix in the `/examples` ### setup/setup-reportstream.sh -Setup script for ReportStream +Setup script for ReportStream. #### Requirements diff --git a/scripts/setup/setup-reportstream.sh b/scripts/setup/setup-reportstream.sh index cdf85353f..6e6f1a71b 100755 --- a/scripts/setup/setup-reportstream.sh +++ b/scripts/setup/setup-reportstream.sh @@ -16,6 +16,17 @@ echo "Resetting the database and loading the baseline settings..." ./gradlew reloadTables ./gradlew reloadSettings +# If either TI or RS are not running in docker, then use a gradle hosted URL +local_ti_docker_image_name=$(docker ps --filter "name=trusted-intermediary-router-1" | grep trusted-intermediary-router-1) +local_rs_docker_image_name=$(docker ps --filter "name=prime-router-prime_dev-1" | grep prime-router-prime_dev-1) +if [[ -z $local_ti_docker_image_name || -z $local_rs_docker_image_name ]]; then + ti_api_url=${TI_LCL_API_URL} + echo "No docker instances detected, ReportStream transport will use ${TI_LCL_API_URL}..." +else + ti_api_url=${TI_LCL_API_URL_RS_CONFIG} + echo "Docker instances detected, ReportStream transport will use ${TI_LCL_API_URL_RS_CONFIG}..." +fi + # Need to CD to prime-router to run the prime CLI cd "prime-router" || exit @@ -41,8 +52,8 @@ yq eval '.[0].receivers[] |= ( )' -i "settings/STLTs/Flexion/flexion.yml" echo "Updating local URL and host in transport settings..." -sed -i '' "s|__TI_API_URL__|${TI_LCL_API_URL}|g" "settings/STLTs/Flexion/flexion.yml" -sed -i '' "s|__TI_API_HOST__|$(extract_host_from_url "${TI_LCL_API_URL}")|g" "settings/STLTs/Flexion/flexion.yml" +sed -i '' "s|__TI_API_URL__|${ti_api_url}|g" "settings/STLTs/Flexion/flexion.yml" +sed -i '' "s|__TI_API_HOST__|$(extract_host_from_url "${ti_api_url}")|g" "settings/STLTs/Flexion/flexion.yml" echo "Updating transport settings in partner org files..." for file in "settings/STLTs/CA/ucsd.yml" "settings/STLTs/LA/la-ochsner.yml" "settings/STLTs/LA/la-phl.yml"; do