kotsclient

package
v0.22.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 6, 2020 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ArchiveChannel

func ArchiveChannel(appID string, channelID string) error

Types

type AppOptions

type AppOptions struct {
	Name string
}

type ChannelOptions

type ChannelOptions struct {
	Name        string
	Description string
}

type CreateCustomerData added in v0.18.0

type CreateCustomerData struct {
	Customer *Customer `json:"createKotsCustomer"`
}

type CreateInstallerDataWrapper added in v0.21.0

type CreateInstallerDataWrapper struct {
	Installer *types.InstallerSpec `json:"createKotsAppInstaller"`
}

type Customer added in v0.18.0

type Customer struct {
	ID        string         `json:"id"`
	Name      string         `json:"name"`
	Channels  []*KotsChannel `json:"channels"`
	Type      string         `json:"type"`
	ExpiresAt string         `json:"expiresAt"`
}

type CustomerData added in v0.18.0

type CustomerData struct {
	Customers []*Customer `json:"customers"`
}

type CustomerDataWrapper added in v0.18.0

type CustomerDataWrapper struct {
	Customers CustomerData `json:"customers"`
}

type GraphQLClient

type GraphQLClient struct {
	GraphQLClient    *graphql.Client
	KurlDotSHAddress string
}

Client communicates with the Replicated Vendor GraphQL API.

func NewGraphQLClient

func NewGraphQLClient(origin string, apiKey string, kurlDotSHAddress string) *GraphQLClient

func (*GraphQLClient) CreateChannel

func (c *GraphQLClient) CreateChannel(appID string, name string, description string) (*types.Channel, error)

func (*GraphQLClient) CreateCustomer added in v0.18.0

func (c *GraphQLClient) CreateCustomer(name, channel string, expiresIn time.Duration) (*types.Customer, error)

func (*GraphQLClient) CreateInstaller added in v0.21.0

func (c *GraphQLClient) CreateInstaller(appId string, yaml string) (*types.InstallerSpec, error)

func (*GraphQLClient) CreateRelease

func (c *GraphQLClient) CreateRelease(appID string, multiyaml string) (*types.ReleaseInfo, error)

func (*GraphQLClient) CreateVendorInstaller added in v0.21.0

func (c *GraphQLClient) CreateVendorInstaller(appID string, yaml string) (*types.InstallerSpec, error)

func (*GraphQLClient) ExecuteRequest

func (c *GraphQLClient) ExecuteRequest(requestObj graphql.Request, deserializeTarget interface{}) error

func (*GraphQLClient) GetApp

func (c *GraphQLClient) GetApp(appID string) (*types.App, error)

func (*GraphQLClient) GetChannel added in v0.16.0

func (c *GraphQLClient) GetChannel(appID string, channelID string) (*channels.AppChannel, []channels.ChannelRelease, error)

func (*GraphQLClient) GetChannelByName added in v0.18.0

func (c *GraphQLClient) GetChannelByName(appID string, name string, description string, create bool) (*types.Channel, error)

func (*GraphQLClient) LintRelease added in v0.19.0

func (c *GraphQLClient) LintRelease(appID, allKotsYamlsAsJson string) ([]types.LintMessage, error)

func (*GraphQLClient) ListApps

func (c *GraphQLClient) ListApps() ([]types.AppAndChannels, error)

func (*GraphQLClient) ListChannels

func (c *GraphQLClient) ListChannels(appID string) ([]types.Channel, error)

func (*GraphQLClient) ListCustomers added in v0.18.0

func (c *GraphQLClient) ListCustomers(appID string) ([]types.Customer, error)

func (*GraphQLClient) ListInstallers added in v0.21.0

func (c *GraphQLClient) ListInstallers(appID string) ([]types.InstallerSpec, error)

func (*GraphQLClient) ListReleases

func (c *GraphQLClient) ListReleases(appID string) ([]types.ReleaseInfo, error)

func (*GraphQLClient) PromoteInstaller added in v0.21.0

func (c *GraphQLClient) PromoteInstaller(appID string, sequence int64, channelID string, versionLabel string) error

func (*GraphQLClient) PromoteRelease

func (c *GraphQLClient) PromoteRelease(appID string, sequence int64, label string, notes string, channelIDs ...string) error

func (*GraphQLClient) UpdateRelease

func (c *GraphQLClient) UpdateRelease(appID string, sequence int64, multiyaml string) error

type GraphQLResponseCreateChannel added in v0.17.0

type GraphQLResponseCreateChannel struct {
	Data   *KotsCreateChannelData `json:"data,omitempty"`
	Errors []graphql.GQLError     `json:"errors,omitempty"`
}

type GraphQLResponseCreateCustomer added in v0.18.0

type GraphQLResponseCreateCustomer struct {
	Data   *CreateCustomerData `json:"data,omitempty"`
	Errors []graphql.GQLError  `json:"errors,omitempty"`
}

type GraphQLResponseCreateInstaller added in v0.21.0

type GraphQLResponseCreateInstaller struct {
	Data   *CreateInstallerDataWrapper `json:"data,omitempty"`
	Errors []graphql.GQLError          `json:"errors,omitempty"`
}

type GraphQLResponseGetChannel added in v0.16.0

