Skip to content

chore(Makefile): pin dependencies #2023

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 32 commits into from
May 25, 2025
Merged

chore(Makefile): pin dependencies #2023

merged 32 commits into from
May 25, 2025

Conversation

weisdd
Copy link
Collaborator

@weisdd weisdd commented May 23, 2025

  • Makefile:
    • moved toolchain installation to Toolchain.mk:
      • to declutter Makefile;
      • to make it possible to calculate hash against the file, so we can later introduce proper binary caching;
    • pinned the existing versions except for:
      • setup-envtest:
        • we've been relying on latest version, I pinned it to v0.20.4;
      • crdoc:
        • bumped version from a commit hash to the latest tag to make binary name more predictable;
      • kustomize:
        • bumped version to v5.6.0, so native darwin/arm64 build is used (previously, it would fall back to darwin/amd64);
    • binary names now include version suffix, so the tools will be transparently upgraded should we bump any of the versions;
    • chainsaw, controller-gen, setup-envtest are now downloaded as binaries instead of relying on go install to speed up the installation process;
    • renamed some of the targets to make them appear in help target (changed separator from / -> -);
    • workflows:
      • moved kustomize overlay validation from pr-validation workflow to Makefile, it's now part of test target;
      • moved kustomize steps that set release image and generate GitHub assets from release workflow to Makefile, so kustomize can be pinned there;
      • moved helm template/lint step from pr-validation workflow to Makefile, it's now part of test target;
      • removed calls to install unused binaries for ko and chainsaw from e2e workflow.

There are plenty of things that can be further improved in Makefile, it should just be a good start.

@weisdd weisdd changed the title chore(Makefile): pin dependencies [WIP] chore(Makefile): pin dependencies May 23, 2025
@weisdd weisdd changed the title [WIP] chore(Makefile): pin dependencies chore(Makefile): pin dependencies May 23, 2025
@weisdd weisdd force-pushed the chore/makefile-improvements branch 3 times, most recently from e47d0c2 to fab7f9d Compare May 23, 2025 18:14
@weisdd
Copy link
Collaborator Author

weisdd commented May 23, 2025

(finished with my experiments for now, so the PR should be OK to review)

Copy link
Collaborator

@Baarsgaard Baarsgaard left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really like the approach of a dedicated Toolchain makefile and simpler Action workflows!

@weisdd weisdd requested a review from Baarsgaard May 24, 2025 09:24
Copy link
Collaborator

@Baarsgaard Baarsgaard left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aside from the last comment below I think this looks good as is!

Co-authored-by: Steffen Baarsgaard <steff.bpoulsen@gmail.com>
@weisdd weisdd enabled auto-merge May 25, 2025 08:58
@weisdd weisdd added this pull request to the merge queue May 25, 2025
Merged via the queue into master with commit 129224e May 25, 2025
18 checks passed
@weisdd weisdd deleted the chore/makefile-improvements branch May 25, 2025 09:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants