-
Notifications
You must be signed in to change notification settings - Fork 4
77 lines (61 loc) · 2.81 KB
/
inferno_ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
name: Inferno CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
env:
TEST_KIT_REPO: https://github.com/Shaumik-Ashraf/onc-certification-g10-test-kit.git
TEST_KIT_NAME: onc-certification-g10-test-kit
TEST_KIT_RELEASE: fi-3367-disable-tls-for-ci
INFERNO_DISABLE_TLS_TEST: true
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout server
uses: actions/checkout@v4
- name: Fetch latest g10 test kit
run: git clone $TEST_KIT_REPO $TEST_KIT_NAME --branch $TEST_KIT_RELEASE --depth 1
# TODO: delete this when inferno execute is merged
- name: Point test kit to experimental branch
working-directory: ${{ github.workspace }}/${{ env.TEST_KIT_NAME }}
run: |
echo "gem 'inferno_core', git: 'https://github.com/inferno-framework/inferno-core.git', branch: 'fi-3367-patch-execute-rollup'" >> Gemfile
rm Gemfile.lock # force re-install
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
working-directory: ${{ github.workspace }}/${{ env.TEST_KIT_NAME }}
bundler-cache: true
- name: Start server
run: |
docker compose build
docker compose up -d
${{ github.workspace }}/.github/wait-for.sh localhost:8080 -- echo "Server ready"
- name: Start Inferno services
working-directory: ${{ github.workspace }}/${{ env.TEST_KIT_NAME }}
run: |
gem install foreman
bundle exec inferno migrate
bundle exec inferno services start
${{ github.workspace }}/.github/wait-for.sh http://localhost:80/hl7validatorapi/validator/version -- echo "Inferno services ready"
- name: Run test kit
working-directory: ${{ github.workspace }}/${{ env.TEST_KIT_NAME }}
run: |
bundle exec inferno execute --suite g10_certification \
--suite-options us_core_version:us_core_3 \
smart_app_launch_version:smart_app_launch_1 \
multi_patient_version:multi_patient_api_stu1 \
--groups 4 \
--inputs "url:localhost:8080/reference-server/r4" \
patient_id:85 \
additional_patient_ids:85,355 \
"smart_credentials:{\"access_token\":\"SAMPLE_TOKEN\"}"
- name: Stop server
run: docker compose down
- name: Stop Inferno services
working-directory: ${{ github.workspace }}/${{ env.TEST_KIT_NAME }}
run: bundle exec inferno services stop