(_ context.Context, filter params.RepositoryFilter)
| 95 | } |
| 96 | |
| 97 | func (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 | |
| 131 | func (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") |
nothing calls this directly
no test coverage detected