Skip to content

Commit

Permalink
Apply suggestions from code review
Browse files Browse the repository at this point in the history
  • Loading branch information
camilamacedo86 committed Feb 14, 2023
1 parent 40f6ca9 commit 2c4dd2e
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions designs/helper_to_upgrade_projects_by_rescaffolding.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ the [PROJECT config][project-config].

## Example

By running a command like following users would be able to re-scaffold the whole project from the scratch using the
By running a command like following, users would be able to re-scaffold the whole project from the scratch using the
current version of KubeBuilder binary available.

```shell
Expand All @@ -24,15 +24,16 @@ N/A

## Summary

The [PROJECT config][project-config] tracks all configuration and inputs used to create the
project with the CLI. Therefore, a command could be able to read this information and re-run
the same commands with the same data used previously to re-generate the project.
Therefore, a new command can be designed to load user configs from the [PROJECT config][project-config] file, and run the corresponding kubebuilder subcommands to generate the project based on the new kubebuilder version. Thus, it makes it easier for the users to migrate their operator projects to the new scaffolding.

## Motivation

The recommended straightforward steps to upgrade the projects are re-scaffold all from scract using the upper
version/plugin and then, re-add all code source on top again. Therefore, this command would help users in
order to minimize the required effort by automating which shows technically possible of this process.
A common scenario is to upgrade the project based on the newer Kubebuilder. The recommended (straightforward) steps are:

- a) re-scaffold all files from scratch using the upper version/plugins
- b) copy user-defined source code to the new layout

The proposed command will automate the process at maximum, therefore helping operator authors with minimizing the manual effort.

The main motivation of this proposal is to provide a helper for upgrades and
make less painful this process. Examples:
Expand Down

0 comments on commit 2c4dd2e

Please sign in to comment.