Documentation ¶
Index ¶
- type CloudAccessPolicy
- type CloudAccessPolicyConditions
- type CloudAccessPolicyLabelPolicy
- type CloudAccessPolicyRealm
- type CloudAccessPolicyToken
- type CreateCloudAccessPolicyInput
- type CreateCloudAccessPolicyTokenInput
- type CreateServiceAccountInput
- type CreateServiceAccountTokenInput
- type Grafana
- func (g *Grafana) CreateCloudAccessPolicy(region string, input CreateCloudAccessPolicyInput) (CloudAccessPolicy, error)
- func (g *Grafana) CreateCloudAccessPolicyToken(region string, input CreateCloudAccessPolicyTokenInput) (CloudAccessPolicyToken, error)
- func (g *Grafana) CreateCustomRole(input RoleInput) (Role, error)
- func (g *Grafana) CreateGrafanaServiceAccountFromCloud(stack string, input CreateServiceAccountInput) (*ServiceAccount, error)
- func (g *Grafana) CreateGrafanaServiceAccountTokenFromCloud(stack string, input CreateServiceAccountTokenInput) (*ServiceAccountToken, error)
- func (g *Grafana) CreateServiceAccount(input CreateServiceAccountInput) (ServiceAccount, error)
- func (g *Grafana) CreateServiceAccountToken(input CreateServiceAccountTokenInput) (ServiceAccountToken, error)
- func (g *Grafana) CreateTemporaryStackGrafanaClient(stackSlug string, tempSaPrefix string, tempKeyDuration time.Duration) (tempClient *Grafana, cleanup func() error, err error)
- func (g *Grafana) DeleteCloudAccessPolicy(region, cloudAccessPolicyID string) error
- func (g *Grafana) DeleteCustomRole(roleUID string) error
- func (g *Grafana) DeleteGrafanaServiceAccountFromCloud(stack string, serviceAccountID int64) error
- func (g *Grafana) DeleteServiceAccount(serviceAccountID int64) error
- func (g *Grafana) GetAllRoles() ([]Role, error)
- func (g *Grafana) SetServiceAccountRoleAssignments(input ServiceAccountRoleAssignmentsInput) error
- func (g *Grafana) StackBySlug(id string) (Stack, error)
- type Permission
- type Role
- type RoleInput
- type ServiceAccount
- type ServiceAccountRoleAssignmentsInput
- type ServiceAccountToken
- type Stack
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CloudAccessPolicy ¶
type CloudAccessPolicy struct { Name string `json:"name"` DisplayName string `json:"displayName"` Scopes []string `json:"scopes"` Realms []CloudAccessPolicyRealm `json:"realms"` // The following fields are not part of the input, but are returned by the API. ID string `json:"id"` OrgID string `json:"orgId"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
type CloudAccessPolicyConditions ¶
type CloudAccessPolicyConditions struct {
AllowedSubnets []string `json:"allowedSubnets,omitempty"`
}
type CloudAccessPolicyLabelPolicy ¶
type CloudAccessPolicyLabelPolicy struct {
Selector string `json:"selector"`
}
type CloudAccessPolicyRealm ¶
type CloudAccessPolicyRealm struct { Type string `json:"type"` Identifier string `json:"identifier"` LabelPolicies []CloudAccessPolicyLabelPolicy `json:"labelPolicies"` }
type CloudAccessPolicyToken ¶
type CloudAccessPolicyToken struct { ID string `json:"id"` AccessPolicyID string `json:"accessPolicyId"` Name string `json:"name"` DisplayName string `json:"displayName"` ExpiresAt *time.Time `json:"expiresAt"` FirstUsedAt time.Time `json:"firstUsedAt"` CreatedAt time.Time `json:"createdAt"` UpdatedAt *time.Time `json:"updatedAt"` Token string `json:"token,omitempty"` // Only returned when creating a token. }
type CreateCloudAccessPolicyInput ¶
type CreateCloudAccessPolicyInput struct { Name string `json:"name"` DisplayName string `json:"displayName"` Scopes []string `json:"scopes"` Realms []CloudAccessPolicyRealm `json:"realms"` Conditions *CloudAccessPolicyConditions `json:"conditions,omitempty"` }
type Grafana ¶
type Grafana struct {
// contains filtered or unexported fields
}
func (*Grafana) CreateCloudAccessPolicy ¶
func (g *Grafana) CreateCloudAccessPolicy(region string, input CreateCloudAccessPolicyInput) (CloudAccessPolicy, error)
func (*Grafana) CreateCloudAccessPolicyToken ¶
func (g *Grafana) CreateCloudAccessPolicyToken(region string, input CreateCloudAccessPolicyTokenInput) (CloudAccessPolicyToken, error)
func (*Grafana) CreateCustomRole ¶
func (*Grafana) CreateGrafanaServiceAccountFromCloud ¶
func (g *Grafana) CreateGrafanaServiceAccountFromCloud(stack string, input CreateServiceAccountInput) (*ServiceAccount, error)
func (*Grafana) CreateGrafanaServiceAccountTokenFromCloud ¶
func (g *Grafana) CreateGrafanaServiceAccountTokenFromCloud(stack string, input CreateServiceAccountTokenInput) (*ServiceAccountToken, error)
func (*Grafana) CreateServiceAccount ¶
func (g *Grafana) CreateServiceAccount(input CreateServiceAccountInput) (ServiceAccount, error)
func (*Grafana) CreateServiceAccountToken ¶
func (g *Grafana) CreateServiceAccountToken(input CreateServiceAccountTokenInput) (ServiceAccountToken, error)
func (*Grafana) CreateTemporaryStackGrafanaClient ¶
func (*Grafana) DeleteCloudAccessPolicy ¶
func (*Grafana) DeleteCustomRole ¶
func (*Grafana) DeleteGrafanaServiceAccountFromCloud ¶
func (*Grafana) DeleteServiceAccount ¶
func (*Grafana) GetAllRoles ¶
func (*Grafana) SetServiceAccountRoleAssignments ¶
func (g *Grafana) SetServiceAccountRoleAssignments(input ServiceAccountRoleAssignmentsInput) error
type Permission ¶
type Role ¶
type Role struct { Version int64 `json:"version"` UID string `json:"uid,omitempty"` Name string `json:"name"` Description string `json:"description"` Global bool `json:"global"` Group string `json:"group"` DisplayName string `json:"displayName"` Hidden bool `json:"hidden"` Permissions []Permission `json:"permissions,omitempty"` }
type ServiceAccount ¶
type ServiceAccount struct { ID int64 `json:"id"` Name string `json:"name"` Login string `json:"login"` OrgID int64 `json:"orgId"` IsDisabled bool `json:"isDisabled"` CreatedAt time.Time `json:"createdAt"` UpdatedAt *time.Time `json:"updatedAt"` AvatarURL string `json:"avatarUrl"` Role string `json:"role"` Teams []string `json:"teams"` }
type ServiceAccountToken ¶
type Stack ¶
type Stack struct { ID int64 `json:"id"` OrgID int64 `json:"orgId"` OrgSlug string `json:"orgSlug"` OrgName string `json:"orgName"` Name string `json:"name"` URL string `json:"url"` Slug string `json:"slug"` Version string `json:"version"` Description string `json:"description"` Status string `json:"status"` Gateway string `json:"gateway"` CreatedAt time.Time `json:"createdAt"` CreatedBy string `json:"createdBy"` UpdatedAt time.Time `json:"updatedAt"` UpdatedBy string `json:"updatedBy"` Trial int `json:"trial"` TrialExpiresAt time.Time `json:"trialExpiresAt"` ClusterID int `json:"clusterId"` ClusterSlug string `json:"clusterSlug"` ClusterName string `json:"clusterName"` Plan string `json:"plan"` PlanName string `json:"planName"` BillingStartDate time.Time `json:"billingStartDate"` BillingEndDate time.Time `json:"billingEndDate"` BillingActiveUsers int `json:"billingActiveUsers"` CurrentActiveUsers int `json:"currentActiveUsers"` CurrentActiveAdminUsers int `json:"currentActiveAdminUsers"` CurrentActiveEditorUsers int `json:"currentActiveEditorUsers"` CurrentActiveViewerUsers int `json:"currentActiveViewerUsers"` DailyUserCnt int `json:"dailyUserCnt"` DailyAdminCnt int `json:"dailyAdminCnt"` DailyEditorCnt int `json:"dailyEditorCnt"` DailyViewerCnt int `json:"dailyViewerCnt"` BillableUserCnt int `json:"billableUserCnt"` DashboardCnt int `json:"dashboardCnt"` DatasourceCnts struct { } `json:"datasourceCnts"` UserQuota int `json:"userQuota"` DashboardQuota int `json:"dashboardQuota"` AlertQuota int `json:"alertQuota"` Ssl bool `json:"ssl"` CustomAuth bool `json:"customAuth"` CustomDomain bool `json:"customDomain"` Support bool `json:"support"` RunningVersion string `json:"runningVersion"` MachineLearning int `json:"machineLearning"` HmInstancePromID int `json:"hmInstancePromId"` HmInstancePromURL string `json:"hmInstancePromUrl"` HmInstancePromName string `json:"hmInstancePromName"` HmInstancePromStatus string `json:"hmInstancePromStatus"` HmInstancePromCurrentUsage float64 `json:"hmInstancePromCurrentUsage"` HmInstancePromCurrentActiveSeries int `json:"hmInstancePromCurrentActiveSeries"` HmInstanceGraphiteID int `json:"hmInstanceGraphiteId"` HmInstanceGraphiteURL string `json:"hmInstanceGraphiteUrl"` HmInstanceGraphiteName string `json:"hmInstanceGraphiteName"` HmInstanceGraphiteType string `json:"hmInstanceGraphiteType"` HmInstanceGraphiteStatus string `json:"hmInstanceGraphiteStatus"` HmInstanceGraphiteCurrentUsage float64 `json:"hmInstanceGraphiteCurrentUsage"` HlInstanceID int `json:"hlInstanceId"` HlInstanceURL string `json:"hlInstanceUrl"` HlInstanceName string `json:"hlInstanceName"` HlInstanceStatus string `json:"hlInstanceStatus"` HlInstanceCurrentUsage float64 `json:"hlInstanceCurrentUsage"` AmInstanceID int `json:"amInstanceId"` AmInstanceName string `json:"amInstanceName"` AmInstanceURL string `json:"amInstanceUrl"` AmInstanceStatus string `json:"amInstanceStatus"` AmInstanceGeneratorURL string `json:"amInstanceGeneratorUrl"` HtInstanceID int `json:"htInstanceId"` HtInstanceURL string `json:"htInstanceUrl"` HtInstanceName string `json:"htInstanceName"` HtInstanceStatus string `json:"htInstanceStatus"` RegionID int `json:"regionId"` RegionSlug string `json:"regionSlug"` Links []struct { Rel string `json:"rel"` Href string `json:"href"` } `json:"links"` }
Click to show internal directories.
Click to hide internal directories.