-
-
Notifications
You must be signed in to change notification settings - Fork 174
Expand file tree
/
Copy pathtest-container-functionality.yml
More file actions
115 lines (109 loc) · 4.03 KB
/
test-container-functionality.yml
File metadata and controls
115 lines (109 loc) · 4.03 KB
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# Run container_benchmarking test_functionality.sh for 8.1.0, binary, and flex.
# Uses the test_suite.sh inside container_benchmarking to verify containers perform as expected.
# By default runs the full test suite per variant. Use workflow_dispatch with test_name to run a single test.
name: Container Functionality (8.1.0, binary, flex)
on:
push:
branches: [master]
paths:
- '.github/workflows/test-container-functionality.yml'
- 'utilities/container_benchmarking/**'
- 'docker/openemr/8.1.0/**'
- 'docker/openemr/binary/**'
- 'docker/openemr/flex/**'
pull_request:
branches: [master]
paths:
- '.github/workflows/test-container-functionality.yml'
- 'utilities/container_benchmarking/**'
- 'docker/openemr/8.1.0/**'
- 'docker/openemr/binary/**'
- 'docker/openemr/flex/**'
workflow_dispatch:
inputs:
test_name:
description: 'Run only this test (e.g. fresh_installation). Leave empty for full suite.'
required: false
default: ''
env:
# Run full test suite by default; use workflow_dispatch with test_name to run a single test
TEST_SUITE_ARGS: ''
jobs:
functionality-810:
name: Functionality 8.1.0
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- name: Set test args
id: args
run: |
if [[ -n "${{ github.event.inputs.test_name }}" ]]; then
echo "args=--test ${{ github.event.inputs.test_name }}" >> "$GITHUB_OUTPUT"
elif [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
echo "args=" >> "$GITHUB_OUTPUT"
else
echo "args=${{ env.TEST_SUITE_ARGS }}" >> "$GITHUB_OUTPUT"
fi
- name: Run container functionality tests (8.1.0)
run: |
cd utilities/container_benchmarking
./test_functionality.sh 8.1.0 ${{ steps.args.outputs.args }}
- name: Upload test results
if: always()
uses: actions/upload-artifact@v7
with:
name: test-results-810
path: utilities/container_benchmarking/test_results/
retention-days: 7
functionality-binary:
name: Functionality binary
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- name: Set test args
id: args
run: |
if [[ -n "${{ github.event.inputs.test_name }}" ]]; then
echo "args=--test ${{ github.event.inputs.test_name }}" >> "$GITHUB_OUTPUT"
elif [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
echo "args=" >> "$GITHUB_OUTPUT"
else
echo "args=${{ env.TEST_SUITE_ARGS }}" >> "$GITHUB_OUTPUT"
fi
- name: Run container functionality tests (binary)
run: |
cd utilities/container_benchmarking
./test_functionality.sh binary ${{ steps.args.outputs.args }}
- name: Upload test results
if: always()
uses: actions/upload-artifact@v7
with:
name: test-results-binary
path: utilities/container_benchmarking/test_results/
retention-days: 7
functionality-flex:
name: Functionality flex
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- name: Set test args
id: args
run: |
if [[ -n "${{ github.event.inputs.test_name }}" ]]; then
echo "args=--test ${{ github.event.inputs.test_name }}" >> "$GITHUB_OUTPUT"
elif [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
echo "args=" >> "$GITHUB_OUTPUT"
else
echo "args=${{ env.TEST_SUITE_ARGS }}" >> "$GITHUB_OUTPUT"
fi
- name: Run container functionality tests (flex)
run: |
cd utilities/container_benchmarking
./test_functionality.sh flex ${{ steps.args.outputs.args }}
- name: Upload test results
if: always()
uses: actions/upload-artifact@v7
with:
name: test-results-flex
path: utilities/container_benchmarking/test_results/
retention-days: 7