mirror of https://github.com/kubernetes/kops.git
working crossbuild
This commit is contained in:
parent
5ea5b50511
commit
ba9f296b0d
37
Makefile
37
Makefile
|
|
@ -48,16 +48,6 @@ ifdef STATIC_BUILD
|
|||
EXTRA_LDFLAGS=-s
|
||||
endif
|
||||
|
||||
# Cross compile commands
|
||||
|
||||
ifdef GOOS
|
||||
CROSSBUILD_GOOS=-e GOOS=${GOOS} -e CGO_ENABLED=0
|
||||
endif
|
||||
|
||||
ifdef GOOS
|
||||
CROSSBUILD_GOARCH=-e GOARCH=${GOARCH} -e CGO_ENABLED=0
|
||||
endif
|
||||
|
||||
kops: kops-gobindata
|
||||
go install ${EXTRA_BUILDFLAGS} -ldflags "-X main.BuildVersion=${VERSION} ${EXTRA_LDFLAGS}" k8s.io/kops/cmd/kops/...
|
||||
|
||||
|
|
@ -91,6 +81,17 @@ test:
|
|||
go test k8s.io/kops/dns-controller/pkg/... -args -v=1 -logtostderr
|
||||
go test k8s.io/kops/cmd/... -args -v=1 -logtostderr
|
||||
|
||||
crossbuild-nodeup:
|
||||
mkdir -p .build/dist/
|
||||
GOOS=darwin GOARCH=amd64 go build -a ${EXTRA_BUILDFLAGS} -o .build/dist/darwin/amd64/nodeup -ldflags "${EXTRA_LDFLAGS} -X main.BuildVersion=${VERSION}" k8s.io/kops/cmd/nodeup
|
||||
GOOS=linux GOARCH=amd64 go build -a ${EXTRA_BUILDFLAGS} -o .build/dist/linux/amd64/nodeup -ldflags "${EXTRA_LDFLAGS} -X main.BuildVersion=${VERSION}" k8s.io/kops/cmd/nodeup
|
||||
#GOOS=windows GOARCH=amd64 go build -o .build/dist/windows/amd64/kops -ldflags "-X main.BuildVersion=${VERSION}" -v k8s.io/kops/cmd/kops/...
|
||||
|
||||
crossbuild-nodeup-in-docker:
|
||||
docker pull golang:${GOVERSION} # Keep golang image up to date
|
||||
docker run --name=nodeup-build-${UNIQUE} -e STATIC_BUILD=yes -e VERSION=${VERSION} -v ${MAKEDIR}:/go/src/k8s.io/kops golang:${GOVERSION} make -f /go/src/k8s.io/kops/Makefile crossbuild-nodeup
|
||||
docker cp nodeup-build-${UNIQUE}:/go/.build .
|
||||
|
||||
crossbuild:
|
||||
mkdir -p .build/dist/
|
||||
GOOS=darwin GOARCH=amd64 go build -a ${EXTRA_BUILDFLAGS} -o .build/dist/darwin/amd64/kops -ldflags "${EXTRA_LDFLAGS} -X main.BuildVersion=${VERSION}" k8s.io/kops/cmd/kops
|
||||
|
|
@ -134,10 +135,10 @@ gcs-publish-ci: gcs-upload
|
|||
gen-cli-docs:
|
||||
@kops genhelpdocs --out docs/cli
|
||||
|
||||
# Assumes running on linux for speed (todo: crossbuild on OSX?)
|
||||
# Will always push a linux-based build up to the server
|
||||
push: nodeup-gocode
|
||||
scp -C ${GOPATH_1ST}/bin/nodeup ${TARGET}:/tmp/
|
||||
|
||||
scp -C .build/dist/linux/amd64/nodeup ${TARGET}:/tmp/
|
||||
|
||||
push-gce-dry: push
|
||||
ssh ${TARGET} sudo SKIP_PACKAGE_UPDATE=1 /tmp/nodeup --conf=metadata://gce/config --dryrun --v=8
|
||||
|
||||
|
|
@ -173,12 +174,10 @@ nodeup: nodeup-dist
|
|||
nodeup-gocode: kops-gobindata
|
||||
go install ${EXTRA_BUILDFLAGS} -ldflags "${EXTRA_LDFLAGS} -X main.BuildVersion=${VERSION}" k8s.io/kops/cmd/nodeup
|
||||
|
||||
nodeup-dist:
|
||||
docker pull golang:${GOVERSION} # Keep golang image up to date
|
||||
docker run --name=nodeup-build-${UNIQUE} ${CROSSBUILD_GOOS} ${CROSSBUILD_GOARCH} -e STATIC_BUILD=yes -e VERSION=${VERSION} -v ${MAKEDIR}:/go/src/k8s.io/kops golang:${GOVERSION} make -f /go/src/k8s.io/kops/Makefile nodeup-gocode
|
||||
mkdir -p .build/dist
|
||||
docker cp nodeup-build-${UNIQUE}:/go/bin/nodeup .build/dist/
|
||||
(sha1sum .build/dist/nodeup | cut -d' ' -f1) > .build/dist/nodeup.sha1
|
||||
nodeup-dist: crossbuild-nodeup-in-docker
|
||||
mkdir -p .build/dist/
|
||||
(sha1sum .build/dist/darwin/amd64/nodeup | cut -d' ' -f1) > .build/dist/darwin/amd64/nodeup.sha1
|
||||
(sha1sum .build/dist/linux/amd64/nodeup | cut -d' ' -f1) > .build/dist/linux/amd64/nodeup.sha1
|
||||
|
||||
dns-controller-gocode:
|
||||
go install k8s.io/kops/dns-controller/cmd/dns-controller
|
||||
|
|
|
|||
Loading…
Reference in New Issue