Help us shape the future of Go! Take the 2026 Go Developer Survey

appStoreBean

package
v1.8.2 Latest Latest
Warning

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

Go to latest
Published: Oct 1, 2025 License: Apache-2.0 Imports: 16 Imported by: 7

Documentation

Index

Constants

View Source
const (
	DEFAULT_NAMESPACE                           = "default"
	DEFAULT_ENVIRONMENT_OR_NAMESPACE_OR_PROJECT = "devtron"
	CLUSTER_COMPONENT_DIR_PATH                  = "/cluster/component"
	HELM_RELEASE_STATUS_FAILED                  = "Failed"
	HELM_RELEASE_STATUS_PROGRESSING             = "Progressing"
	HELM_RELEASE_STATUS_UNKNOWN                 = "Unknown"
	FAILED_TO_REGISTER_IN_ACD_ERROR             = "failed to register app on ACD with error: "
	FAILED_TO_DELETE_APP_PREFIX_ERROR           = "error deleting app with error: "
	COULD_NOT_FETCH_APP_NAME_AND_ENV_NAME_ERR   = "could not fetch app name or environment name"
	APP_NOT_DELETED_YET_ERROR                   = "App Not Yet Deleted."
)
View Source
const REFERENCE_TYPE_DEFAULT string = "DEFAULT"
View Source
const REFERENCE_TYPE_DEPLOYED string = "DEPLOYED"
View Source
const REFERENCE_TYPE_EXISTING string = "EXISTING"
View Source
const REFERENCE_TYPE_TEMPLATE string = "TEMPLATE"
View Source
const (
	RefChartProxyDirPath = "scripts/devtron-reference-helm-charts"
)

Variables

View Source
var CHART_PROXY_TEMPLATE = "reference-chart-proxy"
View Source
var REQUIREMENTS_YAML_FILE = "requirements.yaml"
View Source
var VALUES_YAML_FILE = "values.yaml"

Functions

func IsFailedStatus added in v1.0.0

func IsFailedStatus(status string) bool

func IsTerminalStatus added in v1.0.0

func IsTerminalStatus(status string) bool

Types

type AppListDetail added in v0.7.0

type AppListDetail struct {
	// clusters to which result corresponds
	ClusterIds *[]int32 `json:"clusterIds,omitempty"`
	// application type inside the array
	ApplicationType *string `json:"applicationType,omitempty"`
	// if data fetch for that cluster produced error
	Errored *bool `json:"errored,omitempty"`
	// error msg if client failed to fetch
	ErrorMsg *string `json:"errorMsg,omitempty"`
	// all helm app list, EA+ devtronapp
	HelmApps *[]HelmAppDetails `json:"helmApps,omitempty"`
	// all helm app list, EA+ devtronapp
	DevtronApps *[]openapi.DevtronApp `json:"devtronApps,omitempty"`
}

type AppNames

type AppNames struct {
	Name          string `json:"name,omitempty"`
	Exists        bool   `json:"exists"`
	SuggestedName string `json:"suggestedName,omitempty"`
}

type AppSotoreVersionDTOWrapper

type AppSotoreVersionDTOWrapper struct {
	Values []*AppStoreVersionValuesCategoryWiseDTO `json:"values"`
}

type AppStoreApplication

type AppStoreApplication struct {
	Id                          int                                   `json:"id"`
	Name                        string                                `json:"name"`
	ChartRepoId                 int                                   `json:"chartRepoId"`
	Active                      bool                                  `json:"active"`
	ChartGitLocation            string                                `json:"chartGitLocation"`
	CreatedOn                   time.Time                             `json:"createdOn"`
	UpdatedOn                   time.Time                             `json:"updatedOn"`
	AppStoreApplicationVersions []*AppStoreApplicationVersionResponse `json:"appStoreApplicationVersions"`
}

type AppStoreApplicationVersionResponse

type AppStoreApplicationVersionResponse struct {
	Id                      int       `json:"id"`
	Version                 string    `json:"version"`
	AppVersion              string    `json:"appVersion"`
	Created                 time.Time `json:"created"`
	Deprecated              bool      `json:"deprecated"`
	Description             string    `json:"description"`
	Digest                  string    `json:"digest"`
	Icon                    string    `json:"icon"`
	Name                    string    `json:"name"`
	ChartName               string    `json:"chartName"`
	AppStoreApplicationName string    `json:"appStoreApplicationName"`
	Home                    string    `json:"home"`
	Source                  string    `json:"source"`
	ValuesYaml              string    `json:"valuesYaml"`
	ChartYaml               string    `json:"chartYaml"`
	AppStoreId              int       `json:"appStoreId"`
	Latest                  bool      `json:"latest"`
	CreatedOn               time.Time `json:"createdOn"`
	RawValues               string    `json:"rawValues"`
	Readme                  string    `json:"readme"`
	ValuesSchemaJson        string    `json:"valuesSchemaJson"`
	Notes                   string    `json:"notes"`
	UpdatedOn               time.Time `json:"updatedOn"`
	IsChartRepoActive       bool      `json:"isChartRepoActive"`
	IsOCICompliantChart     bool      `json:"isOCICompliantChart"`
}

