From 57e3ec2beed4d6a5168e16d78abd2c052d093a45 Mon Sep 17 00:00:00 2001 From: Ondrej Kupka Date: Wed, 19 Feb 2025 13:41:54 +0100 Subject: [PATCH 1/2] Move pkg/ext-proc -> cmd/ext-proc --- Dockerfile | 2 +- {pkg => cmd}/ext-proc/health.go | 0 {pkg => cmd}/ext-proc/main.go | 2 +- go.mod | 2 +- {pkg/ext-proc/internal => internal}/runnable/grpc.go | 0 {pkg/ext-proc/internal => internal}/runnable/leader_election.go | 0 pkg/ext-proc/server/runserver.go | 2 +- 7 files changed, 4 insertions(+), 4 deletions(-) rename {pkg => cmd}/ext-proc/health.go (100%) rename {pkg => cmd}/ext-proc/main.go (99%) rename {pkg/ext-proc/internal => internal}/runnable/grpc.go (100%) rename {pkg/ext-proc/internal => internal}/runnable/leader_election.go (100%) diff --git a/Dockerfile b/Dockerfile index e854e133..eb5db9da 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,7 +11,7 @@ ENV GOARCH=amd64 WORKDIR /src COPY . . -WORKDIR /src/pkg/ext-proc +WORKDIR /src/cmd/ext-proc RUN go mod download RUN go build -o /ext-proc diff --git a/pkg/ext-proc/health.go b/cmd/ext-proc/health.go similarity index 100% rename from pkg/ext-proc/health.go rename to cmd/ext-proc/health.go diff --git a/pkg/ext-proc/main.go b/cmd/ext-proc/main.go similarity index 99% rename from pkg/ext-proc/main.go rename to cmd/ext-proc/main.go index d43f2c57..fa4f5b4c 100644 --- a/pkg/ext-proc/main.go +++ b/cmd/ext-proc/main.go @@ -24,10 +24,10 @@ import ( "sigs.k8s.io/controller-runtime/pkg/manager" "sigs.k8s.io/controller-runtime/pkg/metrics/filters" "sigs.k8s.io/gateway-api-inference-extension/api/v1alpha1" + "sigs.k8s.io/gateway-api-inference-extension/internal/runnable" "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/backend" "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/backend/vllm" "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/datastore" - "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/internal/runnable" "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/metrics" runserver "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/server" "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/util/logging" diff --git a/go.mod b/go.mod index 25daf027..ca4a1633 100644 --- a/go.mod +++ b/go.mod @@ -27,7 +27,6 @@ require ( k8s.io/client-go v0.32.2 k8s.io/code-generator v0.32.2 k8s.io/component-base v0.32.2 - k8s.io/klog/v2 v2.130.1 k8s.io/utils v0.0.0-20241210054802-24370beab758 sigs.k8s.io/controller-runtime v0.20.2 sigs.k8s.io/structured-merge-diff/v4 v4.5.0 @@ -137,6 +136,7 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect k8s.io/apiserver v0.32.2 // indirect k8s.io/gengo/v2 v2.0.0-20240911193312-2b36238f13e9 // indirect + k8s.io/klog/v2 v2.130.1 // indirect k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f // indirect sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.0 // indirect sigs.k8s.io/controller-tools v0.14.0 // indirect diff --git a/pkg/ext-proc/internal/runnable/grpc.go b/internal/runnable/grpc.go similarity index 100% rename from pkg/ext-proc/internal/runnable/grpc.go rename to internal/runnable/grpc.go diff --git a/pkg/ext-proc/internal/runnable/leader_election.go b/internal/runnable/leader_election.go similarity index 100% rename from pkg/ext-proc/internal/runnable/leader_election.go rename to internal/runnable/leader_election.go diff --git a/pkg/ext-proc/server/runserver.go b/pkg/ext-proc/server/runserver.go index 7b0209a6..eb6b2cf7 100644 --- a/pkg/ext-proc/server/runserver.go +++ b/pkg/ext-proc/server/runserver.go @@ -19,11 +19,11 @@ import ( "k8s.io/apimachinery/pkg/types" ctrl "sigs.k8s.io/controller-runtime" "sigs.k8s.io/controller-runtime/pkg/manager" + "sigs.k8s.io/gateway-api-inference-extension/internal/runnable" "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/backend" "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/controller" "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/datastore" "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/handlers" - "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/internal/runnable" "sigs.k8s.io/gateway-api-inference-extension/pkg/ext-proc/scheduling" ) From 7d712d044d581ca16ad0e922d8799594395ebf67 Mon Sep 17 00:00:00 2001 From: Ondrej Kupka Date: Wed, 19 Feb 2025 14:02:15 +0100 Subject: [PATCH 2/2] Rework Dockerfile - Cache dependencies - Upload only the files needed --- Dockerfile | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index eb5db9da..5d6f08a5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,10 +9,17 @@ ENV CGO_ENABLED=0 ENV GOOS=linux ENV GOARCH=amd64 +# Dependencies WORKDIR /src -COPY . . -WORKDIR /src/cmd/ext-proc +COPY go.mod go.sum ./ RUN go mod download + +# Sources +COPY cmd ./cmd +COPY pkg ./pkg +COPY internal ./internal +COPY api ./api +WORKDIR /src/cmd/ext-proc RUN go build -o /ext-proc ## Multistage deploy