type GraphQLResponseGetChannel struct {
	Data   *KotsGetChannelData `json:"data,omitempty"`
	Errors []graphql.GQLError  `json:"errors,omitempty"`
}

type GraphQLResponseKotsCreateRelease

type GraphQLResponseKotsCreateRelease struct {
	Data   KotsCreateReleaseData `json:"data,omitempty"`
	Errors []graphql.GQLError    `json:"errors,omitempty"`
}

type GraphQLResponseKotsUpdateRelease

type GraphQLResponseKotsUpdateRelease struct {
	Data   KotsUpdateReleaseData `json:"data,omitempty"`
	Errors []graphql.GQLError    `json:"errors,omitempty"`
}

type GraphQLResponseLintRelease added in v0.19.0

type GraphQLResponseLintRelease struct {
	Data   *KOTSReleaseLintData `json:"data,omitempty"`
	Errors []graphql.GQLError   `json:"errors,omitempty"`
}

type GraphQLResponseListApps

type GraphQLResponseListApps struct {
	Data   *KotsData          `json:"data,omitempty"`
	Errors []graphql.GQLError `json:"errors,omitempty"`
}

type GraphQLResponseListChannels

type GraphQLResponseListChannels struct {
	Data   *KotsChannelData   `json:"data,omitempty"`
	Errors []graphql.GQLError `json:"errors,omitempty"`
}

type GraphQLResponseListCustomers added in v0.18.0

type GraphQLResponseListCustomers struct {
	Data   *CustomerDataWrapper `json:"data,omitempty"`
	Errors []graphql.GQLError   `json:"errors,omitempty"`
}

type GraphQLResponseListInstallers added in v0.21.0

type GraphQLResponseListInstallers struct {
	Data   *InstallersDataWrapper `json:"data,omitempty"`
	Errors []graphql.GQLError     `json:"errors,omitempty"`
}

type GraphQLResponseListReleases

type GraphQLResponseListReleases struct {
	Data   *KotsReleasesData  `json:"data,omitempty"`
	Errors []graphql.GQLError `json:"errors,omitempty"`
}

type GraphQLResponseUpdateKotsRelease

type GraphQLResponseUpdateKotsRelease struct {
	Data *KotsReleaseUpdateData `json:"data,omitempty"`
}

type InstallersDataWrapper added in v0.21.0

type InstallersDataWrapper struct {
	Installers []types.InstallerSpec `json:"allKotsAppInstallers"`
}

type KOTSReleaseLintData added in v0.19.0

type KOTSReleaseLintData struct {
	Messages []types.LintMessage `json:"lintKotsSpec"`
}

type KotsApp

type KotsApp struct {
	ID       string                `json:"id"`
	Name     string                `json:"name"`
	Slug     string                `json:"slug"`
	Channels []*KotsAppChannelData `json:"channels"`
}

type KotsAppChannelData

type KotsAppChannelData struct {
	ID              string `json:"id"`
	Name            string `json:"name"`
	Description     string `json:"description"`
	CurrentSequence int64  `json:"currentSequence"`
	CurrentVersion  string `json:"currentVersion"`
}

type KotsAppsData

type KotsAppsData struct {
	KotsApps []*KotsApp `json:"apps"`
}

type KotsChannel

type KotsChannel struct {
	ID              string `json:"id"`
	Name            string `json:"name"`
	Description     string `json:"description"`
	ChannelSequence int64  `json:"channelSequence"`
	ReleaseSequence int64  `json:"releaseSequence"`
	CurrentVersion  string `json:"currentVersion"`
}

type KotsChannelData

type KotsChannelData struct {
	KotsChannels []*KotsChannel `json:"getKotsAppChannels"`
}

type KotsCreateChannelData added in v0.17.0

type KotsCreateChannelData struct {
	KotsChannel *KotsChannel `json:"createKotsChannel"`
}

type KotsCreateReleaseData

type KotsCreateReleaseData struct {
	KotsReleaseData KotsReleaseSequence `json:"createKotsRelease"`
}

type KotsData

type KotsData struct {
	Kots *KotsAppsData `json:"kots"`
}

type KotsGetChannelData added in v0.16.0

type KotsGetChannelData struct {
	KotsChannel *KotsChannel `json:"getKotsChannel"`
}

type KotsRelease

type KotsRelease struct {
	ID           string         `json:"id"`
	Sequence     int64          `json:"sequence"`
	CreatedAt    string         `json:"created"`
	ReleaseNotes string         `json:"releaseNotes"`
	Channels     []*KotsChannel `json:"channels"`
}

type KotsReleaseSequence

type KotsReleaseSequence struct {
	Sequence int64 `json:"sequence"`
}

type KotsReleaseUpdateData

type KotsReleaseUpdateData struct {
	UpdateKotsRelease *UpdateKotsRelease `json:"updateKotsRelease"`
}

type KotsReleasesData

type KotsReleasesData struct {
	KotsReleases []*KotsRelease `json:"allKotsReleases"`
}

type KotsUpdateReleaseData

type KotsUpdateReleaseData struct {
	KotsReleaseData KotsReleaseSequence `json:"updateKotsRelease"`
}

type UpdateKotsRelease

type UpdateKotsRelease struct {
	ID     string `json:"id"`
	Config string `json:"spec,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL