Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Dashboard ¶ added in v2.116.0
type Dashboard struct {
Items []*DashboardItem `json:"Items"`
Projects []*DashboardProject `json:"Projects"`
ProjectGroups []*DashboardProjectGroup `json:"ProjectGroups"`
Environments []*DashboardEnvironment `json:"Environments"`
Tenants []*DashboardTenant `json:"Tenants"`
// ProjectLimit is set when the server caps how many projects the dashboard
// reports on, and is nil when no cap applies. Callers showing a full list
// should say so rather than presenting capped results as complete.
ProjectLimit *int `json:"ProjectLimit"`
// IsFiltered reports whether the server narrowed the response, either from
// the query or from the caller's permissions.
IsFiltered bool `json:"IsFiltered"`
resources.Resource
}
Dashboard represents the deployment overview returned by the dashboard and dynamic dashboard endpoints: the deployments themselves in Items, plus the reference data needed to resolve the IDs those items carry.
type DashboardConfigurationService ¶
func NewDashboardConfigurationService ¶
func NewDashboardConfigurationService(sling *sling.Sling, uriTemplate string) *DashboardConfigurationService
type DashboardDynamicQuery ¶
type DashboardDynamicQuery struct {
// Environments narrows the dashboard to these environments. The server
// matches on ID only: an environment name matches nothing and yields an
// empty dashboard rather than an error.
Environments []string `uri:"environments,omitempty" url:"environments,omitempty"`
IncludePrevious bool `uri:"includePrevious,omitempty" url:"includePrevious,omitempty"`
// Projects narrows the dashboard to these projects. As with Environments,
// the server matches on ID only.
Projects []string `uri:"projects,omitempty" url:"projects,omitempty"`
}
type DashboardEnvironment ¶ added in v2.116.0
DashboardEnvironment is the subset of an environment the dashboard returns to accompany its items.
type DashboardItem ¶
type DashboardItem struct {
ChannelID string `json:"ChannelId,omitempty"`
CompletedTime *time.Time `json:"CompletedTime,omitempty"`
Created *time.Time `json:"Created,omitempty"`
DeploymentID string `json:"DeploymentId,omitempty"`
Duration string `json:"Duration,omitempty"`
EnvironmentID string `json:"EnvironmentId,omitempty"`
ErrorMessage string `json:"ErrorMessage,omitempty"`
HasPendingInterruptions bool `json:"HasPendingInterruptions"`
HasPendingPreconditions bool `json:"HasPendingPreconditions"`
HasWarningsOrErrors bool `json:"HasWarningsOrErrors"`
IsCompleted bool `json:"IsCompleted"`
IsCurrent bool `json:"IsCurrent"`
IsPrevious bool `json:"IsPrevious"`
PendingInterruptionTypes []interruptions.InterruptionType `json:"PendingInterruptionTypes,omitempty"`
// PendingPreconditionTypes is an open set of strings server side rather than
// a fixed enum, so it is not typed.
PendingPreconditionTypes []string `json:"PendingPreconditionTypes,omitempty"`
ProjectID string `json:"ProjectId,omitempty"`
QueueTime *time.Time `json:"QueueTime,omitempty"`
ReleaseID string `json:"ReleaseId,omitempty"`
ReleaseVersion string `json:"ReleaseVersion,omitempty"`
StartTime *time.Time `json:"StartTime,omitempty"`
// Enum: [Canceled Cancelling Executing Failed Queued Success TimedOut]
State string `json:"State,omitempty"`
TaskID string `json:"TaskId,omitempty"`
TenantID string `json:"TenantId,omitempty"`
// Resource carries the item's own Id and Links, which the dashboard returns
// for each item and which callers need to reach the deployment, release and
// task without reassembling paths from the IDs above.
resources.Resource
}
type DashboardProject ¶ added in v2.116.0
type DashboardProject struct {
Name string `json:"Name,omitempty"`
Slug string `json:"Slug,omitempty"`
ProjectGroupID string `json:"ProjectGroupId,omitempty"`
EnvironmentIDs []string `json:"EnvironmentIds,omitempty"`
TenantedDeploymentMode string `json:"TenantedDeploymentMode,omitempty"`
CanPerformUntenantedDeployment bool `json:"CanPerformUntenantedDeployment"`
IsDisabled bool `json:"IsDisabled"`
resources.Resource
}
DashboardProject is the subset of a project the dashboard returns to accompany its items.
type DashboardProjectGroup ¶ added in v2.116.0
type DashboardProjectGroup struct {
Name string `json:"Name,omitempty"`
EnvironmentIDs []string `json:"EnvironmentIds,omitempty"`
resources.Resource
}
DashboardProjectGroup is the subset of a project group the dashboard returns to accompany its items.
type DashboardQuery ¶
type DashboardQuery struct {
IncludeLatest bool `uri:"highestLatestVersionPerProjectAndEnvironment,omitempty" url:"highestLatestVersionPerProjectAndEnvironment,omitempty"`
ProjectID string `uri:"projectId,omitempty" url:"projectId,omitempty"`
SelectedTags []string `uri:"selectedTags,omitempty" url:"selectedTags,omitempty"`
SelectedTenants []string `uri:"selectedTenants,omitempty" url:"selectedTenants,omitempty"`
ShowAll bool `uri:"showAll,omitempty" url:"showAll,omitempty"`
ReleaseID string `uri:"releaseId,omitempty" url:"releaseId,omitempty"`
}
type DashboardService ¶
func NewDashboardService ¶
func NewDashboardService(sling *sling.Sling, uriTemplate string, dashboardDynamicPath string) *DashboardService
func (*DashboardService) GetDashboard ¶ added in v2.116.0
func (s *DashboardService) GetDashboard(query DashboardQuery) (*Dashboard, error)
GetDashboard returns the dashboard, optionally narrowed to a project or release and to the given tenants and tenant tags.
Like GetDynamicDashboard, the query filters on IDs rather than names.
func (*DashboardService) GetDynamicDashboard ¶ added in v2.116.0
func (s *DashboardService) GetDynamicDashboard(query DashboardDynamicQuery) (*Dashboard, error)
GetDynamicDashboard returns the release currently deployed to each environment, optionally narrowed to the given projects and environments, and optionally including the deployment preceding the current one.
Passing a zero-valued query returns every project and environment the caller can see, subject to the server's project limit.
The query filters on IDs, not names. The server does not reject a name, it simply matches nothing, so a name-filtered call returns an empty dashboard that is indistinguishable from nothing being deployed.
type DashboardTenant ¶ added in v2.116.0
type DashboardTenant struct {
Name string `json:"Name,omitempty"`
TenantTags []string `json:"TenantTags,omitempty"`
ProjectEnvironments map[string][]string `json:"ProjectEnvironments,omitempty"`
IsDisabled bool `json:"IsDisabled"`
resources.Resource
}
DashboardTenant is the subset of a tenant the dashboard returns to accompany its items.