Skip to content

Commit 1cf1ec4

Browse files
authored
Merge pull request #619 from devigned/go-install
chore: install via ephemeral go module rather than tools module
2 parents 4ee9c11 + 6c7c5c6 commit 1cf1ec4

File tree

6 files changed

+67
-1004
lines changed

6 files changed

+67
-1004
lines changed

Makefile

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,11 @@ export GO111MODULE=on
3333
# Directories.
3434
ROOT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))
3535
TOOLS_DIR := hack/tools
36-
TOOLS_BIN_DIR := $(TOOLS_DIR)/bin
36+
TOOLS_BIN_DIR := $(abspath $(TOOLS_DIR)/bin)
3737
TEMPLATES_DIR := $(ROOT_DIR)/templates
38-
BIN_DIR := bin
39-
RELEASE_NOTES_BIN := bin/release-notes
38+
BIN_DIR := $(abspath $(ROOT_DIR)/bin)
4039
EXP_DIR := exp
40+
GO_INSTALL = ./scripts/go_install.sh
4141

4242
# Binaries.
4343
CLUSTERCTL := $(BIN_DIR)/clusterctl
@@ -48,9 +48,9 @@ ETCD=$(TOOLS_BIN_DIR)/etcd
4848
GOLANGCI_LINT := $(TOOLS_BIN_DIR)/golangci-lint
4949
KUBE_APISERVER=$(TOOLS_BIN_DIR)/kube-apiserver
5050
KUBECTL=$(TOOLS_BIN_DIR)/kubectl
51-
KUSTOMIZE := $(abspath $(TOOLS_BIN_DIR)/kustomize)
51+
KUSTOMIZE := $(TOOLS_BIN_DIR)/kustomize
5252
MOCKGEN := $(TOOLS_BIN_DIR)/mockgen
53-
RELEASE_NOTES := $(TOOLS_DIR)/$(RELEASE_NOTES_BIN)
53+
RELEASE_NOTES := $(TOOLS_BIN_DIR)/release-notes
5454
EXP_DIR := exp
5555

5656
# Define Docker related variables. Releases should modify and double check these vars.
@@ -86,9 +86,9 @@ help: ## Display this help
8686
## Testing
8787
## --------------------------------------
8888

89-
test: export TEST_ASSET_KUBECTL = $(ROOT_DIR)/$(KUBECTL)
90-
test: export TEST_ASSET_KUBE_APISERVER = $(ROOT_DIR)/$(KUBE_APISERVER)
91-
test: export TEST_ASSET_ETCD = $(ROOT_DIR)/$(ETCD)
89+
test: export TEST_ASSET_KUBECTL = $(KUBECTL)
90+
test: export TEST_ASSET_KUBE_APISERVER = $(KUBE_APISERVER)
91+
test: export TEST_ASSET_ETCD = $(ETCD)
9292

9393
.PHONY: test
9494
test: $(KUBECTL) $(KUBE_APISERVER) $(ETCD) generate lint ## Run tests
@@ -123,29 +123,30 @@ manager: ## Build manager binary.
123123
## Tooling Binaries
124124
## --------------------------------------
125125

126-
$(CLUSTERCTL): go.mod ## Build clusterctl binary.
127-
go build -o $(BIN_DIR)/clusterctl sigs.k8s.io/cluster-api/cmd/clusterctl
126+
$(CLUSTERCTL): ## Build clusterctl binary.
127+
GOBIN=$(BIN_DIR) $(GO_INSTALL) sigs.k8s.io/cluster-api/cmd/clusterctl@v0.3.5
128128

129-
$(CONTROLLER_GEN): $(TOOLS_DIR)/go.mod # Build controller-gen from tools folder.
130-
cd $(TOOLS_DIR); go build -tags=tools -o $(BIN_DIR)/controller-gen sigs.k8s.io/controller-tools/cmd/controller-gen
129+
$(CONTROLLER_GEN): ## Build controller-gen from tools folder.
130+
GOBIN=$(TOOLS_BIN_DIR) $(GO_INSTALL) sigs.k8s.io/controller-tools/cmd/controller-gen@v0.2.9
131131

