-
Notifications
You must be signed in to change notification settings - Fork 807
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
Refactor the Makefile and hack/ scripts #1856
Refactor the Makefile and hack/ scripts #1856
Conversation
99add14
to
0f400e2
Compare
Code Coverage DiffThis PR does not change the code coverage |
9caebab
to
c05edc2
Compare
Still working through this PR, but I found this visualization helpful Generated with vak/makefile2dot: Visualize your Makefile using GraphViz dot utility |
On a high-level, these are great primary and secondary goals, and from a quick-look, the makefile (and file changes at large) are cleaner and more discoverable. I especially appreciate the README as well as the separated commands (e.g Can we rebase this PR to separate linting, code extraction, filename changes, and variable name changes into separate commits from the main changes to business logic? Perhaps commits in this order:
Perhaps by running Let me know if parallel Also:
Means that you tested each makefile target locally and on CI, correct? |
Is there a significant advantage to doing the large amount work to split this into separate commits? They will ultimately need to be squashed for merge (as all of the commits you listed will be in a broken, partial state) and doing so greatly increases the effort required to update the PR for review comments.
All the targets were tested locally, and CI runs the targets it already does ( |
c05edc2
to
dc41d9e
Compare
Hitting a quota limit here:
cc: @dims |
@torredil cleaned up a few, please try again? |
/retest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great job on this!! Super beneficial to onboarding contributors to the project, as well as maintaining maintainer sanity. Ran a few of the commands, will make sure to run through all of them when I find more time. Will start using this makefile for daily driver development and see what else I find.
f7f69ff
to
5fa99a9
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM once rebased.
See the description of PR 1856 for more information about this change Signed-off-by: Connor Catlett <[email protected]>
5fa99a9
to
6e0516f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
/approve
/hold
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: torredil The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/remove-hold |
/retest |
Is this a bug fix or adding new feature?
"New Feature"/Refactoring
What is this PR about? / Why do we need it?
This PR contains a significant refactor of the Makefile and e2e testing scripts. Its goals are:
run.sh
to enable separate cluster creation, test running, and cluster deletion. Today, running E2E tests locally requires waiting on the creation and termination of a cluster before and after the run, which takes significant time. Developers should be able to run E2E tests locally against a pre-existing cluster, as well as easily create and delete clusters for testing that follow the standard E2E setup.Makefile
targets and how to use them. New contributors should not need to go digging in theMakefile
to discover how to perform simple tasks such as building the driver or running e2e tests.hack/
directory as much as possible to remove unneeded complexity.eksctl.sh
,kops.sh
, andmetrics.sh
are largely or entirely unmodified.What testing is done?
Significant local testing as well as CI, see the new
docs/makefile.md
for the available makefile targets to test against locally