@@ -23,13 +23,12 @@ import (
23
23
"os/exec"
24
24
"strings"
25
25
26
+ "sigs.k8s.io/kubebuilder/v4/pkg/cli/alpha/internal/common"
27
+
26
28
log "github.com/sirupsen/logrus"
27
29
28
- "github.com/spf13/afero"
29
30
"sigs.k8s.io/kubebuilder/v4/pkg/config"
30
31
"sigs.k8s.io/kubebuilder/v4/pkg/config/store"
31
- "sigs.k8s.io/kubebuilder/v4/pkg/config/store/yaml"
32
- "sigs.k8s.io/kubebuilder/v4/pkg/machinery"
33
32
"sigs.k8s.io/kubebuilder/v4/pkg/model/resource"
34
33
"sigs.k8s.io/kubebuilder/v4/pkg/plugin"
35
34
"sigs.k8s.io/kubebuilder/v4/pkg/plugin/util"
@@ -46,9 +45,9 @@ type Generate struct {
46
45
47
46
// Generate handles the migration and scaffolding process.
48
47
func (opts * Generate ) Generate () error {
49
- projectConfig , err := loadProjectConfig (opts .InputDir )
48
+ projectConfig , err := common . LoadProjectConfig (opts .InputDir )
50
49
if err != nil {
51
- return err
50
+ return fmt . Errorf ( "error loading project config: %v" , err )
52
51
}
53
52
54
53
if opts .OutputDir == "" {
@@ -138,7 +137,7 @@ func (opts *Generate) Generate() error {
138
137
// Validate ensures the options are valid and kubebuilder is installed.
139
138
func (opts * Generate ) Validate () error {
140
139
var err error
141
- opts .InputDir , err = getInputPath (opts .InputDir )
140
+ opts .InputDir , err = common . GetInputPath (opts .InputDir )
142
141
if err != nil {
143
142
return fmt .Errorf ("error getting input path %q: %w" , opts .InputDir , err )
144
143
}
@@ -151,15 +150,6 @@ func (opts *Generate) Validate() error {
151
150
return nil
152
151
}
153
152
154
- // Helper function to load the project configuration.
155
- func loadProjectConfig (inputDir string ) (store.Store , error ) {
156
- projectConfig := yaml .New (machinery.Filesystem {FS : afero .NewOsFs ()})
157
- if err := projectConfig .LoadFrom (fmt .Sprintf ("%s/%s" , inputDir , yaml .DefaultPath )); err != nil {
158
- return nil , fmt .Errorf ("failed to load PROJECT file: %w" , err )
159
- }
160
- return projectConfig , nil
161
- }
162
-
163
153
// Helper function to create the output directory.
164
154
func createDirectory (outputDir string ) error {
165
155
if err := os .MkdirAll (outputDir , 0o755 ); err != nil {
@@ -276,22 +266,6 @@ func createAPIWithDeployImage(resourceData v1alpha1.ResourceData) error {
276
266
return nil
277
267
}
278
268
279
- // Helper function to get input path.
280
- func getInputPath (inputPath string ) (string , error ) {
281
- if inputPath == "" {
282
- cwd , err := os .Getwd ()
283
- if err != nil {
284
- return "" , fmt .Errorf ("failed to get working directory: %w" , err )
285
- }
286
- inputPath = cwd
287
- }
288
- projectPath := fmt .Sprintf ("%s/%s" , inputPath , yaml .DefaultPath )
289
- if _ , err := os .Stat (projectPath ); os .IsNotExist (err ) {
290
- return "" , fmt .Errorf ("project path %q does not exist: %w" , projectPath , err )
291
- }
292
- return inputPath , nil
293
- }
294
-
295
269
// Helper function to get Init arguments for Kubebuilder.
296
270
func getInitArgs (s store.Store ) []string {
297
271
var args []string
0 commit comments