Skip to content

Commit cbc87e7

Browse files
authored
Merge branch 'main' into workflow-executor-example
2 parents 0523b68 + 1a0c5f0 commit cbc87e7

File tree

805 files changed

+62956
-14765
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

805 files changed

+62956
-14765
lines changed

.github/ISSUE_TEMPLATE/1_bug_template.yml

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ body:
6666
options:
6767
- label: Pull docker images from hub.docker.com
6868
- label: Build docker images from source
69+
- label: Other
6970
validations:
7071
required: true
7172

@@ -74,10 +75,11 @@ body:
7475
attributes:
7576
label: Deploy method
7677
options:
77-
- label: Docker compose
7878
- label: Docker
79-
- label: Kubernetes
80-
- label: Helm
79+
- label: Docker Compose
80+
- label: Kubernetes Helm Charts
81+
- label: Kubernetes GMC
82+
- label: Other
8183
validations:
8284
required: true
8385

@@ -88,6 +90,7 @@ body:
8890
options:
8991
- Single Node
9092
- Multiple Nodes
93+
- Other
9194
default: 0
9295
validations:
9396
required: true
@@ -127,3 +130,12 @@ body:
127130
render: shell
128131
validations:
129132
required: false
133+
134+
135+
- type: textarea
136+
id: attachments
137+
attributes:
138+
label: Attachments
139+
description: Attach any relevant files or screenshots.
140+
validations:
141+
required: false

.github/ISSUE_TEMPLATE/2_feature_template.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ body:
6666
options:
6767
- Single Node
6868
- Multiple Nodes
69+
- Other
6970
default: 0
7071
validations:
7172
required: true

