Skip to content

Commit 2ac78c1

Browse files
committed
Merge branch 'kubeflow:notebooks-v1' into notebooks-v1
Signed-off-by: Hen Schwartz (EXT-Nokia) <[email protected]>
2 parents 616d1a8 + 5f191bc commit 2ac78c1

File tree

1,060 files changed

+207425
-194
lines changed

Some content is hidden

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

1,060 files changed

+207425
-194
lines changed
File renamed without changes.

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,4 @@
11
blank_issues_enabled: true
2-
3-
issue_templates:
4-
- bug_report.yml
5-
- feature_request.yml
6-
- planning_epic.yml
7-
- planning_feature.yml
8-
- planning_task.yml
9-
102
contact_links:
113
- name: Kubeflow Documentation
124
url: https://www.kubeflow.org/

.github/ISSUE_TEMPLATE/planning_epic.yml

Lines changed: 0 additions & 27 deletions
This file was deleted.

.github/ISSUE_TEMPLATE/planning_feature.yml

Lines changed: 0 additions & 48 deletions
This file was deleted.

.github/ISSUE_TEMPLATE/planning_task.yml

Lines changed: 0 additions & 38 deletions
This file was deleted.

.github/workflows/OWNERS

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
labels:
2+
- area/ci
Lines changed: 157 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,157 @@
1+
name: VWA Frontend Tests
2+
on:
3+
pull_request:
4+
paths:
5+
- components/crud-web-apps/volumes/frontend/**
6+
- releasing/version/VERSION
7+
branches:
8+
- main
9+
- notebooks-v1
10+
11+
jobs:
12+
frontend-format-lint-check:
13+
name: Check code format and lint
14+
runs-on: ubuntu-22.04
15+
steps:
16+
- name: Check out code
17+
uses: actions/checkout@v4
18+
19+
- name: Setup Node
20+
uses: actions/setup-node@v4
21+
with:
22+
node-version: 16
23+
24+
- name: Check frontend code formatting
25+
run: |
26+
cd components/crud-web-apps/volumes/frontend
27+
npm i
28+
npm run format:check
29+
30+
- name: Check frontend code linting
31+
run: |
32+
cd components/crud-web-apps/volumes/frontend
33+
npm i
34+
npm run lint-check
35+
36+
frontend-unit-tests:
37+
runs-on: ubuntu-22.04
38+
name: Unit tests
39+
steps:
40+
- name: Checkout
41+
uses: actions/checkout@v4
42+
43+
- name: Setup node version to 16
44+
uses: actions/setup-node@v4
45+
with:
46+
node-version: 16
47+
48+
- name: Install Kubeflow common library dependecies
49+
run: |
50+
cd components/crud-web-apps/common/frontend/kubeflow-common-lib
51+
npm i
52+
npm run build
53+
npm link ./dist/kubeflow
54+
55+
- name: Install VWA dependencies
56+
run: |
57+
cd components/crud-web-apps/volumes/frontend
58+
npm i
59+
npm link kubeflow
60+
61+
- name: Run unit tests
62+
run: |
63+
cd components/crud-web-apps/volumes/frontend
64+
npm run test:prod
65+
66+
run-tests-in-chrome:
67+
name: UI tests in chrome
68+
runs-on: ubuntu-22.04
69+
steps:
70+
- name: Checkout
71+
uses: actions/checkout@v4
72+
73+
- name: Setup node version to 16
74+
uses: actions/setup-node@v4
75+
with:
76+
node-version: 16
77+
78+
- name: Install Kubeflow common library dependecies
79+
run: |
80+
cd components/crud-web-apps/common/frontend/kubeflow-common-lib
81+
npm i
82+
npm run build
83+
npm link ./dist/kubeflow
84+
85+
- name: Install VWA dependencies
86+
run: |
87+
cd components/crud-web-apps/volumes/frontend
88+
npm i
89+
npm link kubeflow
90+
91+
- name: Serve UI & run Cypress tests in Chrome
92+
uses: cypress-io/github-action@v6
93+
with:
94+
working-directory: components/crud-web-apps/volumes/frontend
95+
start: npm run serve
96+
install: false
97+
browser: chrome
98+
wait-on: "http://localhost:4200"
99+
record: false
100+
101+
run-tests-in-firefox:
102+
name: UI tests in firefox
103+
runs-on: ubuntu-22.04
104+
steps:
105+
- name: Checkout
106+
uses: actions/checkout@v4
107+
108+
- name: Setup node version to 16
109+
uses: actions/setup-node@v4
110+
with:
111+
node-version: 16
112+
113+
- name: Install Firefox dependencies
114+
run: |
115+
sudo apt-get update
116+
# Install Firefox from snap (more reliable for CI)
117+
sudo snap install firefox --classic
118+
# Install xvfb for headless mode
119+
sudo apt-get install -y xvfb
120+
# Create multiple symlinks to ensure Firefox is found
121+
sudo ln -sf /snap/bin/firefox /usr/local/bin/firefox
122+
sudo ln -sf /snap/bin/firefox /usr/bin/firefox
123+
# Add snap bin to PATH for this session
124+
echo 'export PATH="/snap/bin:$PATH"' >> ~/.bashrc
125+
export PATH="/snap/bin:$PATH"
126+
# Verify Firefox installation and location
127+
which firefox
128+
firefox --version
129+
# Set up display for headless mode
130+
export DISPLAY=:99
131+
Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
132+
133+
- name: Install Kubeflow common library dependecies
134+
run: |
135+
cd components/crud-web-apps/common/frontend/kubeflow-common-lib
136+
npm i
137+
npm run build
138+
npm link ./dist/kubeflow
139+
140+
- name: Install VWA dependencies
141+
run: |
142+
cd components/crud-web-apps/volumes/frontend
143+
npm i
144+
npm link kubeflow
145+
146+
- name: Serve UI & run Cypress tests in Firefox
147+
uses: cypress-io/github-action@v6
148+
with:
149+
working-directory: components/crud-web-apps/volumes/frontend
150+
start: npm run serve
151+
install: false
152+
browser: firefox
153+
wait-on: "http://localhost:4200"
154+
record: false
155+
env:
156+
DISPLAY: :99
157+
PATH: /snap/bin:/usr/local/bin:/usr/bin:/bin
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
name: VWA Integration Test
2+
on:
3+
pull_request:
4+
paths:
5+
- components/crud-web-apps/volumes/**
6+
- components/crud-web-apps/common/**
7+
- releasing/version/VERSION
8+
branches:
9+
- main
10+
- notebooks-v1
11+
12+
concurrency:
13+
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event.number }}
14+
cancel-in-progress: true
15+
16+
env:
17+
IMG: ghcr.io/kubeflow/notebooks/volumes-web-app
18+
TAG: integration-test
19+
20+
jobs:
21+
build:
22+
runs-on: ubuntu-22.04
23+
steps:
24+
- name: Checkout
25+
uses: actions/checkout@v4
26+
27+
- name: Setup Docker Buildx
28+
uses: docker/setup-buildx-action@v3
29+
30+
- name: Build VWA Image
31+
run: |
32+
cd components/crud-web-apps/volumes
33+
make docker-build-multi-arch
34+
35+
- name: Install KinD
36+
run: ./components/testing/gh-actions/install_kind.sh
37+
38+
- name: Create KinD Cluster
39+
run: kind create cluster --config components/testing/gh-actions/kind-1-25.yaml
40+
41+
- name: Load Image into KinD Cluster
42+
run: |
43+
kind load docker-image "${IMG}:${TAG}"
44+
45+
- name: Install kustomize
46+
run: ./components/testing/gh-actions/install_kustomize.sh
47+
48+
- name: Install Istio
49+
run: ./components/testing/gh-actions/install_istio.sh
50+
51+
- name: Build & Apply manifests
52+
run: |
53+
cd components/crud-web-apps/volumes/manifests
54+
kubectl create ns kubeflow
55+
56+
export CURRENT_IMAGE="${IMG}"
57+
export PR_IMAGE="${IMG}:${TAG}"
58+
59+
# escape "." in the image names, as it is a special characters in sed
60+
export CURRENT_IMAGE=$(echo "$CURRENT_IMAGE" | sed 's|\.|\\\.|g')
61+
export PR_IMAGE=$(echo "$PR_IMAGE" | sed 's|\.|\\\.|g')
62+
63+
kustomize build overlays/istio \
64+
| sed "s|${CURRENT_IMAGE}:[a-zA-Z0-9_.-]*|${PR_IMAGE}|g" \
65+
| kubectl apply -f -
66+
67+
kubectl wait pods -n kubeflow -l app=volumes-web-app --for=condition=Ready --timeout=300s

0 commit comments

Comments
 (0)