Documentation ¶
Overview ¶
Package vcsprovider is responsible for VCS providers
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewService ¶
func NewService(opts Options) *service
Types ¶
type CloudService ¶
type CreateOptions ¶
type Service ¶
type Service interface { CreateVCSProvider(ctx context.Context, opts CreateOptions) (*VCSProvider, error) GetVCSProvider(ctx context.Context, id string) (*VCSProvider, error) ListVCSProviders(ctx context.Context, organization string) ([]*VCSProvider, error) ListAllVCSProviders(ctx context.Context) ([]*VCSProvider, error) DeleteVCSProvider(ctx context.Context, id string) (*VCSProvider, error) // GetVCSClient combines retrieving a vcs provider and construct a cloud // client from that provider. // // TODO: rename vcs provider to cloud client; the central purpose of the vcs // provider is, after all, to construct a cloud client. GetVCSClient(ctx context.Context, providerID string) (cloud.Client, error) BeforeDeleteHook(l hooks.Listener) }
type VCSProvider ¶
type VCSProvider struct { ID string CreatedAt time.Time Name string // TODO: rename to description (?) CloudConfig cloud.Config // cloud config for creating client Token string // credential for creating client Organization string // vcs provider belongs to an organization }
VCSProvider provides authenticated access to a VCS. Equivalent to an OAuthClient in TFE.
func (*VCSProvider) LogValue ¶
func (t *VCSProvider) LogValue() slog.Value
LogValue implements slog.LogValuer.
func (*VCSProvider) String ¶
func (t *VCSProvider) String() string
type VCSProviderService ¶
type VCSProviderService Service
Alias services so they don't conflict when nested together in struct
Click to show internal directories.
Click to hide internal directories.