Skip to content

Commit 6cfe528

Browse files
[GHA] - add new target to catch uncommitted generated files in GHA, make sure to generate-mock target before testing (#193)
* add new target to catch uncommitted generated files in GHA * rename generate targets
1 parent a81e615 commit 6cfe528

File tree

2 files changed

+16
-7
lines changed

2 files changed

+16
-7
lines changed

.github/workflows/build_test_ci.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,9 @@ jobs:
5454
- name: Build
5555
run: make build
5656

57+
- name: Check for generated diff
58+
run: make check-gen-diff
59+
5760
- name: Test
5861
run: make test
5962

Makefile

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -75,13 +75,15 @@ help: ## Display this help.
7575
## --------------------------------------
7676

7777
##@ Generate:
78+
.PHONY: generate
79+
generate: generate-manifests generate-code generate-mock
7880

79-
.PHONY: manifests
80-
manifests: controller-gen ## Generate WebhookConfiguration, ClusterRole and CustomResourceDefinition objects.
81+
.PHONY: generate-manifests
82+
generate-manifests: controller-gen ## Generate WebhookConfiguration, ClusterRole and CustomResourceDefinition objects.
8183
$(CONTROLLER_GEN) rbac:roleName=manager-role crd webhook paths="./..." output:crd:artifacts:config=config/crd/bases
8284

83-
.PHONY: generate
84-
generate: controller-gen ## Generate code containing DeepCopy, DeepCopyInto, and DeepCopyObject method implementations.
85+
.PHONY: generate-code
86+
generate-code: controller-gen ## Generate code containing DeepCopy, DeepCopyInto, and DeepCopyObject method implementations.
8587
$(CONTROLLER_GEN) object:headerFile="hack/boilerplate.go.txt" paths="./..."
8688

8789
.PHONY: generate-mock
@@ -92,6 +94,10 @@ generate-mock: mockgen ## Generate mocks for the Linode API client.
9294
generate-flavors: $(KUSTOMIZE)
9395
./hack/generate-flavors.sh
9496

97+
.PHONY: check-gen-diff
98+
check-gen-diff:
99+
git diff --no-ext-diff --quiet --exit-code
100+
95101
## --------------------------------------
96102
## Development
97103
## --------------------------------------
@@ -133,11 +139,11 @@ docs:
133139
##@ Testing:
134140

135141
.PHONY: test
136-
test: manifests generate fmt vet envtest ## Run tests.
142+
test: generate fmt vet envtest ## Run tests.
137143
KUBEBUILDER_ASSETS="$(shell $(ENVTEST) use $(ENVTEST_K8S_VERSION) --bin-dir $(LOCALBIN) -p path)" go test -race -timeout 60s ./... -coverprofile cover.out
138144

139145
.PHONY: e2etest
140-
e2etest: manifests generate local-deploy chainsaw
146+
e2etest: generate local-deploy chainsaw
141147
$(CHAINSAW) test ./e2e
142148

143149
local-deploy: kind ctlptl tilt kustomize clusterctl
@@ -150,7 +156,7 @@ local-deploy: kind ctlptl tilt kustomize clusterctl
150156
## --------------------------------------
151157

152158
.PHONY: build
153-
build: manifests generate fmt vet ## Build manager binary.
159+
build: generate fmt vet ## Build manager binary.
154160
go build -ldflags="-X github.com/linode/cluster-api-provider-linode/version.version=$(VERSION)" -o bin/manager cmd/main.go
155161

156162
# If you wish to build the manager image targeting other platforms you can use the --platform flag.

0 commit comments

Comments
 (0)