5
5
"fmt"
6
6
"github.com/go-git/go-git/v5"
7
7
"io/ioutil"
8
- "os"
8
+ "path"
9
+ "path/filepath"
9
10
"sigs.k8s.io/controller-runtime/pkg/log"
10
11
"sigs.k8s.io/yaml"
11
12
"strings"
@@ -42,11 +43,10 @@ func (r *GitRepository) LoadChannel(ctx context.Context, name string) (*Channel
42
43
log .WithValues ("path" , name ).Error (err , "error reading channel" )
43
44
return nil , err
44
45
}
45
- fmt .Println (string (b ))
46
46
47
47
channel := & Channel {}
48
48
if err := yaml .Unmarshal (b , channel ); err != nil {
49
- return nil , fmt .Errorf ("error parsing channel %s: %v" , name , err )
49
+ return nil , fmt .Errorf ("error parsing channel bytes %s: %v" , string ( b ) , err )
50
50
}
51
51
52
52
return channel , nil
@@ -67,13 +67,11 @@ func (r *GitRepository) LoadManifest(ctx context.Context, packageName string, id
67
67
68
68
var filePath string
69
69
if r .subDir == "" {
70
- filePath = fmt . Sprintf ("packages/%v/%v/manifest.yaml " , packageName , id )
70
+ filePath = path . Join ("packages" , packageName , id , "manifest.yaml" )
71
71
} else {
72
- filePath = fmt . Sprintf ( "%v/ packages/%v/%v/manifest.yaml " , r . subDir , packageName , id )
72
+ filePath = path . Join ( r . subDir , " packages" , packageName , id , "manifest.yaml" )
73
73
}
74
74
75
- fullPath := fmt .Sprintf ("%v/%v" , r .baseURL , filePath )
76
- fmt .Println (fullPath )
77
75
b , err := r .readURL (filePath )
78
76
79
77
if err != nil {
@@ -88,6 +86,7 @@ func (r *GitRepository) LoadManifest(ctx context.Context, packageName string, id
88
86
89
87
func (r * GitRepository ) readURL (url string ) ([]byte , error ) {
90
88
repoDir := "/tmp/repo"
89
+ filePath := filepath .Join (repoDir , url )
91
90
fmt .Println (r .baseURL )
92
91
_ , err := git .PlainClone (repoDir , false , & git.CloneOptions {
93
92
URL : r .baseURL ,
@@ -96,12 +95,7 @@ func (r *GitRepository) readURL(url string) ([]byte, error) {
96
95
return nil , err
97
96
}
98
97
99
- file , err := os .Open (repoDir + "/" + url )
100
- if err != nil {
101
- return nil , err
102
- }
103
-
104
- b , err := ioutil .ReadAll (file )
98
+ b , err := ioutil .ReadFile (filePath )
105
99
if err != nil {
106
100
return nil , err
107
101
}
@@ -118,9 +112,9 @@ func parseGitURL(url string) GitRepository{
118
112
119
113
// checks for subdirectories
120
114
if strings .Contains (url , ".git//" ) {
121
- newURL := strings .Split (url , ".git//" )
122
- url = newURL [0 ] + ".git"
123
- subdir = newURL [1 ]
115
+ urlComponent := strings .SplitN (url , ".git//" , 2 )
116
+ url = urlComponent [0 ] + ".git"
117
+ subdir = urlComponent [1 ]
124
118
}
125
119
126
120
return GitRepository {
0 commit comments