.github/code_spell_ignore.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
ModelIn
22
modelin
3+
pressEnter
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# Copyright (C) 2025 Intel Corporation
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
name: Build Comps Base Image
5+
permissions: read-all
6+
on:
7+
workflow_call:
8+
inputs:
9+
node:
10+
required: true
11+
type: string
12+
build:
13+
default: true
14+
required: false
15+
type: boolean
16+
tag:
17+
default: "latest"
18+
required: false
19+
type: string
20+
opea_branch:
21+
default: "main"
22+
required: false
23+
type: string
24+
inject_commit:
25+
default: false
26+
required: false
27+
type: boolean
28+
29+
jobs:
30+
pre-build-image-check:
31+
runs-on: ubuntu-latest
32+
outputs:
33+
should_skip: ${{ steps.check-skip.outputs.should_skip }}
34+
steps:
35+
- name: Check if job should be skipped
36+
id: check-skip
37+
run: |
38+
should_skip=false
39+
if [[ "${{ inputs.node }}" == "gaudi3" || "${{ inputs.node }}" == "rocm" || "${{ inputs.node }}" == "arc" ]]; then
40+
should_skip=true
41+
fi
42+
echo "should_skip=$should_skip"
43+
echo "should_skip=$should_skip" >> $GITHUB_OUTPUT
44+
45+
build-images:
46+
needs: [ pre-build-image-check ]
47+
if: ${{ needs.pre-build-image-check.outputs.should_skip == 'false' && fromJSON(inputs.build) }}
48+
runs-on: "docker-build-${{ inputs.node }}"
49+
steps:
50+
- name: Clean Up Working Directory
51+
run: sudo rm -rf ${{github.workspace}}/*
52+
53+
- name: Clone Required Repo
54+
run: |
55+
git clone --depth 1 --branch ${{ inputs.opea_branch }} https://github.com/opea-project/GenAIComps.git
56+
cd GenAIComps && git rev-parse HEAD && cd ../ && ls -l
57+
58+
- name: Build Image
59+
uses: opea-project/validation/actions/image-build@main
60+
with:
61+
work_dir: ${{ github.workspace }}/GenAIComps
62+
docker_compose_path: ${{ github.workspace }}/GenAIComps/.github/workflows/docker/compose/base-compose.yaml
63+
registry: ${OPEA_IMAGE_REPO}opea
64+
inject_commit: ${{ inputs.inject_commit }}
65+
tag: ${{ inputs.tag }}

.github/workflows/_build_image.yml

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
# Copyright (C) 2025 Intel Corporation
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
name: Build Images
5+
permissions: read-all
6+
on:
7+
workflow_call:
8+
inputs:
9+
node:
10+
required: true
11+
type: string
12+
build:
13+
default: true
14+
required: false
15+
type: boolean
16+
example:
17+
required: true
18+
type: string
19+
services:
20+
default: ""
21+
required: false
22+
type: string
23+
tag:
24+
default: "latest"
25+
required: false
26+
type: string
27+
opea_branch:
28+
default: "main"
29+
required: false
30+
type: string
31+
inject_commit:
32+
default: false
33+
required: false
34+
type: boolean
35+
36+
jobs:
37+
pre-build-image-check:
38+
runs-on: ubuntu-latest
39+
outputs:
40+
should_skip: ${{ steps.check-skip.outputs.should_skip }}
41+
steps:
42+
- name: Check if job should be skipped
43+
id: check-skip
44+
run: |
45+
should_skip=false
46+
if [[ "${{ inputs.node }}" == "gaudi3" || "${{ inputs.node }}" == "rocm" || "${{ inputs.node }}" == "arc" ]]; then
47+
should_skip=true
48+
fi
49+
echo "should_skip=$should_skip"
50+
echo "should_skip=$should_skip" >> $GITHUB_OUTPUT
51+
52+
build-images:
53+
needs: [ pre-build-image-check ]
54+
if: ${{ needs.pre-build-image-check.outputs.should_skip == 'false' && fromJSON(inputs.build) }}
55+
runs-on: "docker-build-${{ inputs.node }}"
56+
steps:
57+
- name: Clean Up Working Directory
58+
run: sudo rm -rf ${{github.workspace}}/*
59+
60+
- name: Get Checkout Ref
61+
run: |
62+
if [ "${{ github.event_name }}" == "pull_request" ] || [ "${{ github.event_name }}" == "pull_request_target" ]; then
63+
echo "CHECKOUT_REF=refs/pull/${{ github.event.number }}/merge" >> $GITHUB_ENV
64+
else
65+
echo "CHECKOUT_REF=${{ github.ref }}" >> $GITHUB_ENV
66+
fi
67+
68+
- name: Checkout out GenAIExamples
69+
uses: actions/checkout@v4
70+
with:
71+
ref: ${{ env.CHECKOUT_REF }}
72+
fetch-depth: 0
73+
74+
- name: Clone Required Repo
75+
run: |
76+
cd ${{ github.workspace }}/${{ inputs.example }}/docker_image_build
77+
docker_compose_path=${{ github.workspace }}/${{ inputs.example }}/docker_image_build/build.yaml
78+
if [[ $(grep -c "vllm:" ${docker_compose_path}) != 0 ]]; then
79+
git clone https://github.com/vllm-project/vllm.git && cd vllm
80+
# Get the latest tag
81+
VLLM_VER=$(git describe --tags "$(git rev-list --tags --max-count=1)")
82+
echo "Check out vLLM tag ${VLLM_VER}"
83+
git checkout ${VLLM_VER} &> /dev/null && cd ../
84+
fi
85+
if [[ $(grep -c "vllm-gaudi:" ${docker_compose_path}) != 0 ]]; then
86+
git clone https://github.com/HabanaAI/vllm-fork.git && cd vllm-fork
87+
# Get the latest tag
88+
VLLM_VER=$(git describe --tags "$(git rev-list --tags --max-count=1)")
89+
echo "Check out vLLM tag ${VLLM_VER}"
90+
git checkout ${VLLM_VER} &> /dev/null && cd ../
91+
fi
92+
git clone --depth 1 --branch ${{ inputs.opea_branch }} https://github.com/opea-project/GenAIComps.git
93+
cd GenAIComps && git rev-parse HEAD && cd ../
94+
95+
- name: Build Image
96+
uses: opea-project/validation/actions/image-build@main
97+
with:
98+
work_dir: ${{ github.workspace }}/${{ inputs.example }}/docker_image_build
99+
docker_compose_path: ${{ github.workspace }}/${{ inputs.example }}/docker_image_build/build.yaml
100+
service_list: ${{ inputs.services }}
101+
registry: ${OPEA_IMAGE_REPO}opea
102+
inject_commit: ${{ inputs.inject_commit }}
103+
tag: ${{ inputs.tag }}

.github/workflows/_example-workflow.yml

Lines changed: 23 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ on:
2828
default: false
2929
required: false
3030
type: boolean
31-
test_k8s:
31+
test_helmchart:
3232
default: false
3333
required: false
3434
type: boolean
@@ -43,90 +43,61 @@ on:
4343
inject_commit:
4444
default: false
4545
required: false
46-
type: string
46+
type: boolean
47+
use_model_cache:
48+
default: false
49+
required: false
50+
type: boolean
4751

4852
jobs:
4953
####################################################################################################
5054
# Image Build
5155
####################################################################################################
5256
build-images:
53-
runs-on: "docker-build-${{ inputs.node }}"
54-
steps:
55-
- name: Clean Up Working Directory
56-
run: sudo rm -rf ${{github.workspace}}/*
57-
58-
- name: Get Checkout Ref
59-
run: |
60-
if [ "${{ github.event_name }}" == "pull_request" ] || [ "${{ github.event_name }}" == "pull_request_target" ]; then
61-
echo "CHECKOUT_REF=refs/pull/${{ github.event.number }}/merge" >> $GITHUB_ENV
62-
else
63-
echo "CHECKOUT_REF=${{ github.ref }}" >> $GITHUB_ENV
64-
fi
65-
66-
- name: Checkout out GenAIExamples
67-
uses: actions/checkout@v4
68-
with:
69-
ref: ${{ env.CHECKOUT_REF }}
70-
fetch-depth: 0
71-
72-
- name: Clone Required Repo
73-
run: |
74-
cd ${{ github.workspace }}/${{ inputs.example }}/docker_image_build
75-
docker_compose_path=${{ github.workspace }}/${{ inputs.example }}/docker_image_build/build.yaml
76-
if [[ $(grep -c "vllm:" ${docker_compose_path}) != 0 ]]; then
77-
git clone https://github.com/vllm-project/vllm.git
78-
cd vllm && git rev-parse HEAD && cd ../
79-
fi
80-
if [[ $(grep -c "vllm-gaudi:" ${docker_compose_path}) != 0 ]]; then
81-
git clone https://github.com/HabanaAI/vllm-fork.git
82-
fi
83-
git clone https://github.com/opea-project/GenAIComps.git
84-
cd GenAIComps && git checkout ${{ inputs.opea_branch }} && git rev-parse HEAD && cd ../
85-
86-
- name: Build Image
87-
if: ${{ fromJSON(inputs.build) }}
88-
uses: opea-project/validation/actions/image-build@main
89-
with:
90-
work_dir: ${{ github.workspace }}/${{ inputs.example }}/docker_image_build
91-
docker_compose_path: ${{ github.workspace }}/${{ inputs.example }}/docker_image_build/build.yaml
92-
service_list: ${{ inputs.services }}
93-
registry: ${OPEA_IMAGE_REPO}opea
94-
inject_commit: ${{ inputs.inject_commit }}
95-
tag: ${{ inputs.tag }}
57+
uses: ./.github/workflows/_build_image.yml
58+
with:
59+
node: ${{ inputs.node }}
60+
build: ${{ fromJSON(inputs.build) }}
61+
example: ${{ inputs.example }}
62+
services: ${{ inputs.services }}
63+
tag: ${{ inputs.tag }}
64+
opea_branch: ${{ inputs.opea_branch }}
65+
inject_commit: ${{ inputs.inject_commit }}
9666

9767
####################################################################################################
9868
# Docker Compose Test
9969
####################################################################################################
10070
test-example-compose:
10171
needs: [build-images]
102-
if: ${{ fromJSON(inputs.test_compose) }}
72+
if: ${{ inputs.test_compose }}
10373
uses: ./.github/workflows/_run-docker-compose.yml
10474
with:
10575
tag: ${{ inputs.tag }}
10676
example: ${{ inputs.example }}
10777
hardware: ${{ inputs.node }}
78+
use_model_cache: ${{ inputs.use_model_cache }}
10879
secrets: inherit
10980

11081

11182
####################################################################################################
112-
# K8S Test
83+
# helmchart Test
11384
####################################################################################################
114-
test-k8s-manifest:
115-
needs: [build-images]
116-
if: ${{ fromJSON(inputs.test_k8s) }}
117-
uses: ./.github/workflows/_manifest-e2e.yml
85+
test-helmchart:
86+
if: ${{ fromJSON(inputs.test_helmchart) }}
87+
uses: ./.github/workflows/_helm-e2e.yml
11888
with:
11989
example: ${{ inputs.example }}
12090
hardware: ${{ inputs.node }}
12191
tag: ${{ inputs.tag }}
92+
mode: "CD"
12293
secrets: inherit
12394

12495
####################################################################################################
12596
# GMC Test
12697
####################################################################################################
12798
test-gmc-pipeline:
12899
needs: [build-images]
129-
if: ${{ fromJSON(inputs.test_gmc) }}
100+
if: false # ${{ fromJSON(inputs.test_gmc) }}
130101
uses: ./.github/workflows/_gmc-e2e.yml
131102
with:
132103
example: ${{ inputs.example }}

0 commit comments

Comments
 (0)