-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Update files as part of the Scaffold.Execute #1375
Update files as part of the Scaffold.Execute #1375
Conversation
Hi @Adirio. Thanks for your PR. I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
2bc3be0
to
5114a80
Compare
Signed-off-by: Adrian Orive <[email protected]>
Signed-off-by: Adrian Orive <[email protected]>
5114a80
to
86f27f7
Compare
607c49f
to
a4516bf
Compare
Signed-off-by: Adrian Orive <[email protected]>
a4516bf
to
6f191bf
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.
few minor comments inline. gonna give @mengqiy the final signoff
The two first commits in this PR are those PRs. Merging this would be like merging the three. |
const prefix = "+kubebuilder:scaffold:" | ||
|
||
var commentsByExt = map[string]string{ | ||
// TODO(v3): machine-readable comments should not have spaces by Go convention. However, |
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.
Can you create an issue to track everything related to TODO(v3)
?
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.
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
we can address the nits in a followup PR.
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: Adirio, mengqiy 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 |
Description
Update already scaffolded files inside
Scaffold.Execute
following the same flow used for new files (injecting fields, validating, creating a model, piping to plugins and persisting it to disk).Coverage reports 72.1% in
pkg/scaffold/internal/filesystem
(the remaining 27.9% are calls to the filesystem that cannot be further tested) and 93.8% inpkg/scaffold/internal/machinery
, aiming to fulfill #1342.Motivation
File updates (i.e., inserting code fragments to already scaffolded files) was not needed for v1. When v2 came, the feature was needed and it was added outside of the main
Scaffold.Execute
. ProvidingScaffold.Execute
the capability of inserting those code fragments achieves a better work flow.Implementation details
This PR is made of 3 commits. The first two were submitted as separate PR previously:
I suggest reviewing them commit by commit (GitHub offers the possibility of showing only changes in one commit) as it affects more than 3500 LoC.
Regarding to the last commit, the main changes are found in
pkg/scaffold/internal/machinery/scaffold.go
and the interfaces inpkg/model/file/interfaces.go
.This PR is scoped under #1218
Closes #1226
Closes #1227
Closes #1358
Closes #1359