type AppStoreFilter

type AppStoreFilter struct {
	ChartRepoId       []int    `json:"chartRepoId"`
	RegistryId        []string `json:"registryId"`
	AppStoreName      string   `json:"appStoreName"`
	AppName           string   `json:"appName"`
	IncludeDeprecated bool     `json:"includeDeprecated"`
	Offset            int      `json:"offset"`
	Size              int      `json:"size"`
	EnvIds            []int    `json:"envIds"`
	OnlyDeprecated    bool     `json:"onlyDeprecated"`
	ClusterIds        []int    `json:"clusterIds"`
	AppStatuses       []string `json:"appStatuses"`
}

type AppStoreVersionValuesCategoryWiseDTO

type AppStoreVersionValuesCategoryWiseDTO struct {
	Values []*AppStoreVersionValuesDTO `json:"values"`
	Kind   string                      `json:"kind"`
}

type AppStoreVersionValuesDTO

type AppStoreVersionValuesDTO struct {
	Id                 int       `json:"id,omitempty"`
	AppStoreVersionId  int       `json:"appStoreVersionId,omitempty,notnull"`
	Name               string    `json:"name,omitempty"`
	Values             string    `json:"values,omitempty"` //yaml format user value
	ChartVersion       string    `json:"chartVersion,omitempty"`
	EnvironmentName    string    `json:"environmentName,omitempty"`
	Description        string    `json:"description,omitempty"`
	UpdatedByUserEmail string    `json:"updatedBy,omitempty"`
	UpdatedByUserId    int32     `json:"-"`
	UpdatedOn          time.Time `json:"updatedOn"`
	UserId             int32     `json:"-"`
}

type AppStoreVersionsResponse

type AppStoreVersionsResponse struct {
	Version string `json:"version"`
	Id      int    `json:"id"`
}

type AppStoreWithVersion

type AppStoreWithVersion struct {
	Id                           int       `json:"id"`
	AppStoreApplicationVersionId int       `json:"appStoreApplicationVersionId"`
	Name                         string    `json:"name"`
	ChartRepoId                  int       `json:"chart_repo_id"`
	DockerArtifactStoreId        string    `json:"docker_artifact_store_id"`
	ChartName                    string    `json:"chart_name"`
	Icon                         string    `json:"icon"`
	Active                       bool      `json:"active"`
	ChartGitLocation             string    `json:"chart_git_location"`
	CreatedOn                    time.Time `json:"created_on"`
	UpdatedOn                    time.Time `json:"updated_on"`
	Version                      string    `json:"version"`
	Deprecated                   bool      `json:"deprecated"`
	Description                  string    `json:"description"`
}

type AppstoreDeploymentStatus

type AppstoreDeploymentStatus int
const (
	WF_UNKNOWN AppstoreDeploymentStatus = iota
	REQUEST_ACCEPTED
	ENQUEUED
	QUE_ERROR
	DEQUE_ERROR
	TRIGGER_ERROR
	DEPLOY_SUCCESS
	DEPLOY_INIT
	GIT_ERROR
	GIT_SUCCESS
	ACD_ERROR
	ACD_SUCCESS
	HELM_ERROR
	HELM_SUCCESS
)

func (AppstoreDeploymentStatus) String

func (a AppstoreDeploymentStatus) String() string

type ChartComponent added in v0.6.28

type ChartComponent struct {
	Name   string `json:"name"`
	Values string `json:"values"`
}

type ChartComponents added in v0.6.28

type ChartComponents struct {
	ChartComponent []*ChartComponent `json:"charts"`
}

type ChartInfoRes added in v0.4.28

type ChartInfoRes struct {
	AppStoreApplicationVersionId int    `json:"appStoreApplicationVersionId"`
	Readme                       string `json:"readme"`
	ValuesSchemaJson             string `json:"valuesSchemaJson"`
	Notes                        string `json:"notes"`
}

type ChartRepoSearch

