@@ -38,6 +38,32 @@ import (
3838 "knative.dev/func/pkg/k8s"
3939)
4040
41+ func copyDir (src , dst string ) error {
42+ return filepath .Walk (src , func (path string , info os.FileInfo , err error ) error {
43+ if err != nil {
44+ return err
45+ }
46+
47+ rel , err := filepath .Rel (src , path )
48+ if err != nil {
49+ return err
50+ }
51+
52+ target := filepath .Join (dst , rel )
53+
54+ if info .IsDir () {
55+ return os .MkdirAll (target , info .Mode ())
56+ }
57+
58+ data , err := os .ReadFile (path )
59+ if err != nil {
60+ return err
61+ }
62+
63+ return os .WriteFile (target , data , info .Mode ())
64+ })
65+ }
66+
4167func TestInt_PrivateGitRepository (t * testing.T ) {
4268 if runtime .GOOS != "linux" {
4369 t .Skip ("Skipping TestPrivateGitRepository on non-Linux systems due to cluster networking limitations" )
@@ -90,7 +116,17 @@ password=nbusr123
90116 t .Fatal (err )
91117 }
92118
93- f , err := fn .NewFunction (filepath .Join ("testdata" , "go-fn-with-private-deps" ))
119+ tmpDir := t .TempDir ()
120+
121+ src := filepath .Join ("testdata" , "go-fn-with-private-deps" )
122+ dst := filepath .Join (tmpDir , "go-fn-with-private-deps" )
123+
124+ err = copyDir (src , dst )
125+ if err != nil {
126+ t .Fatal (err )
127+ }
128+
129+ f , err := fn .NewFunction (dst )
94130 if err != nil {
95131 t .Fatal (err )
96132 }
0 commit comments