Support multiple arch: amd64, arm64.
Signed-off-by: yingjinhui <yingjinhui@didiglobal.com>
This commit is contained in:
parent
bb46766f63
commit
c308447c08
|
@ -12,6 +12,9 @@ jobs:
|
|||
if: ${{ github.repository == 'karmada-io/karmada' && github.ref == 'refs/heads/master' }}
|
||||
strategy:
|
||||
matrix:
|
||||
arch:
|
||||
- amd64
|
||||
- arm64
|
||||
target:
|
||||
- karmada-controller-manager
|
||||
- karmada-scheduler
|
||||
|
@ -46,4 +49,8 @@ jobs:
|
|||
- name: build and publish images
|
||||
env:
|
||||
VERSION: latest
|
||||
run: make mp-image-${{ matrix.target }}
|
||||
GOARCH: ${{ matrix.arch }}
|
||||
# When we build binary for multiple platform, `go build` may be skipped as `$(SOURCES)` unchanged.
|
||||
# So we clean the binary at first, and force to run `go build`.
|
||||
# See https://github.com/karmada-io/karmada/pull/1649#issuecomment-1107959879 for more info.
|
||||
run: make clean mp-image-${{ matrix.target }}
|
||||
|
|
|
@ -8,6 +8,9 @@ jobs:
|
|||
name: publish to DockerHub
|
||||
strategy:
|
||||
matrix:
|
||||
arch:
|
||||
- amd64
|
||||
- arm64
|
||||
target:
|
||||
- karmada-controller-manager
|
||||
- karmada-scheduler
|
||||
|
@ -42,4 +45,8 @@ jobs:
|
|||
- name: build and publish images
|
||||
env:
|
||||
VERSION: ${{ github.ref_name }}
|
||||
run: make mp-image-${{ matrix.target }}
|
||||
GOARCH: ${{ matrix.arch }}
|
||||
# When we build binary for multiple platform, `go build` may be skipped as `$(SOURCES)` unchanged.
|
||||
# So we clean the binary at first, and force to run `go build`.
|
||||
# See https://github.com/karmada-io/karmada/pull/1649#issuecomment-1107959879 for more info.
|
||||
run: make clean mp-image-${{ matrix.target }}
|
||||
|
|
20
Makefile
20
Makefile
|
@ -39,61 +39,61 @@ endif
|
|||
all: karmada-aggregated-apiserver karmada-controller-manager karmada-scheduler karmada-descheduler karmadactl kubectl-karmada karmada-webhook karmada-agent karmada-scheduler-estimator karmada-interpreter-webhook-example
|
||||
|
||||
karmada-aggregated-apiserver: $(SOURCES)
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) go build \
|
||||
-ldflags $(LDFLAGS) \
|
||||
-o karmada-aggregated-apiserver \
|
||||
cmd/aggregated-apiserver/main.go
|
||||
|
||||
karmada-controller-manager: $(SOURCES)
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) go build \
|
||||
-ldflags $(LDFLAGS) \
|
||||
-o karmada-controller-manager \
|
||||
cmd/controller-manager/controller-manager.go
|
||||
|
||||
karmada-scheduler: $(SOURCES)
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) go build \
|
||||
-ldflags $(LDFLAGS) \
|
||||
-o karmada-scheduler \
|
||||
cmd/scheduler/main.go
|
||||
|
||||
karmada-descheduler: $(SOURCES)
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) go build \
|
||||
-ldflags $(LDFLAGS) \
|
||||
-o karmada-descheduler \
|
||||
cmd/descheduler/main.go
|
||||
|
||||
karmadactl: $(SOURCES)
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) go build \
|
||||
-ldflags $(LDFLAGS) \
|
||||
-o karmadactl \
|
||||
cmd/karmadactl/karmadactl.go
|
||||
|
||||
kubectl-karmada: $(SOURCES)
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) go build \
|
||||
-ldflags $(LDFLAGS) \
|
||||
-o kubectl-karmada \
|
||||
cmd/kubectl-karmada/kubectl-karmada.go
|
||||
|
||||
karmada-webhook: $(SOURCES)
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) go build \
|
||||
-ldflags $(LDFLAGS) \
|
||||
-o karmada-webhook \
|
||||
cmd/webhook/main.go
|
||||
|
||||
karmada-agent: $(SOURCES)
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) go build \
|
||||
-ldflags $(LDFLAGS) \
|
||||
-o karmada-agent \
|
||||
cmd/agent/main.go
|
||||
|
||||
karmada-scheduler-estimator: $(SOURCES)
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) go build \
|
||||
-ldflags $(LDFLAGS) \
|
||||
-o karmada-scheduler-estimator \
|
||||
cmd/scheduler-estimator/main.go
|
||||
|
||||
karmada-interpreter-webhook-example: $(SOURCES)
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
||||
CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) go build \
|
||||
-ldflags $(LDFLAGS) \
|
||||
-o karmada-interpreter-webhook-example \
|
||||
examples/customresourceinterpreter/webhook/main.go
|
||||
|
|
Loading…
Reference in New Issue