type ChartRepoSearch struct {
	AppStoreApplicationVersionId int    `json:"appStoreApplicationVersionId"`
	ChartId                      int    `json:"chartId"`
	ChartName                    string `json:"chartName"`
	ChartRepoId                  int    `json:"chartRepoId"`
	DockerArtifactStoreId        string `json:"DockerArtifactStoreId"`
	ChartRepoName                string `json:"chartRepoName"`
	Version                      string `json:"version"`
	Deprecated                   bool   `json:"deprecated"`
}

type EnvironmentDetails added in v0.7.0

type EnvironmentDetails struct {
	EnvironmentName *string `json:"environmentName,omitempty"`
	// id in which app is deployed
	EnvironmentId *int32 `json:"environmentId,omitempty"`
	// namespace corresponding to the environemnt
	Namespace *string `json:"namespace,omitempty"`
	// if given environemnt is marked as production or not, nullable
	IsPrduction *bool `json:"isPrduction,omitempty"`
	// cluster corresponding to the environemt where application is deployed
	ClusterName *string `json:"clusterName,omitempty"`
	// clusterId corresponding to the environemt where application is deployed
	ClusterId *int32 `json:"clusterId,omitempty"`

	IsVirtualEnvironment *bool `json:"isVirtualEnvironment"`
}

type HelmAppDetails added in v0.7.0

type HelmAppDetails struct {
	// time when this application was last deployed/updated
	LastDeployedAt *time.Time `json:"lastDeployedAt,omitempty"`
	// name of the helm application/helm release name
	AppName *string `json:"appName,omitempty"`
	// unique identifier for app
	AppId *string `json:"appId,omitempty"`
	// name of the chart
	ChartName *string `json:"chartName,omitempty"`
	// url/location of the chart icon
	ChartAvatar *string `json:"chartAvatar,omitempty"`
	// unique identifier for the project, APP with no project will have id `0`
	ProjectId *int32 `json:"projectId,omitempty"`
	// chart version
	ChartVersion      *string             `json:"chartVersion,omitempty"`
	EnvironmentDetail *EnvironmentDetails `json:"environmentDetail,omitempty"`
	AppStatus         *string             `json:"appStatus,omitempty"`
}

type HelmReleaseStatusConfig added in v0.6.24

type HelmReleaseStatusConfig struct {
	InstallAppVersionHistoryId int
	Message                    string
	IsReleaseInstalled         bool
	ErrorInInstallation        bool
}

type IAVHistory added in v0.3.21

type IAVHistory struct {
	ChartMetaData         IAVHistoryChartMetaData `json:"chartMetadata"`
	DeployedAt            IAVHistoryDeployedAt    `json:"deployedAt"`
	DockerImages          []string                `json:"dockerImages"`
	Version               int                     `json:"version"`
	InstalledAppVersionId int                     `json:"installedAppVersionId"`
}

type IAVHistoryChartMetaData added in v0.3.21

type IAVHistoryChartMetaData struct {
	ChartName    string   `json:"chartName"`
	ChartVersion string   `json:"chartVersion"`
	Description  string   `json:"description"`
	Home         string   `json:"home"`
	Sources      []string `json:"sources"`
}

type IAVHistoryDeployedAt added in v0.3.21

type IAVHistoryDeployedAt struct {
	Nanos   int   `json:"nanos,omitempty"`
	Seconds int64 `json:"seconds,omitempty"`
}

type IAVHistoryValues added in v0.3.21

type IAVHistoryValues struct {
	Manifest   string `json:"manifest"`
	ValuesYaml string `json:"valuesYaml"`
}

type InstallAppVersionChartDTO added in v0.3.17

type InstallAppVersionChartDTO struct {
	AppStoreChartId               int                            `json:"-"`
	ChartName                     string                         `json:"-"`
	ChartVersion                  string                         `json:"-"`
	InstallAppVersionChartRepoDTO *InstallAppVersionChartRepoDTO `json:"-"`
}

type InstallAppVersionChartRepoDTO added in v0.3.17

type InstallAppVersionChartRepoDTO struct {
	RepoName string `json:"-"`
	RepoUrl  string `json:"-"`
	UserName string `json:"-"`
	Password string `json:"-"`
}

type InstallAppVersionDTO

