environment

package
v1.23.0-alpha.0 Latest Latest
Warning

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

Go to latest
Published: Dec 1, 2022 License: Apache-2.0 Imports: 35 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	SearchFields           = []string{"environment_name"}
	FilterFields           = []string{"environment_name"}
	PreloadFields          = []string{"Creator", "Cluster", "Project", "Project.Tenant", "Applications", "Users"}
	PreloadSensitiveFields = map[string]string{"Cluster": "id, cluster_name"}
	OrderFields            = []string{"environment_name"}
	ModelName              = "Environment"
	PrimaryKeyName         = "environment_id"
)

Functions

func AfterEnvironmentSave

func AfterEnvironmentSave(ctx context.Context, h base.BaseHandler, tx *gorm.DB, env *models.Environment) error

环境的创建,修改,删除,都会触发hook,将状态同步到对应的集群下

func ValidateEnvironmentNamespace

func ValidateEnvironmentNamespace(ctx context.Context, h base.BaseHandler, tx *gorm.DB, namespace, envname, clustername string) error

ValidateEnvironmentNamespace 校验绑定的namespace是否合法.

Types

type EnvironmentHandler

type EnvironmentHandler struct {
	base.BaseHandler
}

func (*EnvironmentHandler) DeleteEnvironment

func (h *EnvironmentHandler) DeleteEnvironment(c *gin.Context)

DeleteEnvironment 删除 Environment @Tags Environment @Summary 删除 Environment @Description 删除 Environment @Accept json @Produce json @Param environment_id path uint true "environment_id" @Success 204 {object} handlers.ResponseStruct "resp" @Router /v1/environment/{environment_id} [delete] @Security JWT

func (*EnvironmentHandler) DeleteEnvironmentUser

func (h *EnvironmentHandler) DeleteEnvironmentUser(c *gin.Context)

DeleteEnvironmentUser 删除 User 和 Environment 的关系 @Tags Environment @Summary 删除 User 和 Environment 的关系 @Description 删除 User 和 Environment 的关系 @Accept json @Produce json @Param environment_id path uint true "environment_id" @Param user_id path uint true "user_id" @Success 200 {object} handlers.ResponseStruct{Data=models.User} "models.User" @Router /v1/environment/{environment_id}/user/{user_id} [delete] @Security JWT

func (*EnvironmentHandler) EnvironmentObservabilityDetails

func (h *EnvironmentHandler) EnvironmentObservabilityDetails(c *gin.Context)

@Tags EnvironmentObservabilityDetails @Summary 环境可观测性概览 @Description 环境可观测性概览 @Accept json @Produce json @Param environment_id path uint true "environment_id" @Param duration query string false "过去多长时间: 30s,5m,1h,1d,1w, 默认1h" @Success 200 {object} handlers.ResponseStruct{Data=EnvironmentObservabilityRet} "object" @Router /v1/environment/{environment_id}/observability [get] @Security JWT

func (*EnvironmentHandler) EnvironmentSwitch

func (h *EnvironmentHandler) EnvironmentSwitch(c *gin.Context)

@Tags NetworkIsolated @Summary 环境网络隔离开关 @Description 环境网络隔离开关 @Accept json @Produce json @Param environment_id path uint true "environment_id" @Param param body handlers.IsolatedSwitch true "表单" @Success 200 {object} handlers.ResponseStruct{Data=handlers.IsolatedSwitch} "object" @Router /v1/environment/{environment_id}/action/networkisolate [post] @Security JWT

func (*EnvironmentHandler) GetEnvironmentResource

func (h *EnvironmentHandler) GetEnvironmentResource(c *gin.Context)

GetEnvironmentResource 获取环境资源清单 @Tags ResourceList @Summary 获取环境资源清单 @Description 获取环境资源清单 @Accept json @Produce json @Param environment_id path uint true "environment_id" @Param date query string false "date" @Success 200 {object} handlers.ResponseStruct{Data=[]models.EnvironmentResource} "EnvironmentResource" @Router /v1/environment/{environment_id}/resources [get] @Security JWT

func (*EnvironmentHandler) ListEnvironment

func (h *EnvironmentHandler) ListEnvironment(c *gin.Context)

ListEnvironment 列表 Environment @Tags Environment @Summary Environment列表 @Description Environment列表 @Accept json @Produce json @Param EnvironmentName query string false "EnvironmentName" @Param preload query string false "choices Creator,Cluster,Project,Applications,Users" @Param page query int false "page" @Param size query int false "page" @Param search query string false "search in (EnvironmentName)" @Success 200 {object} handlers.ResponseStruct{Data=handlers.PageData{List=[]models.Environment}} "Environment" @Router /v1/environment [get] @Security JWT

func (*EnvironmentHandler) ListEnvironmentUser

func (h *EnvironmentHandler) ListEnvironmentUser(c *gin.Context)

