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.