type InstallAppVersionDTO struct {
	Id                           int                            `json:"id,omitempty"` // TODO: redundant data; refers to InstalledAppVersionId
	AppId                        int                            `json:"appId,omitempty"`
	AppName                      string                         `json:"appName,omitempty"` // AppName can be display_name in case of external-apps (which is not unique in that case)
	TeamId                       int                            `json:"teamId,omitempty"`
	TeamName                     string                         `json:"teamName,omitempty"`
	EnvironmentId                int                            `json:"environmentId,omitempty"`
	InstalledAppId               int                            `json:"installedAppId,omitempty,notnull"`
	InstalledAppVersionId        int                            `json:"installedAppVersionId,omitempty,notnull"`
	InstalledAppVersionHistoryId int                            `json:"installedAppVersionHistoryId,omitempty"`
	AppStoreVersion              int                            `json:"appStoreVersion,omitempty,notnull"`
	ValuesOverrideYaml           string                         `json:"valuesOverrideYaml,omitempty"`
	Readme                       string                         `json:"readme,omitempty"`
	ReferenceValueId             int                            `json:"referenceValueId, omitempty" validate:"required,number"`                            // TODO: ineffective usage of omitempty; can be removed
	ReferenceValueKind           string                         `json:"referenceValueKind, omitempty" validate:"oneof=DEFAULT TEMPLATE DEPLOYED EXISTING"` // TODO: ineffective usage of omitempty; can be removed
	AppStoreId                   int                            `json:"appStoreId"`
	AppStoreName                 string                         `json:"appStoreName"`
	Deprecated                   bool                           `json:"deprecated"`
	ClusterId                    int                            `json:"clusterId"` // needed for hyperion mode
	Namespace                    string                         `json:"namespace"` // needed for hyperion mode
	AppOfferingMode              string                         `json:"appOfferingMode"`
	GitOpsPath                   string                         `json:"gitOpsPath"`
	GitHash                      string                         `json:"gitHash"`
	DeploymentAppType            string                         `json:"deploymentAppType"` // TODO: instead of string, use enum
	AcdPartialDelete             bool                           `json:"acdPartialDelete"`
	InstalledAppDeleteResponse   *InstalledAppDeleteResponseDTO `json:"deleteResponse,omitempty"`
	UpdatedOn                    time.Time                      `json:"updatedOn"`
	IsVirtualEnvironment         bool                           `json:"isVirtualEnvironment"`
	HelmPackageName              string                         `json:"helmPackageName"`
	GitOpsRepoURL                string                         `json:"gitRepoURL"`
	TargetRevision               string                         `json:"-"`
	IsCustomRepository           bool                           `json:"-"`
	IsNewGitOpsRepo              bool                           `json:"-"`
	ACDAppName                   string                         `json:"-"`
	Environment                  *bean.EnvironmentBean          `json:"-"`
	ChartGroupEntryId            int                            `json:"-"`
	DefaultClusterComponent      bool                           `json:"-"`
	Status                       AppstoreDeploymentStatus       `json:"-"`
	UserId                       int32                          `json:"-"`
	ForceDelete                  bool                           `json:"-"`
	NonCascadeDelete             bool                           `json:"-"`
	EnvironmentName              string                         `json:"-"`
	InstallAppVersionChartDTO    *InstallAppVersionChartDTO     `json:"-"`
	AppStoreApplicationVersionId int
	DisplayName                  string `json:"-"` // used only for external apps
	IsChartLinkRequest           bool
	GitOpsId                     int
}

func (*InstallAppVersionDTO) GetAppIdentifierString added in v0.7.3

func (chart *InstallAppVersionDTO) GetAppIdentifierString() string

func (*InstallAppVersionDTO) GetDeploymentConfig added in v0.7.2

func (chart *InstallAppVersionDTO) GetDeploymentConfig() *bean2.DeploymentConfig

func (*InstallAppVersionDTO) GetFluxDeploymentConfig added in v1.8.0

func (chart *InstallAppVersionDTO) GetFluxDeploymentConfig() *bean2.DeploymentConfig

func (*InstallAppVersionDTO) GetTargetRevision added in v1.4.0

func (chart *InstallAppVersionDTO) GetTargetRevision() string

func (*InstallAppVersionDTO) IsExternalCliApp added in v1.0.1

func (chart *InstallAppVersionDTO) IsExternalCliApp() bool

IsExternalCliApp It is used for filtering the incoming request for rollback case

func (*InstallAppVersionDTO) NewInstalledAppVersionRequestDTO added in v1.0.1

func (chart *InstallAppVersionDTO) NewInstalledAppVersionRequestDTO(userId int32, installedAppId int) *InstallAppVersionDTO

func (*InstallAppVersionDTO) UpdateACDAppName added in v0.7.0

func (chart *InstallAppVersionDTO) UpdateACDAppName()

UpdateACDAppName updates ArgoCd app object name to InstallAppVersionDTO

func (*InstallAppVersionDTO) UpdateCustomGitOpsRepoUrl added in v0.6.29

