feat(make): simplifies local tooling installation #203
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
To make targets such as
test
orlint
self-contained we can leverage Makefile target resolutions and install tools to local./bin
folder if they are not present. This way we can also ensure consistency as both CI and local dev loop will be using exact same versions.This PR introduces
Makefile.tools.mk
where all project-specific tools are defined and installed on demand. Dependent.PHONY
targets can simply request binary to exist.As a consequence github actions are also simplified as
make
takes care of setting up tooling with right versions instead, reducing the risk of versions drift between the enviroments.Unused composite actions has been removed:
.github/actions/go-test/action.yml
- this is now handled asmake test
.github/actions/push-image/action.yml
was not referred across workflows. The actual push seems to be part of.github/actions/push-image/action.yml