bean

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Nov 13, 2024 License: Apache-2.0 Imports: 9 Imported by: 37

Documentation

Index

Constants

View Source
const (
	POLICY_DIRECT        PolicyType = 1
	POLICY_GROUP         PolicyType = 1
	SUPERADMIN                      = "role:super-admin___"
	APP_ACCESS_TYPE_HELM            = "helm-app"
	USER_TYPE_API_TOKEN             = "apiToken"
	CHART_GROUP_ENTITY              = "chart-group"
	CLUSTER_ENTITIY                 = "cluster"
	ACTION_SUPERADMIN               = "super-admin"
)
View Source
const (
	CD_WORKFLOW_TYPE_PRE              WorkflowType                = "PRE"
	CD_WORKFLOW_TYPE_POST             WorkflowType                = "POST"
	CD_WORKFLOW_TYPE_DEPLOY           WorkflowType                = "DEPLOY"
	CI_WORKFLOW_TYPE                  WorkflowType                = "CI"
	WEBHOOK_WORKFLOW_TYPE             WorkflowType                = "WEBHOOK"
	DEPLOYMENT_CONFIG_TYPE_LAST_SAVED DeploymentConfigurationType = "LAST_SAVED_CONFIG"
	//latest trigger is not being used because this is being handled at FE and we anyhow identify latest trigger as
	//last deployed wfr which is also a specific trigger
	DEPLOYMENT_CONFIG_TYPE_LATEST_TRIGGER   DeploymentConfigurationType = "LATEST_TRIGGER_CONFIG"
	DEPLOYMENT_CONFIG_TYPE_SPECIFIC_TRIGGER DeploymentConfigurationType = "SPECIFIC_TRIGGER_CONFIG"
)
View Source
const (
	NOCHARTEXIST string = "NOCHARTEXIST"
)

Variables

This section is empty.

Functions

func GetTransformedDataForSecretRootJsonData added in v1.0.0

func GetTransformedDataForSecretRootJsonData(data string, mode util.SecretTransformMode) (string, error)

Types

type ApiError

type ApiError struct {
	Code              string      `json:"code,omitempty"`
	InternalMessage   string      `json:"internalMessage,omitempty"`
	UserMessage       interface{} `json:"userMessage,omitempty"`
	UserDetailMessage string      `json:"userDetailMessage,omitempty"`
}

type AppContainer

type AppContainer struct {
	AppId                   int                        `json:"appId"`
	AppName                 string                     `json:"appName"`
	ProjectId               int                        `json:"projectId"`
	AppEnvironmentContainer []*AppEnvironmentContainer `json:"environments"`
	DefaultEnv              AppEnvironmentContainer    `json:"-"`
	Description             GenericNoteResponseBean    `json:"description"`
}

type AppContainerResponse

type AppContainerResponse struct {
	AppContainers      []*AppContainer    `json:"appContainers"`
	AppCount           int                `json:"appCount"`
	DeploymentGroupDTO DeploymentGroupDTO `json:"deploymentGroup,omitempty"`
}

type AppDetailContainer

type AppDetailContainer struct {
	DeploymentDetailContainer `json:",inline"`
	InstanceDetail            []InstanceDetail       `json:"instanceDetail"` //pod list with cpu, memory usage percent
	Environments              []Environment          `json:"otherEnvironment,omitempty"`
	LinkOuts                  []LinkOuts             `json:"linkOuts,omitempty"`
	ResourceTree              map[string]interface{} `json:"resourceTree,omitempty"`
	Notes                     string                 `json:"notes,omitempty"`
}

type AppDetailsContainer added in v0.6.24

type AppDetailsContainer struct {
	ResourceTree  map[string]interface{} `json:"resourceTree,omitempty"`
	Notes         string                 `json:"notes,omitempty"`
	ReleaseStatus map[string]interface{} `json:"releaseStatus"`
}

type AppEnvironmentContainer

