dashboard

package
v2.116.0 Latest Latest
Warning

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

Go to latest
Published: Aug 24, 2026 License: Apache-2.0 Imports: 9 Imported by: 0

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

type DashboardConfigurationService struct {
	services.Service
}

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

type DashboardEnvironment struct {
	Name string `json:"Name,omitempty"`

	resources.Resource
}

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

type DashboardService struct {
	services.Service
	// contains filtered or unexported fields
}

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.

Jump to

Keyboard shortcuts

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