feat: export transactions to support importing kv as a library
Co-authored-by: Chris Goller <goller@gmail.com>pull/17374/head
parent
ea8e6d15d0
commit
71ee028973
|
|
@ -303,6 +303,11 @@ func (s *Service) CreateAuthorization(ctx context.Context, a *influxdb.Authoriza
|
|||
})
|
||||
}
|
||||
|
||||
// CreateAuthorizationTx is used when importing kv as a library
|
||||
func (s *Service) CreateAuthorizationTx(ctx context.Context, tx Tx, a *influxdb.Authorization) error {
|
||||
return s.createAuthorization(ctx, tx, a)
|
||||
}
|
||||
|
||||
func (s *Service) createAuthorization(ctx context.Context, tx Tx, a *influxdb.Authorization) error {
|
||||
if err := a.Valid(); err != nil {
|
||||
return &influxdb.Error{
|
||||
|
|
|
|||
|
|
@ -455,6 +455,11 @@ func (s *Service) CreateBucket(ctx context.Context, b *influxdb.Bucket) error {
|
|||
})
|
||||
}
|
||||
|
||||
// CreateBucketTx is used when importing kv as a library
|
||||
func (s *Service) CreateBucketTx(ctx context.Context, tx Tx, b *influxdb.Bucket) (err error) {
|
||||
return s.createBucket(ctx, tx, b)
|
||||
}
|
||||
|
||||
func (s *Service) createBucket(ctx context.Context, tx Tx, b *influxdb.Bucket) (err error) {
|
||||
if b.OrgID.Valid() {
|
||||
span, ctx := tracing.StartSpanFromContext(ctx)
|
||||
|
|
|
|||
|
|
@ -279,6 +279,11 @@ func (s *Service) addOrgOwner(ctx context.Context, tx Tx, orgID influxdb.ID) err
|
|||
return s.addResourceOwner(ctx, tx, influxdb.OrgsResourceType, orgID)
|
||||
}
|
||||
|
||||
// CreateOrganizationTx is used when importing kv as a library
|
||||
func (s *Service) CreateOrganizationTx(ctx context.Context, tx Tx, o *influxdb.Organization) (err error) {
|
||||
return s.createOrganization(ctx, tx, o)
|
||||
}
|
||||
|
||||
func (s *Service) createOrganization(ctx context.Context, tx Tx, o *influxdb.Organization) (err error) {
|
||||
if err := s.validOrganizationName(ctx, tx, o); err != nil {
|
||||
return err
|
||||
|
|
|
|||
|
|
@ -180,6 +180,11 @@ func (s *Service) CreateUserResourceMapping(ctx context.Context, m *influxdb.Use
|
|||
})
|
||||
}
|
||||
|
||||
// CreateUserResourceMappingTx is used when importing kv as a library
|
||||
func (s *Service) CreateUserResourceMappingTx(ctx context.Context, tx Tx, m *influxdb.UserResourceMapping) error {
|
||||
return s.createUserResourceMapping(ctx, tx, m)
|
||||
}
|
||||
|
||||
func (s *Service) createUserResourceMapping(ctx context.Context, tx Tx, m *influxdb.UserResourceMapping) error {
|
||||
span, ctx := tracing.StartSpanFromContext(ctx)
|
||||
defer span.Finish()
|
||||
|
|
|
|||
|
|
@ -230,6 +230,11 @@ func (s *Service) CreateUser(ctx context.Context, u *influxdb.User) error {
|
|||
})
|
||||
}
|
||||
|
||||
// CreateUserTx is used when importing kv as a library
|
||||
func (s *Service) CreateUserTx(ctx context.Context, tx Tx, u *influxdb.User) error {
|
||||
return s.createUser(ctx, tx, u)
|
||||
}
|
||||
|
||||
func (s *Service) createUser(ctx context.Context, tx Tx, u *influxdb.User) error {
|
||||
if err := s.uniqueUserName(ctx, tx, u); err != nil {
|
||||
return err
|
||||
|
|
|
|||
Loading…
Reference in New Issue