Skip to content

Commit 464d8a3

Browse files
committed
Adds e2e test readme
Signed-off-by: Daneyon Hansen <[email protected]>
1 parent 203ce4b commit 464d8a3

File tree

4 files changed

+45
-4
lines changed

4 files changed

+45
-4
lines changed

Makefile

+2-3
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,8 @@ vet: ## Run go vet against code.
105105
test: manifests generate fmt vet envtest ## Run tests.
106106
KUBEBUILDER_ASSETS="$(shell $(ENVTEST) use $(ENVTEST_K8S_VERSION) --bin-dir $(LOCALBIN) -p path)" go test $$(go list ./... | grep -v /e2e) -coverprofile cover.out
107107

108-
# Utilize Kind or modify the e2e tests to load the image locally, enabling compatibility with other vendors.
109-
.PHONY: test-e2e # Run the e2e tests against a Kind k8s instance that is spun up.
110-
test-e2e:
108+
.PHONY: test-e2e
109+
test-e2e: ## Run end-to-end tests against an existing Kubernetes cluster with at least 3 available GPUs.
111110
go test ./test/e2e/ -v -ginkgo.v
112111

113112
.PHONY: lint

README.md

+4
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ This project is currently in development.
1212

1313
Follow this [README](./pkg/README.md) to get the inference-extension up and running on your cluster!
1414

15+
## End-to-End Tests
16+
17+
Follow this [README](./test/e2e/README.md) to learn more about running the inference-extension end-to-end test suite on your cluster.
18+
1519
## Website
1620

1721
Detailed documentation is available on our website: https://gateway-api-inference-extension.sigs.k8s.io/

pkg/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ This quickstart guide is intended for engineers familiar with k8s and model serv
44

55
### Requirements
66
- Envoy Gateway [v1.2.1](https://gateway.envoyproxy.io/docs/install/install-yaml/#install-with-yaml) or higher
7-
- A cluster that meets the following requirements:
7+
- A cluster with:
88
- Support for Services of type `LoadBalancer`. (This can be validated by ensuring your Envoy Gateway is up and running). For example, with Kind,
99
you can follow [these steps](https://kind.sigs.k8s.io/docs/user/loadbalancer).
1010
- 3 GPUs to run the sample model server. Adjust the number of replicas in `./manifests/vllm/deployment.yaml` as needed.

test/e2e/README.md

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# End-to-End Tests
2+
3+
This document provides instructions on how to run the end-to-end tests.
4+
5+
## Overview
6+
7+
The end-to-end tests are designed to validate end-to-end Gateway API Inference Extension functionality. These tests are executed against a Kubernetes cluster and use the Ginkgo testing framework to ensure the extension behaves as expected.
8+
9+
## Prerequisites
10+
11+
- [Go](https://golang.org/doc/install) installed on your machine.
12+
- [Make](https://www.gnu.org/software/make/manual/make.html) installed to run the end-to-end test target.
13+
- A Hugging Face Hub token with access to the [meta-llama/Llama-2-7b-hf](https://huggingface.co/meta-llama/Llama-2-7b-hf) model.
14+
15+
## Running the End-to-End Tests
16+
17+
Follow these steps to run the end-to-end tests:
18+
19+
1. **Clone the Repository**: Clone the `gateway-api-inference-extension` repository:
20+
21+
```sh
22+
git clone https://github.com/kubernetes-sigs/gateway-api-inference-extension.git && cd gateway-api-inference-extension
23+
```
24+
25+
1. **Export Your Hugging Face Hub Token**: The token is required to run the test model server:
26+
27+
```sh
28+
export HF_TOKEN=<MY_HF_TOKEN>
29+
```
30+
31+
1. **Run the Tests**: Run the `test-e2e` target:
32+
33+
```sh
34+
make test-e2e
35+
```
36+
37+
The test suite prints details for each step. Note that the `vllm-llama2-7b-pool` model server deployment
38+
may take several minutes to report an `Available=True` status due to the time required for bootstraping.

0 commit comments

Comments
 (0)