Skip to content

Commit a48f11d

Browse files
chensuyuechyundunovDatamonsters
authored andcommitted
Enable more flexible support for test HWs (opea-project#1816)
Signed-off-by: chensuyue <suyue.chen@intel.com> Signed-off-by: Chingis Yundunov <c.yundunov@datamonsters.com>
1 parent d7cc6da commit a48f11d

File tree

4 files changed

+28
-18
lines changed

4 files changed

+28
-18
lines changed

.github/workflows/_build_comps_base_image.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ jobs:
3535
- name: Check if job should be skipped
3636
id: check-skip
3737
run: |
38-
should_skip=false
39-
if [[ "${{ inputs.node }}" == "gaudi3" || "${{ inputs.node }}" == "rocm" || "${{ inputs.node }}" == "arc" ]]; then
40-
should_skip=true
38+
should_skip=true
39+
if [[ "${{ inputs.node }}" == "gaudi" || "${{ inputs.node }}" == "xeon" ]]; then
40+
should_skip=false
4141
fi
4242
echo "should_skip=$should_skip"
4343
echo "should_skip=$should_skip" >> $GITHUB_OUTPUT

.github/workflows/_build_image.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,9 @@ jobs:
4242
- name: Check if job should be skipped
4343
id: check-skip
4444
run: |
45-
should_skip=false
46-
if [[ "${{ inputs.node }}" == "gaudi3" || "${{ inputs.node }}" == "rocm" || "${{ inputs.node }}" == "arc" ]]; then
47-
should_skip=true
45+
should_skip=true
46+
if [[ "${{ inputs.node }}" == "gaudi" || "${{ inputs.node }}" == "xeon" ]]; then
47+
should_skip=false
4848
fi
4949
echo "should_skip=$should_skip"
5050
echo "should_skip=$should_skip" >> $GITHUB_OUTPUT

.github/workflows/_run-docker-compose.yml

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,10 @@ jobs:
6464
cd ${{ github.workspace }}/${{ inputs.example }}/tests
6565
run_test_cases=""
6666
67-
if [ "${{ inputs.hardware }}" == "gaudi2" ] || [ "${{ inputs.hardware }}" == "gaudi3" ]; then
67+
if [[ "${{ inputs.hardware }}" == "gaudi"* ]]; then
6868
hardware="gaudi"
69+
elif [[ "${{ inputs.hardware }}" == "xeon"* ]]; then
70+
hardware="xeon"
6971
else
7072
hardware="${{ inputs.hardware }}"
7173
fi
@@ -117,14 +119,15 @@ jobs:
117119
sudo rm -rf ${{github.workspace}}/* || true
118120
119121
echo "Cleaning up containers using ports..."
120-
cid=$(docker ps --format '{{.Names}} : {{.Ports}}' | grep -v ' : $' | grep -v 5000 | awk -F' : ' '{print $1}')
122+
cid=$(docker ps --format '{{.Names}} : {{.Ports}}' | grep -v ' : $' | grep -v 0.0.0.0:5000 | awk -F' : ' '{print $1}')
121123
if [[ ! -z "$cid" ]]; then docker stop $cid && docker rm $cid && sleep 1s; fi
122124
docker system prune -f
123125
124126
echo "Cleaning up images ..."
125127
docker images --filter reference="*/*/*:latest" -q | xargs -r docker rmi && sleep 1s
126128
docker images --filter reference="*/*:ci" -q | xargs -r docker rmi && sleep 1s
127129
docker images --filter reference="*:5000/*/*" -q | xargs -r docker rmi && sleep 1s
130+
docker images --filter reference="opea/comps-base" -q | xargs -r docker rmi && sleep 1s
128131
docker images
129132
130133
- name: Checkout out Repo
@@ -187,22 +190,29 @@ jobs:
187190
if [ -f "${test_case}" ]; then timeout 60m bash "${test_case}"; else echo "Test script {${test_case}} not found, skip test!"; fi
188191
189192
- name: Clean up container after test
190-
shell: bash
191-
if: cancelled() || failure()
193+
if: always()
192194
run: |
193195
set -x
194196
195-
cd ${{ github.workspace }}/${{ inputs.example }}
196-
export test_case=${{ matrix.test_case }}
197-
export hardware=${{ inputs.hardware }}
198-
bash ${{ github.workspace }}/.github/workflows/scripts/docker_compose_clean_up.sh "containers"
199-
echo "Finish docker clean up."
197+
echo "Cleaning up containers using ports..."
198+
cid=$(docker ps --format '{{.Names}} : {{.Ports}}' | grep -v ' : $' | grep -v 0.0.0.0:5000 | awk -F' : ' '{print $1}')
199+
if [[ ! -z "$cid" ]]; then docker stop $cid && docker rm $cid && sleep 1s; fi
200200
201-
docker system prune -f
201+
echo "Cleaning up images ..."
202+
if [[ "${{ inputs.hardware }}" == "xeon"* ]]; then
203+
docker system prune -a -f
204+
else
205+
docker images --filter reference="*/*/*:latest" -q | xargs -r docker rmi && sleep 1s
206+
docker images --filter reference="*/*:ci" -q | xargs -r docker rmi && sleep 1s
207+
docker images --filter reference="*:5000/*/*" -q | xargs -r docker rmi && sleep 1s
208+
docker images --filter reference="opea/comps-base" -q | xargs -r docker rmi && sleep 1s
209+
docker system prune -f
210+
fi
211+
docker images
202212
203213
- name: Publish pipeline artifact
204214
if: ${{ !cancelled() }}
205215
uses: actions/upload-artifact@v4
206216
with:
207-
name: ${{ inputs.example }}_${{ matrix.test_case }}
217+
name: ${{ inputs.hardware }}_${{ inputs.example }}_${{ matrix.test_case }}
208218
path: ${{ github.workspace }}/${{ inputs.example }}/tests/*.log

.github/workflows/manual-example-workflow.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ on:
77
inputs:
88
nodes:
99
default: "gaudi,xeon"
10-
description: "Hardware to run test gaudi,gaudi3,xeon,rocm,arc"
10+
description: "Hardware to run test gaudi,xeon,rocm,arc,gaudi3,xeon-gnr"
1111
required: true
1212
type: string
1313
examples:

0 commit comments

Comments
 (0)