Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge 3.5 changes before release #130

Merged
merged 138 commits into from
Apr 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
138 commits
Select commit Hold shift + click to select a range
45366e9
Broadsea 3.0 merge into develop (#52)
alondhe Apr 11, 2023
7ded0df
Using new MAVEN_PARAMS in webapi from git. Renamed SOLR_ENDPOINT.
alondhe Apr 13, 2023
9af1a42
Added dynamic splash page, ares entry, changed routes for content and…
alondhe Apr 14, 2023
6d5a630
Updated hades and atlasdb to amd64 arch
alondhe Apr 14, 2023
0150e73
Added restart attribute to solr vocab
alondhe Apr 14, 2023
7101146
Fixes #62, images were blocked due to content security policy meta tag
alondhe Apr 14, 2023
b29bc21
Fixes div show/hide by removing extra quotes
alondhe Apr 14, 2023
96d3402
Updated Ares copy
alondhe Apr 14, 2023
87160aa
Tweak to hades config for backslash issue. Updated Mac Silicon langua…
alondhe Apr 17, 2023
024485c
Added .jar to gitignore
alondhe Apr 19, 2023
576d63a
Added openldap and posit connect services
alondhe Apr 28, 2023
b3cc12c
Adds OpenLDAP, Open Source Shiny Server, and Posit Connect services. …
alondhe May 20, 2023
30e33e0
Added atlas cohort cache settings. Added mount option for jdbc jar fi…
alondhe May 23, 2023
dd4ffd8
Removed unnecessary flyway migration params. Updated comment on Atlas…
alondhe May 25, 2023
e56696b
Reverted flyway changes for now.
alondhe May 31, 2023
e9ff6b5
Initial support of execution engine in webapi and atlas
alondhe Jun 1, 2023
3a04f09
Added option for flyway baseline on migrate. Removed faulty localStor…
alondhe Jun 4, 2023
1f401e3
Added initial achilles container
alondhe Jun 5, 2023
b94727d
Added achilles ares export
alondhe Jun 6, 2023
46288d2
Added logging level variables for webapi
alondhe Jun 9, 2023
b584200
Changed ares git location from fork to OHDSI repo
alondhe Jun 9, 2023
f3cc386
Syncing with issue 96 fix.
alondhe Jun 14, 2023
f3faed2
Fix omop load script to use UMLS key when available
alondhe Jun 20, 2023
d0c6564
Added more Atlas configLocal settings
alondhe Jun 22, 2023
7e1b0fc
Added dbt, achilles, dqd, aresIndexer.
alondhe Jul 7, 2023
af7be87
Shifted to local Dockerfiles for post processing services
alondhe Jul 7, 2023
f7cf711
Added perseus services.
alondhe Jul 18, 2023
b6287e9
Added docker secrets to all services, except the tokens for perseus-user
alondhe Jul 20, 2023
32fff4a
Shifted secrets toward specific file env vars
alondhe Jul 20, 2023
ccc839f
Added github action for default profile
alondhe Jul 20, 2023
c6f1db0
Added missing dbt vars to env
alondhe Jul 20, 2023
c255f92
Added missing default value for phoebe vocab files in env
alondhe Jul 20, 2023
57bd44f
Changed patterns for bringing jdbc files for solr and webapi
alondhe Jul 20, 2023
bf54ee9
Relative path issue for webapi none.jar
alondhe Jul 20, 2023
44b3db0
Updated README file
alondhe Jul 20, 2023
0509ad2
Introducing quarto for content page
alondhe Jul 21, 2023
8bcb636
content typos
alondhe Jul 21, 2023
b5400ba
added wget install back
alondhe Jul 21, 2023
f78b661
apt-get issue
alondhe Jul 21, 2023
bbeecb4
Using RUN over EOF syntax
alondhe Jul 21, 2023
bfb8969
Adjustments to tests
alondhe Jul 21, 2023
f15e77d
checkout action with branch
alondhe Jul 21, 2023
93c83f6
Fixed image issue with posit connect, errant path issue in webapi jdb…
alondhe Jul 21, 2023
3295aac
trying classpath-based method to additional webapi jar
alondhe Jul 21, 2023
22f5ce5
[skip ci] copy update in env
alondhe Jul 21, 2023
f601f59
removed ref tag from ci files
alondhe Jul 21, 2023
01ff615
Default tests split up, perseus test improved
alondhe Jul 24, 2023
2f49758
Added debug to webapi container
alondhe Jul 25, 2023
b39d8ea
Fix to atlasdb env
alondhe Jul 25, 2023
2fbcde3
Using fork of atlasdb
alondhe Jul 25, 2023
180dbd2
added branch name to atlasdb fork
alondhe Jul 25, 2023
f47ff32
Using new atlasdb image with secret
alondhe Aug 9, 2023
d2b1c54
Adding sleep hack for atlasdb in github action
alondhe Aug 9, 2023
b94a366
Adding more sleep and psql test
alondhe Aug 21, 2023
af71b5f
Disabled mac
alondhe Aug 21, 2023
8da0609
added sudo
alondhe Aug 21, 2023
679e2e4
Adding public webapi test
alondhe Aug 21, 2023
d470940
sleep on webapi build
alondhe Aug 21, 2023
fb502ca
Adding path to env
alondhe Aug 21, 2023
64d0167
Adding relative env path
alondhe Aug 21, 2023
a47d5c3
ip address echo and certs folder create
alondhe Aug 21, 2023
21fc94f
with env_file set
alondhe Aug 21, 2023
0224624
Attempting separate config files
alondhe Aug 21, 2023
ae0e550
Changes to traefik dynamic yml, separate tls out
alondhe Aug 21, 2023
26432a5
Reordering steps, curl fails fast
alondhe Aug 21, 2023
40e9bcf
Trying public ip for broadsea host
alondhe Aug 21, 2023
09176a5
revert atlasdb test to localhost
alondhe Aug 21, 2023
ce70955
debug webapi with logs
alondhe Aug 21, 2023
5e2abe9
Trying non-secret atlasdb
alondhe Aug 21, 2023
e5f9d35
more pw debug
alondhe Aug 21, 2023
e4dc070
added sleep back
alondhe Aug 21, 2023
d20f9a4
readme as debug
alondhe Aug 21, 2023
6169faf
trying to write file
alondhe Aug 27, 2023
5a0586c
testing only macos
alondhe Aug 31, 2023
1cea68f
testing atlasdb password
alondhe Sep 5, 2023
db95cd9
shifting back to linux
alondhe Sep 5, 2023
ce4c088
changed test to use secret file
alondhe Sep 5, 2023
2c97b6f
testing without password set
alondhe Sep 5, 2023
fa8d4e0
adding webapi back, but trying to ensure env is used correctly
alondhe Sep 6, 2023
45dd3c4
fix of cd command
alondhe Sep 6, 2023
3fd318b
Fixes to secrets in webapi and solr
alondhe Sep 8, 2023
aa9f191
default solr vocab to disabled.
alondhe Sep 8, 2023
d74e40b
added mac psql.
alondhe Sep 8, 2023
5efce85
Adding sleep back for WebAPI test.
alondhe Sep 8, 2023
b64198f
Trying https in test
alondhe Sep 8, 2023
7343ca3
fix for self signed action
alondhe Sep 8, 2023
8f5e81f
trying GA with default ssl params
alondhe Sep 8, 2023
63c52d0
changing ssl test to linux only
alondhe Sep 8, 2023
3f2b8ff
fix for runner os
alondhe Sep 8, 2023
214ac10
removed macos
alondhe Sep 8, 2023
220dac5
trying new openssl steps
alondhe Sep 8, 2023
75eede6
copying certs before use
alondhe Sep 8, 2023
5887ae1
trying sudo
alondhe Sep 8, 2023
f48c5ff
hostkey fix
alondhe Sep 8, 2023
f46f0e8
trying to add crt to ca
alondhe Sep 8, 2023
12a3de6
using manual ssl creation
alondhe Sep 8, 2023
af313bd
added ca step back
alondhe Sep 8, 2023
d57a832
adding insecure flag
alondhe Sep 8, 2023
0ce0c1b
Adding mac back
alondhe Sep 8, 2023
2871343
Trying more jobs
alondhe Sep 8, 2023
69a62b6
Added needs
alondhe Sep 8, 2023
2299740
combined into 1 workflow
alondhe Sep 8, 2023
ca79fa0
moved openldap and solr to separate test ymls
alondhe Sep 8, 2023
e9b1ddd
Fixes for perseus web - to override port
alondhe Sep 11, 2023
bae0945
Reverted to standard perseus web and backend
alondhe Sep 11, 2023
4302126
Adds new cdm-builder settings file
alondhe Sep 11, 2023
f856c7b
Initial achilles GA test
alondhe Sep 11, 2023
00b85ae
Added achilles log test to GA
alondhe Sep 16, 2023
567d17d
Added sleep to achilles GA, various renaming of GAs
alondhe Sep 16, 2023
7bfa932
Reorg of atlas files, updated quarto content. Preparing for add cdm p…
alondhe Oct 20, 2023
e691778
comment out new cdm password secrets
alondhe Oct 20, 2023
1aad75b
Added improved cacerts method.
alondhe Nov 22, 2023
0bc89b1
Change from < to cat in omop vocab script
alondhe Nov 28, 2023
9685ead
Updated < to cat in phoebe script
alondhe Nov 28, 2023
866b6c7
Added dummy github pat secret file
alondhe Nov 28, 2023
b0aba81
Adding apk update to load omop script
alondhe Jan 2, 2024
9f280a5
Updated readme to add BYO JDBC driver
alondhe Jan 3, 2024
2f24ff7
Update Basic Authentication (#113)
wtroddy Jan 3, 2024
68ae861
Cleanup of readme, some new notes
alondhe Jan 3, 2024
5571b5e
Adding GITHUB TOKEN to Achilles GA script
alondhe Jan 3, 2024
00df003
Trying to use org secret for Github pat
alondhe Jan 4, 2024
5e02356
Trying to set github pat as env within achilles dockerfile
alondhe Jan 4, 2024
9dc99e5
shift achilles github pat secret to build
alondhe Jan 4, 2024
29ae568
Added secrets mount in achilles dockerfile
alondhe Jan 4, 2024
ca19fa9
Trying docker compose (no hyphen) in achilles ci
alondhe Jan 4, 2024
a593585
Adopt Docker compose v2 and hyphen-less docker compose
alondhe Jan 4, 2024
e2aa50a
Removal of extraneous ports, removal of perseus-web, disable traefik …
alondhe Jan 5, 2024
f797c84
Re-enabled traefik dashboard. Added copy to Readme about Perseus
alondhe Jan 5, 2024
96c6e3a
Simplify perseus ci test to just http
alondhe Jan 6, 2024
fae9ca4
README editing (#121)
haydenbspence Jan 6, 2024
5fbaa52
Fixed cacerts item in Readme. Restore certs folder step in perseus ci.
alondhe Jan 19, 2024
ff69fde
Adding missing config-gis.js file to Atlas container
alondhe Jan 20, 2024
d89598a
Added jupyter notebook profile. Fixes for Achilles Dockerfile and tra…
alondhe Apr 24, 2024
76f1717
Added pgadmin from @leeevans commits and updated the content page to …
alondhe Apr 25, 2024
ce05f6f
Updating to 3.5 release number
alondhe Apr 25, 2024
56b237f
Changing OSs in CI matrices
alondhe Apr 26, 2024
2668ae9
Using only Linux OS for CI for now. Mac image runners not functioning…
alondhe Apr 26, 2024
11c7eee
Merge branch 'main' into develop
alondhe Apr 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
275 changes: 235 additions & 40 deletions .env

Large diffs are not rendered by default.

27 changes: 27 additions & 0 deletions .github/workflows/achilles.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: achilles profile (Linux)
on: push
jobs:
achilles:
strategy:
matrix:
os: [ubuntu-22.04]
httpType: [http]
runs-on: ${{ matrix.os }}
steps:
- name: Setup Docker on macOS
if: runner.os == 'macOS'
uses: douglascamata/setup-docker-macos-action@v1-alpha
- name: Checkout
uses: actions/checkout@v3
- name: Create certs folder
run: mkdir -p ./certs
- name: Write Github PAT secret file
run: echo ${{ secrets.GH_TOKEN }} > ./secrets/github_pat
- name: Build and run achilles container
run: docker compose --env-file .env --profile achilles up -d
- name: Use busybox container to grab log file and verify no errors
run: |
sleep 30
CID=$(docker run -d -v cdm-postprocessing-data:/cdm-postprocessing-data busybox true)
docker cp $CID:/cdm-postprocessing-data/achilles/data/demo_cdm/log_achilles.txt ./log_achilles.txt
if grep -q "ERROR" ./log_achilles.txt;then exit 1;else exit 0;fi
54 changes: 54 additions & 0 deletions .github/workflows/default.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: default profile (Linux)
on: push
jobs:
default:
strategy:
matrix:
os: [ubuntu-22.04]
httpType: [http, https]
runs-on: ${{ matrix.os }}
steps:
- name: Setup Docker on macOS
if: runner.os == 'macOS'
uses: douglascamata/setup-docker-macos-action@v1-alpha
- name: Checkout
uses: actions/checkout@v3
- name: Create certs folder
run: mkdir -p ./certs
- name: Replace HTTP_TYPE if https (Linux)
if: matrix.httpType == 'https' && runner.os == 'Linux'
run: sed -i 's/HTTP_TYPE=\"http\"/HTTP_TYPE=\"https\"/g' .env
- name: Replace HTTP_TYPE if https (Mac)
if: matrix.httpType == 'https' && runner.os == 'macOS'
run: sed -i '' 's/HTTP_TYPE=\"http\"/HTTP_TYPE=\"https\"/g' .env
- name: Create and trust self signed certs
if: matrix.httpType == 'https'
run: |
openssl req -x509 -out ./certs/broadsea.crt -keyout ./certs/broadsea.key \
-newkey rsa:2048 -nodes -sha256 \
-subj '/CN=127.0.0.1' -extensions EXT -config <( \
printf "[dn]\nCN=127.0.0.1\n[req]\ndistinguished_name = dn\n[EXT]\nsubjectAltName=DNS:127.0.0.1\nkeyUsage=digitalSignature\nextendedKeyUsage=serverAuth")
- name: Build traefik container
run: docker compose --env-file .env up -d
- name: Build default profile
run: docker compose --env-file .env --profile default up -d
- name: Setup postgres client on Linux
if: runner.os == 'Linux'
run: sudo apt-get install --yes --no-install-recommends postgresql-client
- name: Setup postgres client on MacOS
if: runner.os == 'macOS'
run: brew install libpq
- name: Test atlasdb
run: PGPASSWORD=$(cat ./secrets/webapi/WEBAPI_DATASOURCE_PASSWORD) psql -h 127.0.0.1 -p 5432 -U postgres -c "select source_name from webapi.source limit 1"
- name: Test traefik container
run: docker logs traefik
- name: Test content container
run: curl -s -k --retry 10 --retry-connrefused ${{matrix.httpType}}://127.0.0.1
- name: Test HADES
run: curl -s -k --retry 10 --retry-connrefused ${{matrix.httpType}}://127.0.0.1/hades/auth-sign-in
- name: Test Atlas
run: curl -s -k --retry 10 --retry-connrefused ${{matrix.httpType}}://127.0.0.1/atlas/#/home
- name: Test WebAPI info endpoint
run: |
sleep 30
curl -s -k --retry 10 --retry-connrefused ${{matrix.httpType}}://127.0.0.1/WebAPI/info
27 changes: 27 additions & 0 deletions .github/workflows/perseus.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: perseus profile (Linux)
on: push
jobs:
perseus:
strategy:
matrix:
os: [ubuntu-22.04]
httpType: [http]
runs-on: ${{ matrix.os }}
steps:
- name: Setup Docker on macOS
if: runner.os == 'macOS'
uses: douglascamata/setup-docker-macos-action@v1-alpha
- name: Checkout
uses: actions/checkout@v3
- name: Create certs folder
run: mkdir -p ./certs
- name: Build traefik container
run: docker compose up -d
- name: Check traefik container
run: docker logs traefik
- name: Build perseus profile
run: docker compose --profile perseus up -d
- name: Test perseus frontend
run: |
sleep 30
curl -s --retry 10 --retry-connrefused http://127.0.0.1/perseus
44 changes: 44 additions & 0 deletions .github/workflows/solrvocab.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: solr-vocab-no-import profile (Linux)
on: push
jobs:
solrvocab:
strategy:
matrix:
os: [ubuntu-22.04]
httpType: [http, https]
runs-on: ${{ matrix.os }}
steps:
- name: Setup Docker on macOS
if: runner.os == 'macOS'
uses: douglascamata/setup-docker-macos-action@v1-alpha
- name: Checkout
uses: actions/checkout@v3
- name: Create certs folder
run: mkdir -p ./certs
- name: Replace HTTP_TYPE if https (Linux)
if: matrix.httpType == 'https' && runner.os == 'Linux'
run: sed -i 's/HTTP_TYPE=\"http\"/HTTP_TYPE=\"https\"/g' .env
- name: Replace HTTP_TYPE if https (Mac)
if: matrix.httpType == 'https' && runner.os == 'macOS'
run: sed -i '' 's/HTTP_TYPE=\"http\"/HTTP_TYPE=\"https\"/g' .env
- name: Create and trust self signed certs
if: matrix.httpType == 'https'
run: |
openssl req -x509 -out ./certs/broadsea.crt -keyout ./certs/broadsea.key \
-newkey rsa:2048 -nodes -sha256 \
-subj '/CN=127.0.0.1' -extensions EXT -config <( \
printf "[dn]\nCN=127.0.0.1\n[req]\ndistinguished_name = dn\n[EXT]\nsubjectAltName=DNS:127.0.0.1\nkeyUsage=digitalSignature\nextendedKeyUsage=serverAuth")
- name: Build traefik container
run: docker compose --env-file .env up -d
- name: Build atlasdb profile
run: docker compose --env-file .env --profile atlasdb up -d
- name: Build empty SOLR instance
run: docker compose --env-file .env --profile solr-vocab-no-import up -d
- name: Build webapi profile with SOLR_VOCAB enabled
run: SOLR_VOCAB_ENDPOINT=http://broadsea-solr-vocab:8983/solr docker compose --env-file .env --profile webapi-from-image up -d
- name: Test WebAPI info endpoint
run: |
sleep 30
curl -s -k --retry 10 --retry-connrefused ${{matrix.httpType}}://127.0.0.1/WebAPI/info
- name: Test SOLR endpoint
run: curl -s -k --retry 10 --retry-connrefused ${{matrix.httpType}}://127.0.0.1/solr/
59 changes: 59 additions & 0 deletions .github/workflows/webapi_auth.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: WebAPI Authentication (Linux)
on: push
jobs:
openldap:
strategy:
matrix:
os: [ubuntu-22.04]
httpType: [http]
runs-on: ${{ matrix.os }}
steps:
- name: Setup Docker on macOS
if: runner.os == 'macOS'
uses: douglascamata/setup-docker-macos-action@v1-alpha
- name: Checkout
uses: actions/checkout@v3
- name: Create certs folder
run: mkdir -p ./certs
- name: Build traefik container
run: docker compose --env-file .env up -d
- name: Build atlasdb profile
run: docker compose --env-file .env --profile atlasdb up -d
- name: Build webapi profile with ldap enabled
run: SECURITY_AUTH_LDAP_ENABLED=true docker compose --env-file .env --profile webapi-from-image up -d
- name: Test WebAPI info endpoint
run: |
sleep 30
curl -s -k --retry 10 --retry-connrefused ${{matrix.httpType}}://127.0.0.1/WebAPI/info
- name: Build OpenLDAP
run: docker compose --env-file .env --profile openldap up -d
- name: Test openldap auth in WebAPI
run: |
curl -d "login=user1&password=$(<./secrets/openldap/OPENLDAP_ACCOUNT_PASSWORDS)" -H "Content-Type: application/x-www-form-urlencoded" -X POST ${{matrix.httpType}}://127.0.0.1/WebAPI/user/login/ldap
db:
strategy:
matrix:
os: [ubuntu-22.04]
httpType: [http]
runs-on: ${{ matrix.os }}
steps:
- name: Setup Docker on macOS
if: runner.os == 'macOS'
uses: douglascamata/setup-docker-macos-action@v1-alpha
- name: Checkout
uses: actions/checkout@v3
- name: Create certs folder
run: mkdir -p ./certs
- name: Build traefik container
run: docker compose --env-file .env up -d
- name: Build atlasdb profile
run: docker compose --env-file .env --profile atlasdb up -d
- name: Build webapi profile with ldap enabled
run: SECURITY_AUTH_JDBC_ENABLED=true docker compose --env-file .env --profile webapi-from-image up -d
- name: Test WebAPI info endpoint
run: |
sleep 30
curl -s -k --retry 10 --retry-connrefused ${{matrix.httpType}}://127.0.0.1/WebAPI/info
- name: Test db auth in WebAPI
run: |
curl -d "login=ohdsi&password=$(<./secrets/webapi/SECURITY_DB_DATASOURCE_PASSWORD)" -H "Content-Type: application/x-www-form-urlencoded" -X POST ${{matrix.httpType}}://127.0.0.1/WebAPI/user/login/db
7 changes: 6 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
.DS_Store
omop_vocab/files
.env_local
*.jar
*.lic
phoebe/concept_recommended.csv
phoebe/__MACOSX
atlas/add_cdm
.Rproj.user
strategus/
Loading
Loading