app_revision.go 843 B

1234567891011121314151617181920212223242526272829
  1. package gorm
  2. import (
  3. "github.com/porter-dev/porter/internal/models"
  4. "github.com/porter-dev/porter/internal/repository"
  5. "gorm.io/gorm"
  6. )
  7. // AppRevisionRepository uses gorm.DB for querying the database
  8. type AppRevisionRepository struct {
  9. db *gorm.DB
  10. }
  11. // NewAppRevisionRepository returns a AppRevisionRepository which uses
  12. // gorm.DB for querying the database
  13. func NewAppRevisionRepository(db *gorm.DB) repository.AppRevisionRepository {
  14. return &AppRevisionRepository{db}
  15. }
  16. // AppRevisionById finds an app revision by id
  17. func (repo *AppRevisionRepository) AppRevisionById(projectID uint, id string) (*models.AppRevision, error) {
  18. AppRevision := &models.AppRevision{}
  19. if err := repo.db.Where("project_id = ? AND id = ?", projectID, id).Limit(1).Find(&AppRevision).Error; err != nil {
  20. return nil, err
  21. }
  22. return AppRevision, nil
  23. }