fix(backend): init repos and hooks

Ayman Bagabas created

Change summary

server/backend/sqlite/sqlite.go | 21 ++++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)

Detailed changes

server/backend/sqlite/sqlite.go 🔗

@@ -52,7 +52,11 @@ func NewSqliteBackend(dataPath string) (*SqliteBackend, error) {
 		return nil, err
 	}
 
-	return d, d.db.Ping()
+	if err := d.db.Ping(); err != nil {
+		return nil, err
+	}
+
+	return d, d.initRepos()
 }
 
 // AllowKeyless returns whether or not keyless access is allowed.
@@ -622,3 +626,18 @@ func (d *SqliteBackend) InitializeHooks(repo string) error {
 
 	return nil
 }
+
+func (d *SqliteBackend) initRepos() error {
+	repos, err := d.Repositories()
+	if err != nil {
+		return err
+	}
+
+	for _, repo := range repos {
+		if err := d.InitializeHooks(repo.Name()); err != nil {
+			return err
+		}
+	}
+
+	return nil
+}