Skip to content

Commit e0ed770

Browse files
committed
test
Signed-off-by: ZePan110 <[email protected]>
1 parent 8893f87 commit e0ed770

File tree

1 file changed

+156
-153
lines changed

1 file changed

+156
-153
lines changed

.github/workflows/_run-one-click.yml

Lines changed: 156 additions & 153 deletions
Original file line numberDiff line numberDiff line change
@@ -34,158 +34,161 @@ on:
3434

3535
jobs:
3636
one-click-test:
37-
runs-on: ${{ inputs.deploy_method }}-${{ inputs.hardware }}
37+
runs-on: ubuntu-latest #${{ inputs.deploy_method }}-${{ inputs.hardware }}
3838
continue-on-error: true
3939
steps:
40-
- name: Clean up Working Directory
41-
if: ${{ inputs.deploy_method == 'docker' }}
42-
run: |
43-
sudo rm -rf ${{github.workspace}}/* || true
44-
45-
echo "Cleaning up containers using ports..."
46-
cid=$(docker ps --format '{{.Names}} : {{.Ports}}' | grep -v ' : $' | grep -v 0.0.0.0:5000 | awk -F' : ' '{print $1}')
47-
if [[ ! -z "$cid" ]]; then docker stop $cid && docker rm $cid && sleep 1s; fi
48-
docker system prune -f
49-
50-
echo "Cleaning up images ..."
51-
docker images --filter reference="*/*/*:latest" -q | xargs -r docker rmi && sleep 1s
52-
docker images --filter reference="*/*:ci" -q | xargs -r docker rmi && sleep 1s
53-
docker images --filter reference="*:5000/*/*" -q | xargs -r docker rmi && sleep 1s
54-
docker images --filter reference="opea/comps-base" -q | xargs -r docker rmi && sleep 1s
55-
docker images
56-
57-
- name: Checkout out Repo
58-
if: ${{ inputs.deploy_method == 'docker' }}
59-
uses: actions/checkout@v4
60-
with:
61-
fetch-depth: 0
62-
63-
- name: Clean up container before test
64-
if: ${{ inputs.deploy_method == 'docker' }}
65-
shell: bash
66-
run: |
67-
docker ps
68-
if [ "${{ inputs.example }}" = "FaqGen" ]; then
69-
export test_case=test_compose_faqgen_on_xeon.sh
70-
cd ${{ github.workspace }}/ChatQnA
71-
else
72-
cd ${{ github.workspace }}/${{ inputs.example }}
73-
fi
74-
export hardware=${{ inputs.hardware }}
75-
bash ${{ github.workspace }}/.github/workflows/scripts/docker_compose_clean_up.sh "containers"
76-
bash ${{ github.workspace }}/.github/workflows/scripts/docker_compose_clean_up.sh "ports"
77-
docker ps
78-
79-
- name: Log in DockerHub
80-
if: ${{ inputs.deploy_method == 'docker' }}
81-
uses: docker/[email protected]
82-
with:
83-
username: ${{ secrets.DOCKERHUB_USER }}
84-
password: ${{ secrets.DOCKERHUB_TOKEN }}
85-
86-
- name: Clean Up Working Directory
87-
if: ${{ inputs.deploy_method == 'k8s' }}
88-
run: |
89-
sudo rm -rf ${{github.workspace}}/*
90-
91-
- name: Checkout out Repo
92-
if: ${{ inputs.deploy_method == 'k8s' }}
93-
uses: actions/checkout@v4
94-
with:
95-
fetch-depth: 0
96-
97-
- name: get-default-params-from-config
98-
id: get-default-params
99-
if: ${{ inputs.deploy_method == 'k8s' }}
100-
run: |
101-
cd ${{ github.workspace }}
102-
PARAMS_JSON=$(python3 .github/workflows/scripts/get-params.py ${{ inputs.example }})
103-
echo "LLM_model=$(echo "$PARAMS_JSON" | jq -r '.llm_model')" >> $GITHUB_ENV
104-
if [ "${{ inputs.example }}" = "ChatQnA" ]; then
105-
echo "LLM_model=$(echo "$PARAMS_JSON" | jq -r '.llm_model')" >> $GITHUB_ENV
106-
echo "Embedding_model=$(echo "$PARAMS_JSON" | jq -r '.embed_model')" >> $GITHUB_ENV
107-
echo "Reranking_model=$(echo "$PARAMS_JSON" | jq -r '.rerank_model')" >> $GITHUB_ENV
108-
echo "Mount_dir=$(echo "$PARAMS_JSON" | jq -r '.mount_dir')" >> $GITHUB_ENV
109-
elif [ "${{ inputs.example }}" = "VisualQnA" ]; then
110-
echo "LVM_model=$(echo "$PARAMS_JSON" | jq -r '.lvm_model')" >> $GITHUB_ENV
111-
elif [ "${{ inputs.example }}" = "AgentQnA" ]; then
112-
echo "LLM_model=$(echo "$PARAMS_JSON" | jq -r '.gaudi.llm_model')" >> $GITHUB_ENV
113-
fi
114-
115-
- name: deploy and test
116-
shell: bash
117-
env:
118-
HF_TOKEN: ${{ secrets.HF_TOKEN }}
119-
GOOGLE_CSE_ID: ${{ secrets.GOOGLE_CSE_ID }}
120-
GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }}
121-
PINECONE_KEY: ${{ secrets.PINECONE_KEY }}
122-
PINECONE_KEY_LANGCHAIN_TEST: ${{ secrets.PINECONE_KEY_LANGCHAIN_TEST }}
123-
SDK_BASE_URL: ${{ secrets.SDK_BASE_URL }}
124-
SERVING_TOKEN: ${{ secrets.SERVING_TOKEN }}
125-
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
126-
FINNHUB_API_KEY: ${{ secrets.FINNHUB_API_KEY }}
127-
FINANCIAL_DATASETS_API_KEY: ${{ secrets.FINANCIAL_DATASETS_API_KEY }}
128-
LLM_model: ${{ env.LLM_model }}
129-
Embedding_model: ${{ env.Embedding_model }}
130-
Reranking_model: ${{ env.Reranking_model }}
131-
Mount_dir: ${{ env.Mount_dir }}
132-
LVM_model: ${{ env.LVM_model }}
133-
run: |
134-
sudo apt update
135-
sudo apt install -y python3-pip
136-
137-
cd ${{ github.workspace }}/one_click_deploy
138-
python3 -m pip install -r requirements.txt
139-
140-
if [ "${{ inputs.deploy_method }}" = "k8s" ]; then
141-
export OPEA_K8S_VLLM_SKIP_WARMUP=TRUE
142-
fi
143-
export TEST_RETRY_ATTEMPTS=6
144-
145-
INPUT_DATA=$(
146-
jq -r --arg type "${{ inputs.deploy_method }}" --arg id "${{ inputs.example }}" \
147-
'.[$type][$id].inputs.deploy[]' ${{ github.workspace }}/.github/workflows/one-click-inputs-nobuild.json | \
148-
sed "s|\$hardware|$hardware|g; \
149-
s|\$HF_TOKEN|$HF_TOKEN|g; \
150-
s|\$LLM_model|$LLM_model|g; \
151-
s|\$Embedding_model|$Embedding_model|g; \
152-
s|\$Reranking_model|$Reranking_model|g; \
153-
s|\$CodeTrans_model|$LLM_model|g; \
154-
s|\$DocSum_model|$LLM_model|g; \
155-
s|\$CodeGen_model|$LLM_model|g; \
156-
s|\$AudioQnA_model|$LLM_model|g; \
157-
s|\$VisualQnA_model|$LLM_model|g; \
158-
s|\$FaqGen_model|$LLM_model|g; \
159-
s|\$AgentQnA_model|$LLM_model|g; \
160-
s|\$Mount_dir|$Mount_dir|g"
161-
)
162-
163-
echo "Generated input:"
164-
echo "$INPUT_DATA"
165-
166-
python3 one_click_deploy.py << INPUTS
167-
$INPUT_DATA
168-
INPUTS
169-
170-
- name: Clean up deployment
171-
run: |
172-
cd ${{ github.workspace }}/one_click_deploy
173-
174-
INPUT_DATA=$(
175-
jq -r --arg type "${{ inputs.deploy_method }}" --arg id "${{ inputs.example }}" \
176-
'.[$type][$id].inputs.clear[]' ${{ github.workspace }}/.github/workflows/one-click-inputs.json | \
177-
sed "s/\$hardware/${{ inputs.hardware }}/g"
178-
)
179-
echo "Generated input:"
180-
echo "$INPUT_DATA"
181-
182-
python3 one_click_deploy.py << INPUTS
183-
$INPUT_DATA
184-
INPUTS
185-
186-
- name: Publish pipeline artifact
187-
if: ${{ !cancelled() }}
188-
uses: actions/upload-artifact@v4
189-
with:
190-
name: ${{ inputs.deploy_method }}
191-
path: ${{ github.workspace }}/${{ inputs.deploy_method }}-tests/test-results.log
40+
- name: test
41+
run :|
42+
echo "Testing example: ${{ inputs.example }} with deploy method: ${{ inputs.deploy_method }} on hardware: ${{ inputs.hardware }}"
43+
# - name: Clean up Working Directory
44+
# if: ${{ inputs.deploy_method == 'docker' }}
45+
# run: |
46+
# sudo rm -rf ${{github.workspace}}/* || true
47+
48+
# echo "Cleaning up containers using ports..."
49+
# cid=$(docker ps --format '{{.Names}} : {{.Ports}}' | grep -v ' : $' | grep -v 0.0.0.0:5000 | awk -F' : ' '{print $1}')
50+
# if [[ ! -z "$cid" ]]; then docker stop $cid && docker rm $cid && sleep 1s; fi
51+
# docker system prune -f
52+
53+
# echo "Cleaning up images ..."
54+
# docker images --filter reference="*/*/*:latest" -q | xargs -r docker rmi && sleep 1s
55+
# docker images --filter reference="*/*:ci" -q | xargs -r docker rmi && sleep 1s
56+
# docker images --filter reference="*:5000/*/*" -q | xargs -r docker rmi && sleep 1s
57+
# docker images --filter reference="opea/comps-base" -q | xargs -r docker rmi && sleep 1s
58+
# docker images
59+
60+
# - name: Checkout out Repo
61+
# if: ${{ inputs.deploy_method == 'docker' }}
62+
# uses: actions/checkout@v4
63+
# with:
64+
# fetch-depth: 0
65+
66+
# - name: Clean up container before test
67+
# if: ${{ inputs.deploy_method == 'docker' }}
68+
# shell: bash
69+
# run: |
70+
# docker ps
71+
# if [ "${{ inputs.example }}" = "FaqGen" ]; then
72+
# export test_case=test_compose_faqgen_on_xeon.sh
73+
# cd ${{ github.workspace }}/ChatQnA
74+
# else
75+
# cd ${{ github.workspace }}/${{ inputs.example }}
76+
# fi
77+
# export hardware=${{ inputs.hardware }}
78+
# bash ${{ github.workspace }}/.github/workflows/scripts/docker_compose_clean_up.sh "containers"
79+
# bash ${{ github.workspace }}/.github/workflows/scripts/docker_compose_clean_up.sh "ports"
80+
# docker ps
81+
82+
# - name: Log in DockerHub
83+
# if: ${{ inputs.deploy_method == 'docker' }}
84+
# uses: docker/[email protected]
85+
# with:
86+
# username: ${{ secrets.DOCKERHUB_USER }}
87+
# password: ${{ secrets.DOCKERHUB_TOKEN }}
88+
89+
# - name: Clean Up Working Directory
90+
# if: ${{ inputs.deploy_method == 'k8s' }}
91+
# run: |
92+
# sudo rm -rf ${{github.workspace}}/*
93+
94+
# - name: Checkout out Repo
95+
# if: ${{ inputs.deploy_method == 'k8s' }}
96+
# uses: actions/checkout@v4
97+
# with:
98+
# fetch-depth: 0
99+
100+
# - name: get-default-params-from-config
101+
# id: get-default-params
102+
# if: ${{ inputs.deploy_method == 'k8s' }}
103+
# run: |
104+
# cd ${{ github.workspace }}
105+
# PARAMS_JSON=$(python3 .github/workflows/scripts/get-params.py ${{ inputs.example }})
106+
# echo "LLM_model=$(echo "$PARAMS_JSON" | jq -r '.llm_model')" >> $GITHUB_ENV
107+
# if [ "${{ inputs.example }}" = "ChatQnA" ]; then
108+
# echo "LLM_model=$(echo "$PARAMS_JSON" | jq -r '.llm_model')" >> $GITHUB_ENV
109+
# echo "Embedding_model=$(echo "$PARAMS_JSON" | jq -r '.embed_model')" >> $GITHUB_ENV
110+
# echo "Reranking_model=$(echo "$PARAMS_JSON" | jq -r '.rerank_model')" >> $GITHUB_ENV
111+
# echo "Mount_dir=$(echo "$PARAMS_JSON" | jq -r '.mount_dir')" >> $GITHUB_ENV
112+
# elif [ "${{ inputs.example }}" = "VisualQnA" ]; then
113+
# echo "LVM_model=$(echo "$PARAMS_JSON" | jq -r '.lvm_model')" >> $GITHUB_ENV
114+
# elif [ "${{ inputs.example }}" = "AgentQnA" ]; then
115+
# echo "LLM_model=$(echo "$PARAMS_JSON" | jq -r '.gaudi.llm_model')" >> $GITHUB_ENV
116+
# fi
117+
118+
# - name: deploy and test
119+
# shell: bash
120+
# env:
121+
# HF_TOKEN: ${{ secrets.HF_TOKEN }}
122+
# GOOGLE_CSE_ID: ${{ secrets.GOOGLE_CSE_ID }}
123+
# GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }}
124+
# PINECONE_KEY: ${{ secrets.PINECONE_KEY }}
125+
# PINECONE_KEY_LANGCHAIN_TEST: ${{ secrets.PINECONE_KEY_LANGCHAIN_TEST }}
126+
# SDK_BASE_URL: ${{ secrets.SDK_BASE_URL }}
127+
# SERVING_TOKEN: ${{ secrets.SERVING_TOKEN }}
128+
# OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
129+
# FINNHUB_API_KEY: ${{ secrets.FINNHUB_API_KEY }}
130+
# FINANCIAL_DATASETS_API_KEY: ${{ secrets.FINANCIAL_DATASETS_API_KEY }}
131+
# LLM_model: ${{ env.LLM_model }}
132+
# Embedding_model: ${{ env.Embedding_model }}
133+
# Reranking_model: ${{ env.Reranking_model }}
134+
# Mount_dir: ${{ env.Mount_dir }}
135+
# LVM_model: ${{ env.LVM_model }}
136+
# run: |
137+
# sudo apt update
138+
# sudo apt install -y python3-pip
139+
140+
# cd ${{ github.workspace }}/one_click_deploy
141+
# python3 -m pip install -r requirements.txt
142+
143+
# if [ "${{ inputs.deploy_method }}" = "k8s" ]; then
144+
# export OPEA_K8S_VLLM_SKIP_WARMUP=TRUE
145+
# fi
146+
# export TEST_RETRY_ATTEMPTS=6
147+
148+
# INPUT_DATA=$(
149+
# jq -r --arg type "${{ inputs.deploy_method }}" --arg id "${{ inputs.example }}" \
150+
# '.[$type][$id].inputs.deploy[]' ${{ github.workspace }}/.github/workflows/one-click-inputs-nobuild.json | \
151+
# sed "s|\$hardware|$hardware|g; \
152+
# s|\$HF_TOKEN|$HF_TOKEN|g; \
153+
# s|\$LLM_model|$LLM_model|g; \
154+
# s|\$Embedding_model|$Embedding_model|g; \
155+
# s|\$Reranking_model|$Reranking_model|g; \
156+
# s|\$CodeTrans_model|$LLM_model|g; \
157+
# s|\$DocSum_model|$LLM_model|g; \
158+
# s|\$CodeGen_model|$LLM_model|g; \
159+
# s|\$AudioQnA_model|$LLM_model|g; \
160+
# s|\$VisualQnA_model|$LLM_model|g; \
161+
# s|\$FaqGen_model|$LLM_model|g; \
162+
# s|\$AgentQnA_model|$LLM_model|g; \
163+
# s|\$Mount_dir|$Mount_dir|g"
164+
# )
165+
166+
# echo "Generated input:"
167+
# echo "$INPUT_DATA"
168+
169+
# python3 one_click_deploy.py << INPUTS
170+
# $INPUT_DATA
171+
# INPUTS
172+
173+
# - name: Clean up deployment
174+
# run: |
175+
# cd ${{ github.workspace }}/one_click_deploy
176+
177+
# INPUT_DATA=$(
178+
# jq -r --arg type "${{ inputs.deploy_method }}" --arg id "${{ inputs.example }}" \
179+
# '.[$type][$id].inputs.clear[]' ${{ github.workspace }}/.github/workflows/one-click-inputs.json | \
180+
# sed "s/\$hardware/${{ inputs.hardware }}/g"
181+
# )
182+
# echo "Generated input:"
183+
# echo "$INPUT_DATA"
184+
185+
# python3 one_click_deploy.py << INPUTS
186+
# $INPUT_DATA
187+
# INPUTS
188+
189+
# - name: Publish pipeline artifact
190+
# if: ${{ !cancelled() }}
191+
# uses: actions/upload-artifact@v4
192+
# with:
193+
# name: ${{ inputs.deploy_method }}
194+
# path: ${{ github.workspace }}/${{ inputs.deploy_method }}-tests/test-results.log

0 commit comments

Comments
 (0)