type AppEnvironmentContainer struct {
	AppId                       int                       `json:"appId"`
	AppName                     string                    `json:"appName"`
	EnvironmentId               int                       `json:"environmentId"`
	EnvironmentName             string                    `json:"environmentName"`
	Namespace                   string                    `json:"namespace"`
	ClusterName                 string                    `json:"clusterName"`
	DeploymentCounter           int                       `json:"deploymentCounter,omitempty"`
	InstanceCounter             int                       `json:"instanceCounter,omitempty"`
	Status                      string                    `json:"status"`
	AppStatus                   string                    `json:"appStatus"`
	CdStageStatus               *string                   `json:"cdStageStatus"`
	PreStageStatus              *string                   `json:"preStageStatus"`
	PostStageStatus             *string                   `json:"postStageStatus"`
	LastDeployedTime            string                    `json:"lastDeployedTime,omitempty"`
	LastDeployedImage           string                    `json:"lastDeployedImage,omitempty"`
	LastDeployedBy              string                    `json:"lastDeployedBy,omitempty"`
	LastSuccessDeploymentDetail DeploymentDetailContainer `json:"-"`
	Default                     bool                      `json:"default"`
	Deleted                     bool                      `json:"deleted"`
	MaterialInfo                json.RawMessage           `json:"materialInfo,omitempty"`
	DataSource                  string                    `json:"dataSource,omitempty"`
	MaterialInfoJson            string                    `json:"-"`
	PipelineId                  int                       `json:"-"`
	PipelineReleaseCounter      int                       `json:"-"`
	CiArtifactId                int                       `json:"ciArtifactId"`
	Active                      bool                      `json:"-"`
	TeamId                      int                       `json:"teamId"`
	TeamName                    string                    `json:"teamName"`
	Description                 string                    `json:"description" validate:"max=40"`
	TotalCount                  int                       `json:"-"`
	Commits                     []string                  `json:"commits"`
}

type AppStageStatus

type AppStageStatus struct {
	Stage     int    `json:"stage"`
	StageName string `json:"stageName,omitempty"`
	Status    bool   `json:"status"`
	Required  bool   `json:"required"`
}

type ArtifactsListFilterOptions added in v0.6.26

type ArtifactsListFilterOptions struct {
	//list filter data
	Limit        int
	Offset       int
	SearchString string
	Order        string

	//self stage data
	PipelineId int
	StageType  WorkflowType

	// CiPipelineId is id of ci-pipeline present in the same app-workflow of PipelineId
	CiPipelineId int

	//parent satge data
	ParentCdId      int
	ParentId        int
	ParentStageType WorkflowType

	//excludeArtifactIds
	ExcludeArtifactIds []int

	//excludeWfRunners
	ExcludeWfrIds []int

	//pluginStage
	PluginStage string

	// UseCdStageQueryV2 is to set query version
	UseCdStageQueryV2 bool
}

type BulkCdDeployEvent added in v0.6.16

type BulkCdDeployEvent struct {
	ValuesOverrideRequest *ValuesOverrideRequest `json:"valuesOverrideRequest"`
	UserId                int32                  `json:"userId"`
}

type BulkDeleteRequest added in v0.6.29

type BulkDeleteRequest struct {
	Ids            []int32         `json:"ids"`
	ListingRequest *ListingRequest `json:"listingRequest,omitempty"`
	LoggedInUserId int32           `json:"-"`
}

type CiMaterialDTO

type CiMaterialDTO struct {
	Name        string `json:"name"`
	SourceType  string `json:"type"`
	SourceValue string `json:"value"`
}

type CiPipelineLastSucceededTime added in v0.6.15

type CiPipelineLastSucceededTime struct {
	CiPipelineID    int       `json:"ci_pipeline_id"`
	LastSucceededOn time.Time `json:"last_succeeded_on"`
}

type ClusterInfo added in v0.3.14

type ClusterInfo struct {
	ClusterId             int    `json:"clusterId"`
	ClusterName           string `json:"clusterName"`
	BearerToken           string `json:"bearerToken"`
	ServerUrl             string `json:"serverUrl"`
	InsecureSkipTLSVerify bool   `json:"insecureSkipTLSVerify"`
	KeyData               string `json:"keyData"`
	CertData              string `json:"certData"`
	CAData                string `json:"CAData"`
}

type Config added in v0.5.3

type Config struct {
	IgnoreAuthCheck bool `env:"IGNORE_AUTOCOMPLETE_AUTH_CHECK" envDefault:"false"`
}

type ConfigMapAndSecretJson

type ConfigMapAndSecretJson struct {
	ConfigMapJson    ConfigMapJson    `json:"configMapJson"`
	ConfigSecretJson ConfigSecretJson `json:"configSecretJson"`
}

type ConfigMapJson

