onboarding.go 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package models
  2. import (
  3. "gorm.io/gorm"
  4. "github.com/porter-dev/porter/api/types"
  5. )
  6. type Onboarding struct {
  7. gorm.Model
  8. ProjectID uint
  9. CurrentStep types.StepEnum
  10. ConnectedSource types.ConnectedSourceType
  11. SkipRegistryConnection bool
  12. SkipResourceProvision bool
  13. RegistryConnectionID uint
  14. RegistryConnectionCredentialID uint
  15. RegistryConnectionProvider string
  16. RegistryInfraID uint
  17. RegistryInfraCredentialID uint
  18. RegistryInfraProvider string
  19. ClusterInfraID uint
  20. ClusterInfraCredentialID uint
  21. ClusterInfraProvider string
  22. }
  23. // ToOnboardingType generates an external types.OnboardingData to be shared over REST
  24. func (o *Onboarding) ToOnboardingType() *types.OnboardingData {
  25. return &types.OnboardingData{
  26. CurrentStep: o.CurrentStep,
  27. ConnectedSource: o.ConnectedSource,
  28. SkipRegistryConnection: o.SkipRegistryConnection,
  29. SkipResourceProvision: o.SkipResourceProvision,
  30. RegistryConnectionID: o.RegistryConnectionID,
  31. RegistryConnectionCredentialID: o.RegistryConnectionCredentialID,
  32. RegistryConnectionProvider: o.RegistryConnectionProvider,
  33. RegistryInfraID: o.RegistryInfraID,
  34. RegistryInfraCredentialID: o.RegistryInfraCredentialID,
  35. RegistryInfraProvider: o.RegistryInfraProvider,
  36. ClusterInfraID: o.ClusterInfraID,
  37. ClusterInfraCredentialID: o.ClusterInfraCredentialID,
  38. ClusterInfraProvider: o.ClusterInfraProvider,
  39. }
  40. }