Documentation
¶
Overview ¶
Package organization is responsible for OTF organizations
Index ¶
Constants ¶
View Source
const ( DefaultSessionTimeout = 20160 DefaultSessionExpiration = 20160 )
Variables ¶
This section is empty.
Functions ¶
func NewService ¶
func NewService(opts Options) *service
Types ¶
type Authorizer ¶
Authorizer authorizes access to an organization
type Client ¶
type Client struct {
internal.JSONAPIClient
}
func (*Client) CreateOrganization ¶ added in v0.1.0
func (c *Client) CreateOrganization(ctx context.Context, options OrganizationCreateOptions) (*Organization, error)
CreateOrganization creates a new organization with the given options.
type Entitlements ¶
type Entitlements struct {
ID string
Agents bool
AuditLogging bool
CostEstimation bool
Operations bool
PrivateModuleRegistry bool
SSO bool
Sentinel bool
StateStorage bool
Teams bool
VCSIntegrations bool
}
OTF is free and therefore the user is entitled to all currently supported services.
type ListOptions ¶ added in v0.0.51
type ListOptions struct {
resource.PageOptions
}
ListOptions represents the options for listing organizations.
type Organization ¶
type Organization struct {
ID string `json:"id"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
Name string `json:"name"`
// TFE fields that OTF does not support but persists merely to pass the
// go-tfe integration tests
Email *string
CollaboratorAuthPolicy *string
SessionRemember *int
SessionTimeout *int
AllowForceDeleteWorkspaces bool
}
Organization is an OTF organization, comprising workspaces, users, etc.
func NewOrganization ¶ added in v0.1.0
func NewOrganization(opts OrganizationCreateOptions) (*Organization, error)
func NewTestOrganization ¶
func NewTestOrganization(t *testing.T) *Organization
func (*Organization) String ¶
func (org *Organization) String() string
func (*Organization) Update ¶
func (org *Organization) Update(opts OrganizationUpdateOptions) error
type OrganizationCreateOptions ¶ added in v0.1.0
type OrganizationCreateOptions struct {
Name *string `schema:"name,required"`
// TFE fields that OTF does not support but persists merely to pass the
// go-tfe integration tests
Email *string
CollaboratorAuthPolicy *string
SessionRemember *int
SessionTimeout *int
AllowForceDeleteWorkspaces *bool
}
OrganizationCreateOptions represents the options for creating an organization. See dto.OrganizationCreateOptions for more details.
func (*OrganizationCreateOptions) Validate ¶ added in v0.1.0
func (opts *OrganizationCreateOptions) Validate() error
type OrganizationPage ¶
OrganizationPage contains data shared by all organization-based pages.
type OrganizationService ¶
type OrganizationService = Service
type OrganizationUpdateOptions ¶
type OrganizationUpdateOptions struct {
Name *string
SessionRemember *int
SessionTimeout *int
// TFE fields that OTF does not support but persists merely to pass the
// go-tfe integration tests
Email *string
CollaboratorAuthPolicy *string
AllowForceDeleteWorkspaces *bool
}
UpdateOptions represents the options for updating an organization.
type Service ¶
type Service interface {
CreateOrganization(ctx context.Context, opts OrganizationCreateOptions) (*Organization, error)
UpdateOrganization(ctx context.Context, name string, opts OrganizationUpdateOptions) (*Organization, error)
GetOrganization(ctx context.Context, name string) (*Organization, error)
ListOrganizations(ctx context.Context, opts ListOptions) (*resource.Page[*Organization], error)
DeleteOrganization(ctx context.Context, name string) error
GetEntitlements(ctx context.Context, organization string) (Entitlements, error)
AfterCreateHook(l hooks.Listener)
BeforeDeleteHook(l hooks.Listener)
}
Click to show internal directories.
Click to hide internal directories.