DodoApp: clone with submodules
Change-Id: I82d53cb91e9629cc7735f92608d9b0ddaef9b913
diff --git a/core/installer/soft/client.go b/core/installer/soft/client.go
index 08103be..1c93666 100644
--- a/core/installer/soft/client.go
+++ b/core/installer/soft/client.go
@@ -205,6 +205,7 @@
},
RemoteName: "origin",
ReferenceName: "refs/heads/master",
+ SingleBranch: true,
Depth: 1,
InsecureSkipTLS: true,
Progress: os.Stdout,
@@ -212,6 +213,22 @@
if err != nil && !errors.Is(err, transport.ErrEmptyRemoteRepository) {
return nil, err
}
+ wt, err := c.Worktree()
+ if err != nil {
+ return nil, err
+ }
+ sb, err := wt.Submodules()
+ if err != nil {
+ return nil, err
+ }
+ if err := sb.Init(); err != nil {
+ return nil, err
+ }
+ if err := sb.Update(&git.SubmoduleUpdateOptions{
+ Depth: 1,
+ }); err != nil {
+ return nil, err
+ }
return &Repository{
Repository: c,
Addr: addr,
diff --git a/core/installer/soft/repoio.go b/core/installer/soft/repoio.go
index 6df9dcd..7df75dc 100644
--- a/core/installer/soft/repoio.go
+++ b/core/installer/soft/repoio.go
@@ -172,7 +172,7 @@
return nil
}
// TODO(gio): check `remote repository is empty`
- fmt.Println(err)
+ fmt.Printf("-- GIT PULL: %s\n", err.Error())
return nil
}