code optimization : use make instead of go build on docker build stage

Signed-off-by: wuyingjun <wuyingjun_yewu@cmss.chinamobile.com>
This commit is contained in:
wuyingjun 2022-05-01 14:33:27 +08:00
parent 4c71d60117
commit ca303292ef
10 changed files with 29 additions and 58 deletions

View File

@ -88,6 +88,10 @@ jobs:
steps: steps:
- name: checkout code - name: checkout code
uses: actions/checkout@v2 uses: actions/checkout@v2
with:
# Number of commits to fetch. 0 indicates all history for all branches and tags.
# We need to guess version via git tags.
fetch-depth: 0
- name: install Go - name: install Go
uses: actions/setup-go@v2 uses: actions/setup-go@v2
with: with:

View File

@ -1,14 +1,10 @@
FROM golang:1.17-alpine3.15 AS builder FROM golang:1.17 AS builder
WORKDIR /go/src/github.com/karmada-io/karmada WORKDIR /go/src/github.com/karmada-io/karmada
COPY . /go/src/github.com/karmada-io/karmada COPY . /go/src/github.com/karmada-io/karmada
ARG GO_LDFLAGS RUN make karmada-agent
RUN mv /go/src/github.com/karmada-io/karmada/karmada-agent /bin/
RUN CGO_ENABLED=0 go build \
-ldflags "$GO_LDFLAGS" \
-o /bin/karmada-agent \
cmd/agent/main.go
FROM alpine:3.15.1 FROM alpine:3.15.1

View File

@ -1,14 +1,10 @@
FROM golang:1.17-alpine3.15 AS builder FROM golang:1.17 AS builder
WORKDIR /go/src/github.com/karmada-io/karmada WORKDIR /go/src/github.com/karmada-io/karmada
COPY . /go/src/github.com/karmada-io/karmada COPY . /go/src/github.com/karmada-io/karmada
ARG GO_LDFLAGS RUN make karmada-aggregated-apiserver
RUN mv /go/src/github.com/karmada-io/karmada/karmada-aggregated-apiserver /bin/
RUN CGO_ENABLED=0 go build \
-ldflags "${GO_LDFLAGS}" \
-o /bin/karmada-aggregated-apiserver \
cmd/aggregated-apiserver/main.go
FROM alpine:3.15.1 FROM alpine:3.15.1

View File

@ -1,14 +1,10 @@
FROM golang:1.17-alpine3.15 AS builder FROM golang:1.17 AS builder
WORKDIR /go/src/github.com/karmada-io/karmada WORKDIR /go/src/github.com/karmada-io/karmada
COPY . /go/src/github.com/karmada-io/karmada COPY . /go/src/github.com/karmada-io/karmada
ARG GO_LDFLAGS RUN make karmada-controller-manager
RUN mv /go/src/github.com/karmada-io/karmada/karmada-controller-manager /bin/
RUN CGO_ENABLED=0 go build \
-ldflags "$GO_LDFLAGS" \
-o /bin/karmada-controller-manager \
cmd/controller-manager/controller-manager.go
FROM alpine:3.15.1 FROM alpine:3.15.1

View File

@ -1,14 +1,10 @@
FROM golang:1.17-alpine3.15 AS builder FROM golang:1.17 AS builder
WORKDIR /go/src/github.com/karmada-io/karmada WORKDIR /go/src/github.com/karmada-io/karmada
COPY . /go/src/github.com/karmada-io/karmada COPY . /go/src/github.com/karmada-io/karmada
ARG GO_LDFLAGS RUN make karmada-descheduler
RUN mv /go/src/github.com/karmada-io/karmada/karmada-descheduler /bin/
RUN CGO_ENABLED=0 go build \
-ldflags "$GO_LDFLAGS" \
-o /bin/karmada-descheduler \
cmd/descheduler/main.go
FROM alpine:3.15.1 FROM alpine:3.15.1

View File