type ConfigMapJson struct {
	Enabled bool              `json:"enabled"`
	Maps    []ConfigSecretMap `json:"maps"`
}

type ConfigMapRootJson

type ConfigMapRootJson struct {
	ConfigMapJson ConfigMapJson `json:"ConfigMaps"`
}

type ConfigSecretJson

type ConfigSecretJson struct {
	Enabled bool               `json:"enabled"`
	Secrets []*ConfigSecretMap `json:"secrets"`
}

func (ConfigSecretJson) GetDereferencedSecrets added in v0.6.24

func (configSecretJson ConfigSecretJson) GetDereferencedSecrets() []ConfigSecretMap

func (*ConfigSecretJson) SetReferencedSecrets added in v0.6.24

func (configSecretJson *ConfigSecretJson) SetReferencedSecrets(secrets []ConfigSecretMap)

type ConfigSecretMap added in v0.6.17

type ConfigSecretMap struct {
	Name           string          `json:"name"`
	Type           string          `json:"type"`
	External       bool            `json:"external"`
	MountPath      string          `json:"mountPath"`
	Data           json.RawMessage `json:"data,omitempty"`
	ESOSecretData  json.RawMessage `json:"esoSecretData,omitempty"`
	ExternalType   string          `json:"externalType"`
	RoleARN        string          `json:"roleARN"`
	SecretData     json.RawMessage `json:"secretData,omitempty"`
	SubPath        bool            `json:"subPath"`
	ESOSubPath     []string        `json:"esoSubPath"`
	FilePermission string          `json:"filePermission"`
}

func (ConfigSecretMap) GetDataMap added in v0.6.17

func (configSecret ConfigSecretMap) GetDataMap() (map[string]string, error)

type ConfigSecretRootJson

type ConfigSecretRootJson struct {
	ConfigSecretJson ConfigSecretJson `json:"ConfigSecrets"`
}

type CreateVulnerabilityPolicyRequest

type CreateVulnerabilityPolicyRequest struct {
	// actions which can be taken on vulnerabilities
	Action    *VulnerabilityAction `json:"action,omitempty"`
	AppId     int                  `json:"appId,omitempty"`
	ClusterId int                  `json:"clusterId,omitempty"`
	CveId     string               `json:"cveId,omitempty"`
	EnvId     int                  `json:"envId,omitempty"`
	Severity  string               `json:"severity,omitempty"`
}

CreateVulnerabilityPolicyRequest defines model for CreateVulnerabilityPolicyRequest.

type CreateVulnerabilityPolicyResponse

type CreateVulnerabilityPolicyResponse struct {
	// Error object
	Error  *Error                       `json:"error,omitempty"`
	Result *IdVulnerabilityPolicyResult `json:"result,omitempty"`
}

CreateVulnerabilityPolicyResponse defines model for CreateVulnerabilityPolicyResponse.

type CustomTag added in v0.6.25

type CustomTag struct {
	EntityKey            int    `json:"entityKey"`
	EntityValue          string `json:"entityValue"`
	TagPattern           string `json:"tagPattern"`
	AutoIncreasingNumber int    `json:"counterX"`
	Metadata             string `json:"metadata"`
	Enabled              bool   `json:"enabled"`
}

type CustomTagErrorResponse added in v0.6.25

type CustomTagErrorResponse struct {
	ConflictingArtifactPath string `json:"conflictingLink"`
	TagPattern              string `json:"tagPattern"`
	AutoIncreasingNumber    int    `json:"counterX"`
	Message                 string `json:"message"`
}

type CvePolicy

type CvePolicy struct {
	// Embedded struct due to allOf(#/components/schemas/SeverityPolicy)
	SeverityPolicy

	// In case of CVE policy this is same as cve name else it is blank
	Name string `json:"name,omitempty"`
}

CvePolicy defines model for CvePolicy.

type DeletePolicyParams

type DeletePolicyParams struct {
	Id int `json:"id"`
}

DeletePolicyParams defines parameters for DeletePolicy.

type DeleteVulnerabilityPolicyResponse

type DeleteVulnerabilityPolicyResponse struct {
	// Error object
	Error  *Error                       `json:"error,omitempty"`
	Result *IdVulnerabilityPolicyResult `json:"result,omitempty"`
}

DeleteVulnerabilityPolicyResponse defines model for DeleteVulnerabilityPolicyResponse.

type DeploymentConfigurationType added in v0.6.2