132-
$(CONVERSION_GEN): $(TOOLS_DIR)/go.mod
133-
cd $(TOOLS_DIR); go build -tags=tools -o $(BIN_DIR)/conversion-gen k8s.io/code-generator/cmd/conversion-gen
132+
$(CONVERSION_GEN): ## Build conversion-gen
133+
GOBIN=$(TOOLS_BIN_DIR) $(GO_INSTALL) k8s.io/code-generator/cmd/conversion-gen@v0.18.2
134134

135-
$(ENVSUBST): $(TOOLS_DIR)/go.mod # Build envsubst from tools folder.
136-
cd $(TOOLS_DIR); go build -tags=tools -o $(BIN_DIR)/envsubst github.com/a8m/envsubst/cmd/envsubst
135+
$(ENVSUBST): ## Build envsubst from tools folder.
136+
GOBIN=$(TOOLS_BIN_DIR) $(GO_INSTALL) github.com/a8m/envsubst/cmd/envsubst@v1.1.0
137137

138-
$(GOLANGCI_LINT): $(TOOLS_DIR)/go.mod # Build golangci-lint from tools folder.
139-
cd $(TOOLS_DIR); go build -tags=tools -o $(BIN_DIR)/golangci-lint github.com/golangci/golangci-lint/cmd/golangci-lint
138+
$(GOLANGCI_LINT): ## Build golangci-lint from tools folder.
139+
GOBIN=$(TOOLS_BIN_DIR) $(GO_INSTALL) github.com/golangci/golangci-lint/cmd/golangci-lint@v1.27.0
140140

141-
$(KUSTOMIZE): $(TOOLS_DIR)/go.mod # Build kustomize from tools folder.
142-
cd $(TOOLS_DIR); go build -tags=tools -o $(BIN_DIR)/kustomize sigs.k8s.io/kustomize/kustomize/v3
141+
$(KUSTOMIZE): ## Build kustomize from tools folder.
142+
GOBIN=$(TOOLS_BIN_DIR) $(GO_INSTALL) sigs.k8s.io/kustomize/kustomize/v3@v3.5.4
143143

144-
$(MOCKGEN): $(TOOLS_DIR)/go.mod # Build mockgen from tools folder.
145-
cd $(TOOLS_DIR); go build -tags=tools -o $(BIN_DIR)/mockgen github.com/golang/mock/mockgen
144+
$(MOCKGEN): ## Build mockgen from tools folder.
145+
GOBIN=$(TOOLS_BIN_DIR) $(GO_INSTALL) github.com/golang/mock/mockgen@v1.4.3
146146

147-
$(RELEASE_NOTES) : $(TOOLS_DIR)/go.mod
148-
cd $(TOOLS_DIR) && go build -tags tools -o $(BIN_DIR)/release-notes sigs.k8s.io/cluster-api/hack/tools/release
147+
$(RELEASE_NOTES): ## Build release notes
148+
GOBIN=$(TOOLS_BIN_DIR) $(GO_INSTALL) sigs.k8s.io/cluster-api/hack/tools/release
149+
mv $(TOOLS_BIN_DIR)/release $(RELEASE_NOTES)
149150

150151
## --------------------------------------
151152
## Linting

controllers/azuremachine_reconciler.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -346,6 +346,7 @@ func (s *azureMachineService) createVirtualMachine(nicName string) (*infrav1.VM,
346346
func GetControlPlaneMachines(machineList *clusterv1.MachineList) []*clusterv1.Machine {
347347
var cpm []*clusterv1.Machine
348348
for _, m := range machineList.Items {
349+
m := m
349350
if util.IsControlPlaneMachine(&m) {
350351
cpm = append(cpm, m.DeepCopy())
351352
}

hack/tools/go.mod

Lines changed: 0 additions & 26 deletions
This file was deleted.

0 commit comments

Comments
 (0)