You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

cloudbrain_temp.go 1.9 kB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package models
  2. import (
  3. "time"
  4. "code.gitea.io/gitea/modules/setting"
  5. "code.gitea.io/gitea/modules/timeutil"
  6. )
  7. const (
  8. TempJobId = "TEMP"
  9. TempVersionId = TempJobId
  10. TempJobStatus = TempJobId
  11. )
  12. type CloudbrainTemp struct {
  13. ID int64 `xorm:"pk autoincr"`
  14. JobID string `xorm:"NOT NULL DEFAULT 'TEMP'"`
  15. VersionID string `xorm:"NOT NULL DEFAULT 'TEMP'"`
  16. JobName string `xorm:"NOT NULL "`
  17. Type int `xorm:"NOT NULL "`
  18. JobType string `xorm:"INDEX NOT NULL DEFAULT 'DEBUG'"`
  19. Status string `xorm:"INDEX NOT NULL DEFAULT 'TEMP'"`
  20. QueryTimes int `xorm:"INDEX NOT NULL DEFAULT 0"`
  21. CreatedUnix timeutil.TimeStamp `xorm:"INDEX created"`
  22. UpdatedUnix timeutil.TimeStamp `xorm:"INDEX updated"`
  23. DeletedAt time.Time `xorm:"deleted"`
  24. }
  25. func InsertCloudbrainTemp(temp *CloudbrainTemp) (err error) {
  26. if _, err = x.Insert(temp); err != nil {
  27. return err
  28. }
  29. return nil
  30. }
  31. func getCloudBrainTemp(temp *CloudbrainTemp) (*CloudbrainTemp, error) {
  32. has, err := x.Get(temp)
  33. if err != nil {
  34. return nil, err
  35. } else if !has {
  36. return nil, ErrJobNotExist{}
  37. }
  38. return temp, nil
  39. }
  40. func GetCloudBrainTempJobs() ([]*CloudbrainTemp, error) {
  41. jobs := make([]*CloudbrainTemp, 0, 10)
  42. return jobs, x.In("status", TempJobStatus, string(ModelArtsStopping), string(ModelArtsTrainJobKilling)).
  43. And("query_times < ?", setting.MaxTempQueryTimes).
  44. Limit(100).
  45. Find(&jobs)
  46. }
  47. func DeleteCloudbrainTemp(temp *CloudbrainTemp) error {
  48. return deleteCloudbrainTemp(x, temp)
  49. }
  50. func deleteCloudbrainTemp(e Engine, temp *CloudbrainTemp) error {
  51. _, err := e.ID(temp.ID).Delete(temp)
  52. return err
  53. }
  54. func UpdateCloudbrainTemp(temp *CloudbrainTemp) error {
  55. _, err := x.ID(temp.ID).AllCols().Update(temp)
  56. return err
  57. }