type DeploymentConfigurationType string

type DeploymentDetailContainer

type DeploymentDetailContainer struct {
	InstalledAppId                int                    `json:"installedAppId,omitempty"`
	AppId                         int                    `json:"appId,omitempty"`
	PcoId                         int                    `json:"pcoId"`
	CdPipelineId                  int                    `json:"cdPipelineId,omitempty"`
	TriggerType                   string                 `json:"triggerType,omitempty"`
	ParentEnvironmentName         string                 `json:"parentEnvironmentName"`
	AppStoreInstalledAppVersionId int                    `json:"appStoreInstalledAppVersionId,omitempty"`
	AppStoreChartName             string                 `json:"appStoreChartName,omitempty"`
	AppStoreChartId               int                    `json:"appStoreChartId,omitempty"`
	AppStoreAppName               string                 `json:"appStoreAppName,omitempty"`
	AppStoreAppVersion            string                 `json:"appStoreAppVersion,omitempty"`
	AppName                       string                 `json:"appName"`
	EnvironmentId                 int                    `json:"environmentId"`
	EnvironmentName               string                 `json:"environmentName"`
	Namespace                     string                 `json:"namespace,omitempty"`
	Status                        string                 `json:"status,omitempty"`
	StatusMessage                 string                 `json:"statusMessage,omitempty"`
	LastDeployedTime              string                 `json:"lastDeployedTime,omitempty"`
	LastDeployedBy                string                 `json:"lastDeployedBy,omitempty"`
	MaterialInfo                  json.RawMessage        `json:"materialInfo,omitempty"`
	MaterialInfoJsonString        string                 `json:"-"`
	ReleaseVersion                string                 `json:"releaseVersion,omitempty"`
	Default                       bool                   `json:"default,omitempty"`
	DataSource                    string                 `json:"dataSource,omitempty"`
	LastDeployedPipeline          string                 `json:"lastDeployedPipeline,omitempty"`
	Deprecated                    bool                   `json:"deprecated"`
	K8sVersion                    string                 `json:"k8sVersion"`
	CiArtifactId                  int                    `json:"ciArtifactId"`
	ParentArtifactId              int                    `json:"parentArtifactId"`
	ClusterId                     int                    `json:"clusterId"`
	DeploymentAppType             string                 `json:"deploymentAppType"`
	CiPipelineId                  int                    `json:"ciPipelineId,omitempty"`
	IsExternalCi                  bool                   `json:"externalCi"`
	ClusterName                   string                 `json:"clusterName,omitempty"`
	DockerRegistryId              string                 `json:"dockerRegistryId,omitempty"`
	IpsAccessProvided             bool                   `json:"ipsAccessProvided"`
	DeploymentAppDeleteRequest    bool                   `json:"deploymentAppDeleteRequest"`
	Description                   string                 `json:"description" validate:"max=40"`
	IsVirtualEnvironment          bool                   `json:"isVirtualEnvironment"`
	HelmPackageName               string                 `json:"helmPackageName"`
	HelmReleaseInstallStatus      string                 `json:"-"`
	DeploymentConfig              *bean.DeploymentConfig `json:"-"`
	IsPipelineTriggered           bool                   `json:"isPipelineTriggered"`
	ReleaseMode                   string                 `json:"releaseMode"`
	LastDeployedById              int                    `json:"-" sql:"last_deployed_by_id"`
}

type DeploymentDetailStat

type DeploymentDetailStat struct {
	AppId         int           `json:"appId"`
	EnvironmentId int           `json:"environmentId"`
	NewPodStats   PodDetailStat `json:"newPodStats,omitempty"`
	OldPodStats   PodDetailStat `json:"oldPodStats,omitempty"`
}

type DeploymentGroupDTO

type DeploymentGroupDTO struct {
	Id             int             `json:"id"`
	Name           string          `json:"name"`
	AppCount       int             `json:"appCount"`
	NoOfApps       string          `json:"noOfApps"`
	EnvironmentId  int             `json:"environmentId"`
	CiPipelineId   int             `json:"ciPipelineId"`
	CiMaterialDTOs []CiMaterialDTO `json:"ciMaterialDTOs"`
}

type Environment

