Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 9 additions & 9 deletions klone.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,45 +10,45 @@ targets:
- folder_name: boilerplate
repo_url: https://github.com/cert-manager/makefile-modules.git
repo_ref: main
repo_hash: 478a0b6c250bd589cf0f767f58e81fc9c4dbca23
repo_hash: a46ca5b8cce18b7ca9694e3be837401f70f70482
repo_path: modules/boilerplate
- folder_name: cert-manager
repo_url: https://github.com/cert-manager/makefile-modules.git
repo_ref: main
repo_hash: 478a0b6c250bd589cf0f767f58e81fc9c4dbca23
repo_hash: a46ca5b8cce18b7ca9694e3be837401f70f70482
repo_path: modules/cert-manager
- folder_name: executable
repo_url: https://github.com/cert-manager/makefile-modules.git
repo_ref: main
repo_hash: 478a0b6c250bd589cf0f767f58e81fc9c4dbca23
repo_hash: a46ca5b8cce18b7ca9694e3be837401f70f70482
repo_path: modules/executable
- folder_name: generate-verify
repo_url: https://github.com/cert-manager/makefile-modules.git
repo_ref: main
repo_hash: 478a0b6c250bd589cf0f767f58e81fc9c4dbca23
repo_hash: a46ca5b8cce18b7ca9694e3be837401f70f70482
repo_path: modules/generate-verify
- folder_name: go
repo_url: https://github.com/cert-manager/makefile-modules.git
repo_ref: main
repo_hash: 478a0b6c250bd589cf0f767f58e81fc9c4dbca23
repo_hash: a46ca5b8cce18b7ca9694e3be837401f70f70482
repo_path: modules/go
- folder_name: help
repo_url: https://github.com/cert-manager/makefile-modules.git
repo_ref: main
repo_hash: 478a0b6c250bd589cf0f767f58e81fc9c4dbca23
repo_hash: a46ca5b8cce18b7ca9694e3be837401f70f70482
repo_path: modules/help
- folder_name: klone
repo_url: https://github.com/cert-manager/makefile-modules.git
repo_ref: main
repo_hash: 478a0b6c250bd589cf0f767f58e81fc9c4dbca23
repo_hash: a46ca5b8cce18b7ca9694e3be837401f70f70482
repo_path: modules/klone
- folder_name: repository-base
repo_url: https://github.com/cert-manager/makefile-modules.git
repo_ref: main
repo_hash: 478a0b6c250bd589cf0f767f58e81fc9c4dbca23
repo_hash: a46ca5b8cce18b7ca9694e3be837401f70f70482
repo_path: modules/repository-base
- folder_name: tools
repo_url: https://github.com/cert-manager/makefile-modules.git
repo_ref: main
repo_hash: 478a0b6c250bd589cf0f767f58e81fc9c4dbca23
repo_hash: a46ca5b8cce18b7ca9694e3be837401f70f70482
repo_path: modules/tools
1 change: 1 addition & 0 deletions make/_shared/generate-verify/00_mod.mk
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,6 @@
# limitations under the License.

shared_generate_targets ?=
shared_generate_targets_dirty ?=
shared_verify_targets ?=
shared_verify_targets_dirty ?=
12 changes: 9 additions & 3 deletions make/_shared/generate-verify/02_mod.mk
Original file line number Diff line number Diff line change
Expand Up @@ -16,18 +16,24 @@
## Generate all generate targets.
## @category [shared] Generate/ Verify
generate: $$(shared_generate_targets)
@echo "The following targets cannot be run simultaniously with each other or other generate scripts:"
$(foreach TARGET,$(shared_generate_targets_dirty), $(MAKE) $(TARGET))

verify_script := $(dir $(lastword $(MAKEFILE_LIST)))/util/verify.sh

# Run the supplied make target argument in a temporary workspace and diff the results.
verify-%: FORCE
$(verify_script) $(MAKE) -s $*
+$(verify_script) $(MAKE) $*

verify_generated_targets = $(shared_generate_targets:%=verify-%)
verify_generated_targets_dirty = $(shared_generate_targets_dirty:%=verify-%)

verify_targets = $(sort $(verify_generated_targets) $(shared_verify_targets))
verify_targets_dirty = $(sort $(verify_generated_targets_dirty) $(shared_verify_targets_dirty))

.PHONY: verify
## Verify code and generate targets.
## @category [shared] Generate/ Verify
verify: $$(verify_generated_targets) $$(shared_verify_targets)
verify: $$(verify_targets)
@echo "The following targets create temporary files in the current directory, that is why they have to be run last:"
$(MAKE) noop $(shared_verify_targets_dirty)
$(foreach TARGET,$(verify_targets_dirty), $(MAKE) $(TARGET))
1 change: 1 addition & 0 deletions make/_shared/generate-verify/util/verify.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ cleanup() {
trap "cleanup" EXIT SIGINT

cp -a "${projectdir}/." "${tmp}"
rm -rf "${tmp}/_bin" # clear all cached files
pushd "${tmp}" >/dev/null

"$@"
Expand Down
2 changes: 1 addition & 1 deletion make/_shared/go/01_mod.mk
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ shared_generate_targets += generate-golangci-lint-config
.PHONY: verify-golangci-lint
## Verify all Go modules using golangci-lint
## @category [shared] Generate/ Verify
verify-golangci-lint: | $(NEEDS_GOLANGCI-LINT) $(NEEDS_YQ) $(bin_dir)/scratch
verify-golangci-lint: | $(NEEDS_GO) $(NEEDS_GOLANGCI-LINT) $(NEEDS_YQ) $(bin_dir)/scratch
@find . -name go.mod -not \( -path "./$(bin_dir)/*" -or -path "./make/_shared/*" \) -printf '%h\n' \
| while read d; do \
echo "Running '$(bin_dir)/tools/golangci-lint run --go $(VENDORED_GO_VERSION) -c $(CURDIR)/$(golangci_lint_config)' in directory '$${d}'"; \
Expand Down
Loading