@ -1,14 +1,10 @@
FROM golang:1.17-alpine3.15 AS builder FROM golang:1.17 AS builder
WORKDIR /go/src/github.com/karmada-io/karmada WORKDIR /go/src/github.com/karmada-io/karmada
COPY . /go/src/github.com/karmada-io/karmada COPY . /go/src/github.com/karmada-io/karmada
ARG GO_LDFLAGS RUN make karmada-interpreter-webhook-example
RUN mv /go/src/github.com/karmada-io/karmada/karmada-interpreter-webhook-example /bin/
RUN CGO_ENABLED=0 go build \
-ldflags "$GO_LDFLAGS" \
-o /bin/karmada-interpreter-webhook-example \
examples/customresourceinterpreter/webhook/main.go
FROM alpine:3.15.1 FROM alpine:3.15.1

View File

@ -1,14 +1,10 @@
FROM golang:1.17-alpine3.15 AS builder FROM golang:1.17 AS builder
WORKDIR /go/src/github.com/karmada-io/karmada WORKDIR /go/src/github.com/karmada-io/karmada
COPY . /go/src/github.com/karmada-io/karmada COPY . /go/src/github.com/karmada-io/karmada
ARG GO_LDFLAGS RUN make karmada-scheduler-estimator
RUN mv /go/src/github.com/karmada-io/karmada/karmada-scheduler-estimator /bin/
RUN CGO_ENABLED=0 go build \
-ldflags "$GO_LDFLAGS" \
-o /bin/karmada-scheduler-estimator \
cmd/scheduler-estimator/main.go
FROM alpine:3.15.1 FROM alpine:3.15.1

View File

@ -1,14 +1,10 @@
FROM golang:1.17-alpine3.15 AS builder FROM golang:1.17 AS builder
WORKDIR /go/src/github.com/karmada-io/karmada WORKDIR /go/src/github.com/karmada-io/karmada
COPY . /go/src/github.com/karmada-io/karmada COPY . /go/src/github.com/karmada-io/karmada
ARG GO_LDFLAGS RUN make karmada-scheduler
RUN mv /go/src/github.com/karmada-io/karmada/karmada-scheduler /bin/
RUN CGO_ENABLED=0 go build \
-ldflags "$GO_LDFLAGS" \
-o /bin/karmada-scheduler \
cmd/scheduler/main.go
FROM alpine:3.15.1 FROM alpine:3.15.1

View File

@ -1,14 +1,10 @@
FROM golang:1.17-alpine3.15 AS builder FROM golang:1.17 AS builder
WORKDIR /go/src/github.com/karmada-io/karmada WORKDIR /go/src/github.com/karmada-io/karmada
COPY . /go/src/github.com/karmada-io/karmada COPY . /go/src/github.com/karmada-io/karmada
ARG GO_LDFLAGS RUN make karmada-webhook
RUN mv /go/src/github.com/karmada-io/karmada/karmada-webhook /bin/
RUN CGO_ENABLED=0 go build \
-ldflags "$GO_LDFLAGS" \
-o /bin/karmada-webhook \
cmd/webhook/main.go
FROM alpine:3.15.1 FROM alpine:3.15.1

View File

@ -11,11 +11,10 @@ source "${REPO_ROOT}/hack/util.sh"
REGISTRY=${REGISTRY:-"swr.ap-southeast-1.myhuaweicloud.com/karmada"} REGISTRY=${REGISTRY:-"swr.ap-southeast-1.myhuaweicloud.com/karmada"}
VERSION=${VERSION:="unknown"} VERSION=${VERSION:="unknown"}
GO_LDFLAGS=$(util::get_GO_LDFLAGS)
function build_images() { function build_images() {
local target="$1" local target="$1"
docker build --build-arg GO_LDFLAGS="${GO_LDFLAGS}" -t ${REGISTRY}/${target}:${VERSION} -f ${REPO_ROOT}/cluster/images/${target}/Dockerfile ${REPO_ROOT} docker build -t ${REGISTRY}/${target}:${VERSION} -f ${REPO_ROOT}/cluster/images/${target}/Dockerfile ${REPO_ROOT}
} }
build_images $@ build_images $@