type Environment struct {
	AppStatus                  string   `json:"appStatus"` //this is not the status of environment , this make sense with a specific app only
	EnvironmentId              int      `json:"environmentId"`
	EnvironmentName            string   `json:"environmentName"`
	AppMetrics                 *bool    `json:"appMetrics"`
	InfraMetrics               *bool    `json:"infraMetrics"`
	Prod                       bool     `json:"prod"`
	ChartRefId                 int      `json:"chartRefId"`
	LastDeployed               string   `json:"lastDeployed"`
	LastDeployedBy             string   `json:"lastDeployedBy"`
	LastDeployedImage          string   `json:"lastDeployedImage"`
	DeploymentAppDeleteRequest bool     `json:"deploymentAppDeleteRequest"`
	Description                string   `json:"description" validate:"max=40"`
	IsVirtualEnvironment       bool     `json:"isVirtualEnvironment"`
	ClusterId                  int      `json:"clusterId"`
	PipelineId                 int      `json:"pipelineId"`
	LatestCdWorkflowRunnerId   int      `json:"latestCdWorkflowRunnerId,omitempty"`
	CiArtifactId               int      `json:"ciArtifactId"`
	Commits                    []string `json:"commits"`
}

type Error

type Error struct {
	// Error code
	Code int32 `json:"code"`

	// Error message
	Message string `json:"message"`
}

Error defines model for Error.

type FetchPolicyParams

type FetchPolicyParams struct {
	Level ResourceLevel `json:"level"`
	Id    int           `json:"id,omitempty"`
}

FetchPolicyParams defines parameters for FetchPolicy.

type GenericNoteResponseBean added in v0.6.21

type GenericNoteResponseBean struct {
	Id          int       `json:"id" validate:"number"`
	Description string    `json:"description"`
	UpdatedBy   string    `json:"updatedBy"`
	UpdatedOn   time.Time `json:"updatedOn"`
}

type GetVulnerabilityPolicyResponse

type GetVulnerabilityPolicyResponse struct {
	// Error object
	Error  *Error                        `json:"error,omitempty"`
	Result *GetVulnerabilityPolicyResult `json:"result,omitempty"`
}

GetVulnerabilityPolicyResponse defines model for GetVulnerabilityPolicyResponse.

type GetVulnerabilityPolicyResult

type GetVulnerabilityPolicyResult struct {
	// Resource Level can be one of global, cluster, environment, application
	Level    ResourceLevel          `json:"level"`
	Policies []*VulnerabilityPolicy `json:"policies"`
}

GetVulnerabilityPolicyResult defines model for GetVulnerabilityPolicyResult.

type IdVulnerabilityPolicyResult

type IdVulnerabilityPolicyResult struct {
	Id int `json:"id"`
}

IdVulnerabilityPolicyResult defines model for IdVulnerabilityPolicyResult.

type InstanceDetail

type InstanceDetail struct {
	PodName            string  `json:"podName,omitempty"`
	CpuUsage           float64 `json:"cpuUsage,omitempty"`
	MemoryUsage        int64   `json:"memoryUsage,omitempty"`
	CpuRequest         float64 `json:"cpuRequest,omitempty"`
	MemoryRequest      int64   `json:"memoryRequest,omitempty"`
	CpuUsagePercent    float64 `json:"cpuUsagePercent,omitempty"`
	MemoryUsagePercent float64 `json:"memoryUsagePercent,omitempty"`
}

type JobCIPipeline added in v0.6.15

type JobCIPipeline struct {
	CiPipelineId                 int       `json:"ciPipelineId"`
	CiPipelineName               string    `json:"ciPipelineName"`
	Status                       string    `json:"status"`
	LastRunAt                    time.Time `json:"lastRunAt"`
	LastSuccessAt                time.Time `json:"lastSuccessAt"`
	EnvironmentId                int       `json:"environmentId"`
	EnvironmentName              string    `json:"environmentName"`
	LastTriggeredEnvironmentName string    `json:"lastTriggeredEnvironmentName"`
}

type JobContainer added in v0.6.15

type JobContainer struct {
	JobId          int                     `json:"jobId"`
	JobName        string                  `json:"jobName""`
	JobActualName  string                  `json:"appName""`
	Description    GenericNoteResponseBean `json:"description"`
	JobCiPipelines []JobCIPipeline         `json:"ciPipelines"'`
	ProjectId      int                     `json:"projectId"`
}

type JobContainerResponse added in v0.6.15

