MCPcopy Create free account
hub / github.com/cloudbase/garm / ListRepositories

Method ListRepositories

database/sql/repositories.go:97–129  ·  view source on GitHub ↗
(_ context.Context, filter params.RepositoryFilter)

Source from the content-addressed store, hash-verified

95}
96
97func (s *sqlDatabase) ListRepositories(_ context.Context, filter params.RepositoryFilter) ([]params.Repository, error) {
98 var repos []Repository
99 q := s.conn.
100 Preload("Credentials").
101 Preload("GiteaCredentials").
102 Preload("Credentials.Endpoint").
103 Preload("GiteaCredentials.Endpoint").
104 Preload("Endpoint")
105 if filter.Owner != "" {
106 q = q.Where("owner = ?", filter.Owner)
107 }
108 if filter.Name != "" {
109 q = q.Where("name = ?", filter.Name)
110 }
111 if filter.Endpoint != "" {
112 q = q.Where("endpoint_name = ?", filter.Endpoint)
113 }
114 q = q.Find(&repos)
115 if q.Error != nil {
116 return []params.Repository{}, fmt.Errorf("error fetching user from database: %w", q.Error)
117 }
118
119 ret := make([]params.Repository, len(repos))
120 for idx, val := range repos {
121 var err error
122 ret[idx], err = s.sqlToCommonRepository(val, true)
123 if err != nil {
124 return nil, fmt.Errorf("error fetching repositories: %w", err)
125 }
126 }
127
128 return ret, nil
129}
130
131func (s *sqlDatabase) DeleteRepository(ctx context.Context, repoID string) (err error) {
132 repo, err := s.getRepoByID(ctx, s.conn, repoID, "Endpoint", "Credentials", "Credentials.Endpoint", "GiteaCredentials", "GiteaCredentials.Endpoint")

Callers

nothing calls this directly

Calls 1

sqlToCommonRepositoryMethod · 0.95

Tested by

no test coverage detected