MCPcopy
hub / github.com/helm/helm / Get

Method Get

pkg/storage/driver/sql.go:305–343  ·  view source on GitHub ↗

Get returns the release named by key.

(key string)

Source from the content-addressed store, hash-verified

303
304// Get returns the release named by key.
305func (s *SQL) Get(key string) (release.Releaser, error) {
306 var record SQLReleaseWrapper
307
308 qb := s.statementBuilder.
309 Select(sqlReleaseTableBodyColumn).
310 From(sqlReleaseTableName).
311 Where(sq.Eq{sqlReleaseTableKeyColumn: key}).
312 Where(sq.Eq{sqlReleaseTableNamespaceColumn: s.namespace})
313
314 query, args, err := qb.ToSql()
315 if err != nil {
316 s.Logger().Debug("failed to build query", slog.Any("error", err))
317 return nil, err
318 }
319
320 // Get will return an error if the result is empty
321 if err := s.db.Get(&record, query, args...); err != nil {
322 s.Logger().Debug("got SQL error when getting release", slog.String("key", key), slog.Any("error", err))
323 return nil, ErrReleaseNotFound
324 }
325
326 release, err := decodeRelease(record.Body)
327 if err != nil {
328 s.Logger().Debug("failed to decode data", slog.String("key", key), slog.Any("error", err))
329 return nil, err
330 }
331
332 if release.Labels, err = s.getReleaseCustomLabels(key, s.namespace); err != nil {
333 s.Logger().Debug(
334 "failed to get release custom labels",
335 slog.String("namespace", s.namespace),
336 slog.String("key", key),
337 slog.Any("error", err),
338 )
339 return nil, err
340 }
341
342 return release, nil
343}
344
345// List returns the list of all releases such that filter(release) == true
346func (s *SQL) List(filter func(release.Releaser) bool) ([]release.Releaser, error) {

Callers

nothing calls this directly

Calls 5

decodeReleaseFunction · 0.85
LoggerMethod · 0.65
GetMethod · 0.65
StringMethod · 0.45

Tested by

no test coverage detected