type JobContainerResponse struct {
	JobContainers []*JobContainer `json:"jobContainers"`
	JobCount      int             `json:"jobCount"`
}

type JobListingContainer added in v0.6.15

type JobListingContainer struct {
	JobId                        int       `sql:"job_id" json:"jobId"`
	JobName                      string    `sql:"job_name" json:"jobName"`
	JobActualName                string    `sql:"app_name" json:"appName"`
	Description                  string    `sql:"description" json:"description"`
	CiPipelineID                 int       `sql:"ci_pipeline_id" json:"ciPipelineID"`
	CiPipelineName               string    `sql:"ci_pipeline_name" json:"ciPipelineName"`
	Status                       string    `sql:"status" json:"status"`
	StartedOn                    time.Time `sql:"started_on" json:"startedOn"`
	EnvironmentId                int       `sql:"environment_id" json:"environmentId"`
	EnvironmentName              string    `sql:"environment_name" json:"environmentName"`
	LastTriggeredEnvironmentName string    `sql:"last_triggered_environment_name" json:"lastTriggeredEnvironmentName"`
	LastTriggeredEnvironmentId   int       `sql:"last_triggered_environment_id" json:"lastEnvironmentId"`
	ProjectId                    int       `sql:"team_id" json:"projectId"`
}

type LinkOuts

type LinkOuts struct {
	Id            int    `json:"id"`
	AppId         int    `json:"appId,omitempty"`
	EnvironmentId int    `json:"environmentId,omitempty"`
	Name          string `json:"name"`
	AppName       string `json:"appName,omitempty"`
	EnvName       string `json:"envName,omitempty"`
	PodName       string `json:"podName,omitempty"`
	ContainerName string `json:"containerName,omitempty"`
	Link          string `json:"link,omitempty"`
	Description   string `json:"description,omitempty"`
}

type ListingRequest added in v0.6.29

type ListingRequest struct {
	SearchKey  string         `json:"searchKey"`
	SortOrder  bean.SortOrder `json:"sortOrder"`
	SortBy     bean.SortBy    `json:"sortBy"`
	Offset     int            `json:"offset"`
	Size       int            `json:"size"`
	ShowAll    bool           `json:"showAll"`
	CountCheck bool           `json:"-"`
}

type Notes added in v0.6.15

type Notes struct {
	Notes string `json:"gitOpsNotes,omitempty"`
}

type PodDetailStat

type PodDetailStat struct {
	PodCount           string  `json:"podCount,omitempty"`
	CpuUsagePercent    float64 `json:"cpuUsagePercent,omitempty"`
	MemoryUsagePercent float64 `json:"memoryUsagePercent,omitempty"`
}

type PolicyRequest

type PolicyRequest struct {
	Data []casbin.Policy
}

type PolicyType

type PolicyType int

type ReleaseStatusUpdateRequest

type ReleaseStatusUpdateRequest struct {
	RequestId string             `json:"requestId"`
	NewStatus models.ChartStatus `json:"newStatus"`
}

type ResourceLevel

type ResourceLevel string

ResourceLevel defines model for ResourceLevel.

type ResourceUsage

type ResourceUsage struct {
	AppId         int     `json:"appId"` //app_id
	EnvironmentId int     `json:"environmentId"`
	CpuUsage      float64 `json:"cpuUsage,omitempty"`
	MemoryUsage   float64 `json:"memoryUsage,omitempty"`
}

type Response

type Response struct {
	Code   int         `json:"code,omitempty"`
	Status string      `json:"status,omitempty"`
	Result interface{} `json:"result,omitempty"`
	Errors []ApiError  `json:"errors,omitempty"`
}

global response body used across api

type RestrictedGroup added in v0.7.0

type RestrictedGroup struct {
	Group                   string
	HasSuperAdminPermission bool
}

type Role

type Role struct {
	Id   int    `json:"id" validate:"number"`
	Role string `json:"role" validate:"required"`
}

type RoleData

type RoleData struct {
	Id          int    `json:"id" validate:"number"`
	Role        string `json:"role" validate:"required"`
	Entity      string `json:"entity"`
	Team        string `json:"team"`
	EntityName  string `json:"entityName"`
	Environment string `json:"environment"`
	Action      string `json:"action"`
	AccessType  string `json:"accessType"`

	Cluster   string `json:"cluster"`
	Namespace string `json:"namespace"`
	Group     string `json:"group"`
	Kind      string `json:"kind"`
	Resource  string `json:"resource"`
}