func (chart *InstallAppVersionDTO) UpdateCustomGitOpsRepoUrl(allowCustomRepository bool, installAppVersionRequestType InstallAppVersionRequestType)

func (*InstallAppVersionDTO) UpdateDeploymentAppType added in v0.6.29

func (chart *InstallAppVersionDTO) UpdateDeploymentAppType(deploymentAppType string)

UpdateDeploymentAppType updates deploymentAppType to InstallAppVersionDTO

func (*InstallAppVersionDTO) UpdateLog added in v1.0.1

func (chart *InstallAppVersionDTO) UpdateLog(updatedOn time.Time)

type InstallAppVersionHistoryDto added in v0.3.21

type InstallAppVersionHistoryDto struct {
	InstalledAppInfo *InstalledAppDto `json:"installedAppInfo"`
	IAVHistory       []*IAVHistory    `json:"deploymentHistory"`
}

v1

type InstallAppVersionRequestType added in v0.6.29

type InstallAppVersionRequestType int
const (
	INSTALL_APP_REQUEST InstallAppVersionRequestType = iota
	BULK_DEPLOY_REQUEST
	DEFAULT_COMPONENT_DEPLOYMENT_REQUEST
)

type InstalledAppDeleteResponseDTO added in v0.6.18

type InstalledAppDeleteResponseDTO struct {
	DeleteInitiated  bool   `json:"deleteInitiated"`
	ClusterReachable bool   `json:"clusterReachable"`
	ClusterName      string `json:"clusterName"`
}

type InstalledAppDeploymentAction added in v0.6.29

type InstalledAppDeploymentAction struct {
	PerformGitOpsForHelmApp bool
	PerformGitOps           bool
	PerformACDDeployment    bool
	PerformHelmDeployment   bool
	PerformFluxDeployment   bool
}

InstalledAppDeploymentAction is an internal struct for Helm App deployment; used to decide the deployment steps to be performed

type InstalledAppDto added in v0.3.21

type InstalledAppDto struct {
	AppId           int    `json:"appId"`
	InstalledAppId  int    `json:"installedAppId"`
	EnvironmentName string `json:"environmentName"`
	AppOfferingMode string `json:"appOfferingMode"`
	ClusterId       int    `json:"clusterId"`
	EnvironmentId   int    `json:"environmentId"`
}

type InstalledAppsResponse

type InstalledAppsResponse struct {
	AppStoreApplicationName      string    `json:"appStoreApplicationName"`
	ChartName                    string    `json:"chartName"`
	Icon                         string    `json:"icon"`
	Status                       string    `json:"status"`
	AppName                      string    `json:"appName"`
	InstalledAppVersionId        int       `json:"installedAppVersionId"`
	AppStoreApplicationVersionId int       `json:"appStoreApplicationVersionId"`
	EnvironmentName              string    `json:"environmentName"`
	DeployedAt                   time.Time `json:"deployedAt"`
	DeployedBy                   string    `json:"deployedBy"`
	DeploymentAppType            string    `json:"deploymentAppType,omitempty"` // TODO: instead of string, use enum
	InstalledAppsId              int       `json:"installedAppId"`
	Readme                       string    `json:"readme"`
	EnvironmentId                int       `json:"environmentId"`
	Deprecated                   bool      `json:"deprecated"`
	AppOfferingMode              string    `json:"appOfferingMode" validate:"oneof=EA_ONLY FULL"`
	ClusterId                    int       `json:"clusterId"` // needed for hyperion app
	Namespace                    string    `json:"namespace"` // needed for hyperion app
}

type RefChartProxyDir

type RefChartProxyDir string

type UpdateProjectHelmAppDTO added in v0.6.11

type UpdateProjectHelmAppDTO struct {
	AppId          string `json:"appId"`
	InstalledAppId int    `json:"installedAppId"`
	AppName        string `json:"appName"`
	TeamId         int    `json:"teamId"`
	UserId         int32  `json:"userId"`
}

type ValuesCategoryResponse

type ValuesCategoryResponse struct {
	ReferenceType      json.RawMessage      `json:"referenceType,omitempty"` //json format user value
	ValuesListCategory []ValuesListCategory `json:"valuesListCategory,omitempty"`
}

type ValuesListCategory

type ValuesListCategory struct {
	Id                int             `json:"id,omitempty"`
	AppStoreVersionId int             `json:"appStoreVersionId,omitempty,notnull"`
	ReferenceId       int             `json:"referenceId,omitempty,notnull"`
	Name              string          `json:"name,omitempty"`
	ValuesOverride    json.RawMessage `json:"valuesOverride,omitempty"` //json format user value
}

Jump to

Keyboard shortcuts

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