Skip to content

Commit

Permalink
Adding GitHub action to do the operator end-to-end testing. This acti…
Browse files Browse the repository at this point in the history
…on will create a kind cluster and runs the tests on it.

Signed-off-by: lrangine <[email protected]>
  • Loading branch information
lokeshrangineni committed Nov 14, 2024
1 parent de2d304 commit 7dbc394
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 0 deletions.
58 changes: 58 additions & 0 deletions .github/workflows/operator-e2e-integration-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# .github/workflows/operator-e2e-integration-tests.yml
name: Operator e2e tests

on:
push:
branches:
- main
pull_request:
types:
- opened
- synchronize
- labeled

jobs:
operator-e2e-tests:
if:
((github.event.action == 'labeled' && (github.event.label.name == 'approved' || github.event.label.name == 'lgtm' || github.event.label.name == 'ok-to-test')) ||
(github.event.action != 'labeled' && (contains(github.event.pull_request.labels.*.name, 'ok-to-test') || contains(github.event.pull_request.labels.*.name, 'approved') || contains(github.event.pull_request.labels.*.name, 'lgtm')))) &&
github.repository == 'feast-dev/feast'
runs-on: ubuntu-latest

services:
kind:
# Specify the Kubernetes version
image: kindest/node:v1.30.6

env:
KIND_CLUSTER: "operator-e2e-cluster"

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: '1.21.0'

- name: Create KIND cluster
run: |
kind create cluster --name $KIND_CLUSTER --wait 5m
- name: Set up kubernetes context
run: |
kubectl config use-context kind-$KIND_CLUSTER
echo "kind context is switched to cluster kind-$KIND_CLUSTER"
- name: Run E2E tests
run: |
# Run the e2e tests
cd infra/feast-operator/
make test-e2e
- name: Clean up
if: always()
run: |
# Delete the KIND cluster after tests
kind delete cluster --name kind-$KIND_CLUSTER
1 change: 1 addition & 0 deletions infra/feast-operator/test/utils/utils.go
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ func LoadImageToKindClusterWithName(name string) error {
if v, ok := os.LookupEnv("KIND_CLUSTER"); ok {
cluster = v
}
fmt.Println("cluster used in the test is -", cluster)
kindOptions := []string{"load", "docker-image", name, "--name", cluster}
cmd := exec.Command("kind", kindOptions...)
_, err := Run(cmd)
Expand Down

0 comments on commit 7dbc394

Please sign in to comment.