type RoleFilter

type RoleFilter struct {
	Entity      string `json:"entity"`
	Team        string `json:"team"`
	EntityName  string `json:"entityName"`
	Environment string `json:"environment"`
	Action      string `json:"action"`
	AccessType  string `json:"accessType"`

	Cluster   string `json:"cluster"`
	Namespace string `json:"namespace"`
	Group     string `json:"group"`
	Kind      string `json:"kind"`
	Resource  string `json:"resource"`
	Workflow  string `json:"workflow"`
}

type RoleGroup

type RoleGroup struct {
	Id          int32        `json:"id" validate:"number"`
	Name        string       `json:"name,omitempty"`
	Description string       `json:"description,omitempty"`
	RoleFilters []RoleFilter `json:"roleFilters"`
	Status      string       `json:"status,omitempty"`
	SuperAdmin  bool         `json:"superAdmin"`
	UserId      int32        `json:"-"` // created or modified user id
}

type RoleGroupListingResponse added in v0.6.29

type RoleGroupListingResponse struct {
	RoleGroups []*RoleGroup `json:"roleGroups"`
	TotalCount int          `json:"totalCount"`
}

type SSOLoginDto

type SSOLoginDto struct {
	Id     int32           `json:"id"`
	Name   string          `json:"name,omitempty"`
	Label  string          `json:"label,omitempty"`
	Url    string          `json:"url,omitempty"`
	Config json.RawMessage `json:"config,omitempty"`
	Active bool            `json:"active"`
	UserId int32           `json:"-"`
}

type SeverityPolicy

type SeverityPolicy struct {
	Id int `json:"id"`

	// Whether vulnerability is allowed or blocked and is it inherited or is it overridden
	Policy       *VulnerabilityPermission `json:"policy"`
	PolicyOrigin string                   `json:"policyOrigin"`
	Severity     string                   `json:"severity"`
}

SeverityPolicy defines model for SeverityPolicy.

type TLSConfig added in v0.7.2

type TLSConfig struct {
	CaData      string `json:"caData"`
	TLSCertData string `json:"tlsCertData"`
	TLSKeyData  string `json:"tlsKeyData"`
}

type TriggerView

type TriggerView struct {
	CiPipelineId           int                             `json:"ciPipelineId"`
	CiPipelineName         string                          `json:"ciPipelineName"`
	CdPipelineId           int                             `json:"cdPipelineId"`
	CdPipelineName         string                          `json:"cdPipelineName"`
	Status                 string                          `json:"status"`
	StatusMessage          string                          `json:"statusMessage,omitempty"`
	LastDeployedTime       string                          `json:"lastDeployedTime,omitempty"`
	LastDeployedBy         string                          `json:"lastDeployedBy,omitempty"`
	MaterialInfo           json.RawMessage                 `json:"materialInfo,omitempty"`
	MaterialInfoJsonString string                          `json:"-"`
	ReleaseVersion         string                          `json:"releaseVersion,omitempty"`
	DataSource             string                          `json:"dataSource,omitempty"`
	Conditions             []v1alpha1.ApplicationCondition `json:"conditions"`
	AppName                string                          `json:"appName"`
	EnvironmentName        string                          `json:"environmentName"`
}

type UpdatePolicyParams

type UpdatePolicyParams struct {
	Id     int    `json:"id"`
	Action string `json:"action"`
}

UpdatePolicyParams defines parameters for UpdatePolicy.

type UpdateVulnerabilityPolicyResponse

type UpdateVulnerabilityPolicyResponse struct {
	// Error object
	Error  *Error                       `json:"error,omitempty"`
	Result *IdVulnerabilityPolicyResult `json:"result,omitempty"`
}

UpdateVulnerabilityPolicyResponse defines model for UpdateVulnerabilityPolicyResponse.

type UserInfo