ListEnvironmentUser 获取属于Environment的 User 列表 @Tags Environment @Summary 获取属于 Environment 的 User 列表 @Description 获取属于 Environment 的 User 列表 @Accept json @Produce json @Param environment_id path uint true "environment_id" @Param preload query string false "choices Tenants,SystemRole" @Param page query int false "page" @Param size query int false "page" @Param search query string false "search in (Username,Email)" @Success 200 {object} handlers.ResponseStruct{Data=handlers.PageData{List=[]models.User}} "models.User" @Router /v1/environment/{environment_id}/user [get] @Security JWT

func (*EnvironmentHandler) PostEnvironmentUser

func (h *EnvironmentHandler) PostEnvironmentUser(c *gin.Context)

PostEnvironmentUser 在User和Environment间添加关联关系 @Tags Environment @Summary 在User和Environment间添加关联关系 @Description 在User和Environment间添加关联关系 @Accept json @Produce json @Param environment_id path uint true "environment_id" @Param param body models.EnvironmentUserRels true "表单"` @Success 200 {object} handlers.ResponseStruct{Data=models.EnvironmentUserRels} "models.User" @Router /v1/environment/{environment_id}/user [post] @Security JWT

func (*EnvironmentHandler) PutEnvironment

func (h *EnvironmentHandler) PutEnvironment(c *gin.Context)

PutEnvironment 修改Environment @Tags Environment @Summary 修改Environment @Description 修改Environment @Accept json @Produce json @Param environment_id path uint true "environment_id" @Param param body models.Environment true "表单" @Success 200 {object} handlers.ResponseStruct{Data=models.Environment} "Environment" @Router /v1/environment/{environment_id} [put] @Security JWT

func (*EnvironmentHandler) PutEnvironmentUser

func (h *EnvironmentHandler) PutEnvironmentUser(c *gin.Context)

PutEnvironmentUser 修改 User 和 Environment 的关联关系 @Tags Environment @Summary 修改 User 和 Environment 的关联关系 @Description 修改 User 和 Environment 的关联关系 @Accept json @Produce json @Param environment_id path uint true "environment_id" @Param user_id path uint true "user_id" @Param param body models.EnvironmentUserRels true "表单"` @Success 200 {object} handlers.ResponseStruct{Data=models.EnvironmentUserRels} "models.User" @Router /v1/environment/{environment_id}/user/{user_id} [put] @Security JWT

func (*EnvironmentHandler) RegistRouter

func (h *EnvironmentHandler) RegistRouter(rg *gin.RouterGroup)

func (*EnvironmentHandler) RetrieveEnvironment

func (h *EnvironmentHandler) RetrieveEnvironment(c *gin.Context)

RetrieveEnvironment Environment详情 @Tags Environment @Summary Environment详情 @Description get Environment详情 @Accept json @Produce json @Param environment_id path uint true "environment_id" @Success 200 {object} handlers.ResponseStruct{Data=models.Environment} "Environment" @Router /v1/environment/{environment_id} [get] @Security JWT

func (*EnvironmentHandler) RetrieveEnvironmentUser

func (h *EnvironmentHandler) RetrieveEnvironmentUser(c *gin.Context)

RetrieveEnvironmentUser 获取Environment 的一个 User详情 @Tags Environment @Summary 获取Environment 的一个 User详情 @Description 获取Environment 的一个 User详情 @Accept json @Produce json @Param environment_id path uint true "environment_id" @Param user_id path uint true "user_id" @Success 200 {object} handlers.ResponseStruct{Data=models.User} "models.User" @Router /v1/environment/{environment_id}/user/{user_id} [get] @Security JWT

type EnvironmentObservabilityRet

type EnvironmentObservabilityRet struct {
	ProjectID       uint   `json:"projectID"`
	ProjectName     string `json:"projectName"`
	EnvironmentID   uint   `json:"environmentID"`
	EnvironmentName string `json:"environmentName"`
	ClusterName     string `json:"clusterName"`
	Namespace       string `json:"namespace"`

	Labels map[string]string `json:"labels"`

	Monitoring  bool `json:"monitoring"`  // 是否启用监控
	Logging     bool `json:"logging"`     // 是否启日志
	ServiceMesh bool `json:"serviceMesh"` // 是否启用服务网格

	ContainerRestartTotal int64 `json:"containerRestartTotal"`

	CPU    string `json:"cpu"`
	Memory string `json:"memory"`

	MonitorCollectorCount int `json:"monitorCollectorCount"` // metrics采集器数量

	AlertRuleCount     int            `json:"alertRuleCount"`   // 告警规则列表
	AlertResourceMap   map[string]int `json:"alertResourceMap"` // 告警规则的资源map
	ErrorAlertCount    int            `json:"errorAlertCount"`
	CriticalAlertCount int            `json:"criticalAlertCount"`

	LoggingCollectorCount int    `json:"loggingCollectorCount"`
	ErrorLogCount         int    `json:"errorLogCount"`
	LogRate               string `json:"logRate"`

	EventCount int `json:"eventCount"` // 事件数量

	Warning string `json:"warning"`
}

Jump to

Keyboard shortcuts

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