diff --git a/Makefile b/Makefile index cbd58775a5308c644778a0b3c217448d7b70b05d..0a27ad738954590c14fa0d9c3785e88a80921998 100644 --- a/Makefile +++ b/Makefile @@ -9,7 +9,7 @@ GOBIN := $(GOSDN_PRG) SCRIPTS_DIR := /scripts MAKEFILE_SUBDIR := ./makefiles -GOCMD=go +GOCMD=CGO_ENABLED=0 go GOBUILD=$(GOCMD) build GOCLEAN=$(GOCMD) clean -cache -fuzzcache -testcache -modcache BUILD_ARTIFACTS_PATH=artifacts diff --git a/applications/venv-manager/venv-manager.Dockerfile b/applications/venv-manager/venv-manager.Dockerfile index 30a844ed29db5ca590cfbdceb6fad6da5a1047c2..33df4b0a7164e51077d8b45bcc3fb5c7f5b60253 100644 --- a/applications/venv-manager/venv-manager.Dockerfile +++ b/applications/venv-manager/venv-manager.Dockerfile @@ -6,18 +6,11 @@ FROM ${GITLAB_PROXY}golang:$GOLANG_VERSION-bookworm AS builder WORKDIR /gosdn -COPY go.* ./ -RUN go mod download - -COPY ./models/generated/openconfig ./models/generated/openconfig -COPY ./api ./api -COPY ./controller ./controller -COPY applications/venv-manager/ applications/venv-manager/ - -RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-w -s" -o venv-manager applications/venv-manager/main.go +COPY . . +RUN make build-venv-manager FROM ${GITLAB_PROXY}ubuntu:22.04 -COPY --from=builder /gosdn/venv-manager /venv-manager +COPY --from=builder /gosdn/artifacts/venv-manager /venv-manager ENTRYPOINT ["/venv-manager"] diff --git a/controller/Dockerfile.debug b/controller/Dockerfile.debug index 605fb09250878a60e106e27b55566b73946cccac..1560b16eae5687b2fd21db263cd398826320fe35 100644 --- a/controller/Dockerfile.debug +++ b/controller/Dockerfile.debug @@ -12,7 +12,7 @@ COPY go.sum . RUN go mod download COPY . . RUN --mount=type=cache,target=/root/.cache/go-build \ -GOOS=linux go build -o gosdn ./cmd/gosdn +GOOS=linux CGO_ENABLED=0 go build -o gosdn ./cmd/gosdn # Get Delve from a GOPATH not from a Go Modules project WORKDIR /go/src/ diff --git a/csbi/Dockerfile.exec b/csbi/Dockerfile.exec index c0b3f6fb313345e1c8ae48edb6629a7d378e4f5d..f750a8792e1edc0becb22b4b83ff458a7fb7560f 100644 --- a/csbi/Dockerfile.exec +++ b/csbi/Dockerfile.exec @@ -11,7 +11,7 @@ RUN go mod download FROM installer as builder COPY . . RUN --mount=type=cache,target=/root/.cache/go-build \ -GOOS=linux go build -o executor ./cmd/executor/executor.go +GOOS=linux CGO_ENABLED=0 go build -o executor ./cmd/executor/executor.go FROM alpine COPY --from=builder /build/executor . diff --git a/csbi/resources/Dockerfile b/csbi/resources/Dockerfile index 169db470c4e15f20d5bb14eae397459544efc640..ace1399e46c02c3c21af4d4a1426e2b83998bba0 100644 --- a/csbi/resources/Dockerfile +++ b/csbi/resources/Dockerfile @@ -11,7 +11,7 @@ COPY go.sum . FROM installer AS builder RUN go mod tidy COPY . . -RUN GOOS=linux go build -o csbi +RUN CGO_ENABLED=0 GOOS=linux go build -o csbi FROM alpine COPY --from=builder /src/csbi/csbi . diff --git a/makefiles/build/Makefile b/makefiles/build/Makefile index cf633e0c85570fa3c75e73f4d3ef172f9ccf91c3..6ffa72f252ad2a8278218a81c842efef1ee99988 100644 --- a/makefiles/build/Makefile +++ b/makefiles/build/Makefile @@ -13,13 +13,13 @@ build-gosdn: pre $(GOBUILD) -trimpath -o $(BUILD_ARTIFACTS_PATH)/gosdn ./controller/cmd/gosdn build-gosdnc: pre - CGO_ENABLED=0 $(GOBUILD) -o $(BUILD_ARTIFACTS_PATH)/gosdnc ./cli/ + $(GOBUILD) -o $(BUILD_ARTIFACTS_PATH)/gosdnc ./cli/ build-orchestrator: pre - CGO_ENABLED=0 $(GOBUILD) -o $(BUILD_ARTIFACTS_PATH)/orchestrator ./csbi/cmd/csbi/ + $(GOBUILD) -o $(BUILD_ARTIFACTS_PATH)/orchestrator ./csbi/cmd/csbi/ build-plugin-registry: pre - CGO_ENABLED=0 $(GOBUILD) -o $(BUILD_ARTIFACTS_PATH)/plugin-registry ./plugin-registry/ + $(GOBUILD) -o $(BUILD_ARTIFACTS_PATH)/plugin-registry ./plugin-registry/ build-venv-manager: pre $(GOBUILD) -o $(BUILD_ARTIFACTS_PATH)/venv-manager ./applications/venv-manager