type UserInfo struct {
	Id            int32           `json:"id" validate:"number,not-system-admin-userid"`
	EmailId       string          `json:"email_id" validate:"required,not-system-admin-user"` // TODO : have to migrate json key to emailId and also handle backward compatibility
	Roles         []string        `json:"roles,omitempty"`
	AccessToken   string          `json:"access_token,omitempty"`
	RoleFilters   []RoleFilter    `json:"roleFilters"`
	Status        string          `json:"status,omitempty"`
	Groups        []string        `json:"groups"`         // this will be deprecated in future do not use
	UserRoleGroup []UserRoleGroup `json:"userRoleGroups"` // role group with metadata
	SuperAdmin    bool            `json:"superAdmin,notnull"`
	LastLoginTime time.Time       `json:"lastLoginTime"`
	UserType      string          `json:"-"`
	LastUsedAt    time.Time       `json:"-"`
	LastUsedByIp  string          `json:"-"`
	Exist         bool            `json:"-"`
	UserId        int32           `json:"-"` // created or modified user id
}

type UserListingResponse added in v0.6.29

type UserListingResponse struct {
	Users      []UserInfo `json:"users"`
	TotalCount int        `json:"totalCount"`
}

type UserRole

type UserRole struct {
	Id      int32  `json:"id" validate:"number"`
	EmailId string `json:"email_id" validate:"email"`
	Role    string `json:"role"`
}

type UserRoleGroup added in v0.7.0

type UserRoleGroup struct {
	RoleGroup *RoleGroup `json:"roleGroup"`
}

type ValuesOverrideRequest

type ValuesOverrideRequest struct {
	PipelineId                            int                         `json:"pipelineId" validate:"required"`
	AppId                                 int                         `json:"appId" validate:"required"`
	CiArtifactId                          int                         `json:"ciArtifactId" validate:"required"`
	AdditionalOverride                    json.RawMessage             `json:"additionalOverride,omitempty"`
	ForceTrigger                          bool                        `json:"forceTrigger,notnull"`
	DeploymentTemplate                    string                      `json:"strategy,omitempty"` // validate:"oneof=BLUE-GREEN ROLLING"`
	DeploymentWithConfig                  DeploymentConfigurationType `json:"deploymentWithConfig"`
	WfrIdForDeploymentWithSpecificTrigger int                         `json:"wfrIdForDeploymentWithSpecificTrigger"` // target cd_workflow_runner_id for rollback. Used in rollback deployment cases
	CdWorkflowType                        WorkflowType                `json:"cdWorkflowType,notnull"`
	WfrId                                 int                         `json:"wfrId,notnull"`
	CdWorkflowId                          int                         `json:"cdWorkflowId"`
	PipelineOverrideId                    int                         `json:"pipelineOverrideId"` // required for async install/upgrade event;
	DeploymentType                        models.DeploymentType       `json:"deploymentType"`     // required for async install/upgrade handling; previously if was used internally
	ForceSyncDeployment                   bool                        `json:"forceSyncDeployment,notnull"`
	UserId                                int32                       `json:"-"`
	EnvId                                 int                         `json:"-"`
	EnvName                               string                      `json:"-"`
	ClusterId                             int                         `json:"-"`
	AppName                               string                      `json:"-"`
	PipelineName                          string                      `json:"-"`
	DeploymentAppType                     string                      `json:"-"`
	Namespace                             string                      `json:"-"`
	ReleaseName                           string                      `json:"-"`
	Image                                 string                      `json:"-"`
}

type VulnerabilityAction

type VulnerabilityAction string

VulnerabilityAction defines model for VulnerabilityAction.

type VulnerabilityPermission

type VulnerabilityPermission struct {
	// actions which can be taken on vulnerabilities
	Action      VulnerabilityAction `json:"action"`
	Inherited   bool                `json:"inherited"`
	IsOverriden bool                `json:"isOverriden"`
}

VulnerabilityPermission defines model for VulnerabilityPermission.

type VulnerabilityPolicy

type VulnerabilityPolicy struct {
	Cves []*CvePolicy `json:"cves"`

	// environment id in case of application
	EnvId int `json:"envId,omitempty"`

	// Is name of cluster or environment or application/environment
	Name       string            `json:"name,omitempty"`
	Severities []*SeverityPolicy `json:"severities"`
	AppId      int               `json:"-"`
	ClusterId  int               `json:"-"`
}

VulnerabilityPolicy defines model for VulnerabilityPolicy.

type WorkflowType added in v0.3.12

type WorkflowType string

func (WorkflowType) IsStageTypeDeploy added in v0.7.1

func (workflowType WorkflowType) IsStageTypeDeploy() bool

func (WorkflowType) WorkflowTypeToStageType added in v0.6.24

func (workflowType WorkflowType) WorkflowTypeToStageType() repository.PipelineStageType

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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