model

package
v0.0.0-...-daa3d23 Latest Latest
Warning

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

Go to latest
Published: Jun 15, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CrossPlaneResource       = "crossplane"
	CrossPlaneClusterUpdate  = "crossplane-cluster-update"
	CrossPlaneProjectSync    = "crossplane-project-sync"
	CrossPlaneProjectDelete  = "crossplane-project-delete"
	CrossPlaneProviderUpdate = "crossplane-provider-update"
)
View Source
const (
	TektonPipelineConfigUseCase = "tekton"
	TektonHostName              = "tekton"
	TektonProjectSync           = "tekton-project-sync"
)

Variables

Functions

func PrepareCrossplaneProviderName

func PrepareCrossplaneProviderName(providerType string) string

Types

type AppConfig

type AppConfig struct {
	AppName             string `json:"AppName,omitempty"`
	Version             string `json:"Version,omitempty"`
	Category            string `json:"Category,omitempty"`
	Description         string `json:"Description,omitempty"`
	ChartName           string `json:"ChartName,omitempty"`
	RepoName            string `json:"RepoName,omitempty"`
	ReleaseName         string `json:"ReleaseName,omitempty"`
	RepoURL             string `json:"RepoURL,omitempty"`
	Namespace           string `json:"Namespace,omitempty"`
	CreateNamespace     bool   `json:"CreateNamespace"`
	PrivilegedNamespace bool   `json:"PrivilegedNamespace"`
	Icon                string `json:"Icon,omitempty"`
	LaunchURL           string `json:"LaunchURL,omitempty"`
	LaunchUIDescription string `json:"LaunchUIDescription,omitempty"`
}

type AppDeployAction

type AppDeployAction string
const (
	AppInstallAction   AppDeployAction = "install"
	AppUnInstallAction AppDeployAction = "delete"
	AppUpgradeAction   AppDeployAction = "upgrade"
	AppUpdateAction    AppDeployAction = "update"
)

type AppStatus

type AppStatus string
const (
	AppIntallingStatus         AppStatus = "Installing"
	AppIntalledStatus          AppStatus = "Installed"
	AppUpgradingStatus         AppStatus = "Upgrading"
	AppUpgradedStatus          AppStatus = "Upgraded"
	AppIntallFailedStatus      AppStatus = "Installion Failed"
	AppUpgradeFaileddStatus    AppStatus = "Upgrade Failed"
	AppUnInstalledStatus       AppStatus = "UnInstalled"
	AppUnUninstallFailedStatus AppStatus = "UnInstall Failed"
	AppUnInstallingStatus      AppStatus = "UnInstalling"
)

type ApplicationDeleteRequest

type ApplicationDeleteRequest struct {
	PluginName  string `json:"plugin_name,omitempty"`
	Namespace   string `json:"namespace,omitempty"`
	ReleaseName string `json:"release_name,omitempty"`
	Timeout     uint32 `json:"timeout,omitempty"`
	ClusterName string `json:"cluster_name,omitempty"`
}

type ApplicationDeployRequest

type ApplicationDeployRequest struct {
	PluginName     string `json:"PluginName,omitempty"`
	RepoName       string `json:"RepoName,omitempty"`
	RepoURL        string `json:"RepoURL,omitempty"`
	ChartName      string `json:"ChartName,omitempty"`
	Namespace      string `json:"Namespace,omitempty"`
	ReleaseName    string `json:"ReleaseName,omitempty"`
	Timeout        uint32 `json:"Timeout,omitempty"`
	Version        string `json:"Version,omitempty"`
	ClusterName    string `json:"ClusterName,omitempty"`
	OverrideValues string `json:"OverrideValues,omitempty"`
}

type ApplicationInstallRequest

type ApplicationInstallRequest struct {
	PluginName     string `json:"PluginName,omitempty"`
	RepoName       string `json:"RepoName,omitempty"`
	RepoURL        string `json:"RepoURL,omitempty"`
	ChartName      string `json:"ChartName,omitempty"`
	Namespace      string `json:"Namespace,omitempty"`
	ReleaseName    string `json:"ReleaseName,omitempty"`
	Timeout        uint32 `json:"Timeout,omitempty"`
	Version        string `json:"Version,omitempty"`
	ClusterName    string `json:"ClusterName,omitempty"`
	OverrideValues string `json:"OverrideValues,omitempty"`
}

func (*ApplicationInstallRequest) String

func (a *ApplicationInstallRequest) String() string

type ArgoCDProject

type ArgoCDProject struct {
	Id             string `json:"id,omitempty"`
	GitProjectId   string `json:"git_project_id,omitempty"`
	GitProjectUrl  string `json:"git_project_url,omitempty"`
	Status         string `json:"status,omitempty"`
	LastUpdateTime string `json:"last_update_time,omitempty"`
}

type ArgoCDProjectStatus

type ArgoCDProjectStatus string
const (
	ArgoCDProjectAvailable           ArgoCDProjectStatus = "available"
	ArgoCDProjectConfigured          ArgoCDProjectStatus = "configured"
	ArgoCDProjectConfigurationFailed ArgoCDProjectStatus = "configuration-failed"
)

type ClusterClaim

type ClusterClaim struct {
	Metadata metav1.ObjectMeta  `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
	Spec     ClusterClaimSpec   `json:"spec,omitempty" protobuf:"bytes,1,opt,name=spec"`
	Status   ClusterClaimStatus `json:"status,omitempty" protobuf:"bytes,2,opt,name=status"`
}

type ClusterClaimCondition

type ClusterClaimCondition struct {
	LastTransitionTime string `json:"lastTransitionTime,omitempty" protobuf:"bytes,1,opt,name=lastTransitionTime"`
	Reason             string `json:"reason,omitempty" protobuf:"bytes,2,opt,name=reason"`
	Status             string `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"`
	Type               string `json:"type,omitempty" protobuf:"bytes,4,opt,name=type"`
}

type ClusterClaimList

type ClusterClaimList struct {
	Items []ClusterClaim `json:"items,omitempty" protobuf:"bytes,1,opt,name=items"`
}

type ClusterClaimSpec

type ClusterClaimSpec struct {
	Id string `json:"id,omitempty"`
}

type ClusterClaimStatus

type ClusterClaimStatus struct {
	Conditions         []ClusterClaimCondition `json:"conditions,omitempty" protobuf:"bytes,1,opt,name=conditions"`
	ControlPlaneStatus string                  `json:"controlPlaneStatus,omitempty"`
	NodePoolStatus     string                  `json:"nodePoolStatus,omitempty"`
}

type ClusterGitoptsConfig

type ClusterGitoptsConfig struct {
	Usecase    string `json:"usecase,omitempty"`
	ProjectUrl string `json:"project_url,omitempty"`
	Status     string `json:"status,omitempty"`
}

type Condition

type Condition struct {
	// Type of this condition. At most one of each condition type may apply to
	// a resource at any point in time.
	Type ConditionType `json:"type"`

	// Status of this condition; is it currently True, False, or Unknown?
	Status corev1.ConditionStatus `json:"status"`

	// LastTransitionTime is the last time this condition transitioned from one
	// status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime"`

	// A Reason for this condition's last transition from one status to another.
	Reason ConditionReason `json:"reason"`

	// A Message containing details about this condition's last transition from
	// one status to another, if any.
	// +optional
	Message string `json:"message,omitempty"`
}

A Condition that may apply to a resource.

type ConditionReason

type ConditionReason string

A ConditionReason represents the reason a resource is in a condition.

const (
	ReasonAvailable   ConditionReason = "Available"
	ReasonUnavailable ConditionReason = "Unavailable"
	ReasonCreating    ConditionReason = "Creating"
	ReasonDeleting    ConditionReason = "Deleting"
)

Reasons a resource is or is not ready.

const (
	ReasonReconcileSuccess ConditionReason = "ReconcileSuccess"
	ReasonReconcileError   ConditionReason = "ReconcileError"
	ReasonReconcilePaused  ConditionReason = "ReconcilePaused"
)

Reasons a resource is or is not synced.

type ConditionType

type ConditionType string

A ConditionType represents a condition a resource could be in.

const (
	TypeHealthy   ConditionType = "Healthy"
	TypeReady     ConditionType = "Ready"
	TypeInstalled ConditionType = "Installed"
	TypeSynced    ConditionType = "Synced"
)

Condition types.

type ConditionedStatus

type ConditionedStatus struct {
	Conditions []Condition `json:"conditions,omitempty"`
}

type ConfigPayload

type ConfigPayload struct {
	// Action Action to be performed
	Action string `json:"action"`

	// Data Data for the action
	Data map[string]interface{} `json:"data"`

	// PluginName Plugin name for the operation
	PluginName string `json:"plugin_name"`

	// Resource Resource to be configured
	Resource string `json:"resource"`
}

ConfigPayload defines model for ConfigPayload.

type ConfigureParameters

type ConfigureParameters struct {
	Resource string
	Action   string
}

type CredentialIdentifier

type CredentialIdentifier struct {
	Identifier string `json:"Identifier,omitempty"`
	Id         string `json:"Id,omitempty"`
	Url        string `json:"Url,omitempty"`
}

type CreteRequestPayload

type CreteRequestPayload struct {
	RepoName  string `json:"repo_name" required:"true"`
	RepoURL   string `json:"repo_url" required:"true"`
	ChartName string `json:"chart_name" required:"true"`

	Namespace   string `json:"namespace" required:"true"`
	ReleaseName string `json:"release_name" required:"true"`
	Timeout     int    `json:"timeout" default:"5"`
	Version     string `json:"version"`

	ClusterName string `json:"cluster_name" required:"false"`
	ValuesYaml  string `json:"values_yaml" required:"false"`
}

type CrossplaneClusterUpdate

type CrossplaneClusterUpdate struct {
	ManagedClusterName string `json:"managedClusterName,omitempty"`
	ManagedClusterId   string `json:"managedClusterId,omitempty"`
	GitProjectId       string `json:"gitProjectId,omitempty"`
	RepoURL            string `json:"repoURL,omitempty"`
}

type CrossplaneProject

type CrossplaneProject struct {
	Id             string `json:"id,omitempty"`
	GitProjectId   string `json:"git_project_id,omitempty"`
	GitProjectUrl  string `json:"git_project_url,omitempty"`
	Status         string `json:"status,omitempty"`
	LastUpdateTime string `json:"last_update_time,omitempty"`
}

type CrossplaneProjectStatus

type CrossplaneProjectStatus string
const (
	CrossplaneProjectAvailable            CrossplaneProjectStatus = "available"
	CrossplaneProjectConfigured           CrossplaneProjectStatus = "configured"
	CrossplaneProjectConfigurationOngoing CrossplaneProjectStatus = "configuration-ongoing"
	CrossplaneProjectConfigurationFailed  CrossplaneProjectStatus = "configuration-failed"
)

type CrossplaneProvider

type CrossplaneProvider struct {
	Id              string `json:"id,omitempty"`
	CloudType       string `json:"cloud_type,omitempty"`
	ProviderName    string `json:"provider_name,omitempty"`
	CloudProviderId string `json:"cloud_provider_id,omitempty"`
	Status          string `json:"status,omitempty"`
}

type CrossplaneProviderStatus

type CrossplaneProviderStatus string
const (
	CrossPlaneProviderOutofSynch    CrossplaneProviderStatus = "OutOfSynch"
	CrossPlaneProviderInSynch       CrossplaneProviderStatus = "InSynch"
	CrossPlaneProviderFailedToSynch CrossplaneProviderStatus = "FailedToSynch"
	CrossPlaneProviderReady         CrossplaneProviderStatus = "Ready"
	CrossPlaneProviderNotReady      CrossplaneProviderStatus = "NotReady"
)

type CrossplaneProviderUpdate

type CrossplaneProviderUpdate struct {
	ProviderId   string `json:"providerId,omitempty"`
	ProviderName string `json:"providerName,omitempty"`
	CloudType    string `json:"cloudType,omitempty"`
	GitProjectId string `json:"gitProjectId,omitempty"`
	RepoURL      string `json:"repoURL,omitempty"`
}

type CrossplaneUseCase

type CrossplaneUseCase struct {
	Type                string               `json:"Type,omitempty"`
	RepoURL             string               `json:"RepoURL,omitempty"`
	VaultCredIdentifier string               `json:"VaultCredIdentifier,omitempty"`
	Timeout             uint32               `json:"Timeout,omitempty"`
	OverrideValues      map[string]string    `json:"OverrideValues,omitempty"`
	CrossplaneProviders []CrossplaneProvider `json:"ProviderInfo,omitempty"`
}

type DeleteRequestPayload

type DeleteRequestPayload struct {
	Namespace   string `json:"namespace" required:"true"`
	ReleaseName string `json:"release_name" required:"true"`
	Timeout     int    `json:"timeout" default:"5"`

	ClusterName string `json:"cluster_name" required:"false"`
}

type DeployRequest

type DeployRequest interface {
	String() string
}

type DeployerDeleteRequest

type DeployerDeleteRequest struct {
	// ClusterName Cluster in which to be deleted, default in-build cluster
	ClusterName *string `json:"cluster_name,omitempty"`

	// Namespace Namespace chart to be installed
	Namespace string `json:"namespace"`

	// PluginName Plugin name
	PluginName string `json:"plugin_name"`

	// ReleaseName Release name to be used for install
	ReleaseName string `json:"release_name"`

	// Timeout Timeout for the application installation
	Timeout int `json:"timeout"`
}

DeployerDeleteRequest defines model for DeployerDeleteRequest.

type EventListener

type EventListener struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Status EventListenerStatus `json:"status,omitempty"`
}

type EventListenerStatus

type EventListenerStatus struct {
	ConditionedStatus `json:",inline"`
}

type EventListeners

type EventListeners struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []EventListener `json:"items"`
}

type Identifiers

type Identifiers string
const (
	Container            Identifiers = "container"
	GitOrg               Identifiers = "gitOrg"
	ManagedCluster       Identifiers = "managedCluster"
	CrossplaneGitProject Identifiers = "crossplaneGitProject"
	TektonGitProject     Identifiers = "tektonGitProject"
)

type ListRequestPayload

type ListRequestPayload struct {
	RepoName  string `json:"repo_name" required:"true"`
	Namespace string `json:"namespace" required:"true"`
	Timeout   int    `json:"timeout" default:"5"`

	ClusterName string `json:"cluster_name" required:"false"`
}

type Provider

type Provider struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Status ProviderStatus `json:"status,omitempty"`
}

type ProviderList

type ProviderList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Provider `json:"items"`
}

ProviderList contains a list of Provider.

type ProviderStatus

type ProviderStatus struct {
	ConditionedStatus `json:",inline"`
}

ProviderStatus represents the observed state of a Provider.

type Request

type Request struct {
	RepoName  string `json:"repo_name" required:"true"`
	RepoURL   string `json:"repo_url" required:"true"`
	ChartName string `json:"chart_name" required:"true"`

	Namespace   string `json:"namespace" required:"true"`
	ReleaseName string `json:"release_name" required:"true"`
	Timeout     int    `json:"timeout" default:"5"`
	Version     string `json:"version"`

	ClusterName string `json:"cluster_name" required:"false"`
}

type RequestPayload

type RequestPayload struct {
	PluginName string          `json:"plugin_name" required:"true"`
	Action     string          `json:"action" required:"true"`
	Data       json.RawMessage `json:"data" required:"true"` // TODO: This will be enhanced along with plugin implementation
}

func (*RequestPayload) ToString

func (r *RequestPayload) ToString() string

type ResponsePayload

type ResponsePayload struct {
	Status  string          `json:"status"`
	Message json.RawMessage `json:"message,omitempty"` // TODO: This will be enhanced along with plugin implementation
}

func (*ResponsePayload) ToString

func (rsp *ResponsePayload) ToString() string

type TektonPipeline

type TektonPipeline struct {
	Id                     string   `json:"id,omitempty"`
	PipelineName           string   `json:"pipeline_name,omitempty"`
	WebhookURL             string   `json:"webhook_url,omitempty"`
	GitOrgId               string   `json:"git_org_id,omitempty"`
	GitOrgUrl              string   `json:"git_org_url,omitempty"`
	ContainerRegId         []string `json:"container_reg_id,omitempty"`
	ManagedClusterId       string   `json:"managed_cluster_id,omitempty"`
	CrossplaneGitProjectId string   `json:"crossplane_git_project_id,omitempty"`
	Status                 string   `json:"status,omitempty"`
	LastUpdateTime         string   `json:"last_update_time,omitempty"`
	WorkflowId             string   `json:"workflow_id,omitempty"`
	WorkflowStatus         string   `json:"workflow_status,omitempty"`
}

type TektonProject

type TektonProject struct {
	Id             string `json:"id,omitempty"`
	GitProjectId   string `json:"git_project_id,omitempty"`
	GitProjectUrl  string `json:"git_project_url,omitempty"`
	Status         string `json:"status,omitempty"`
	LastUpdateTime string `json:"last_update_time,omitempty"`
	WorkflowId     string `json:"workflow_id,omitempty"`
	WorkflowStatus string `json:"workflow_status,omitempty"`
}

type TektonProjectStatus

type TektonProjectStatus string
const (
	TektonProjectAvailable            TektonProjectStatus = "available"
	TektonProjectConfigured           TektonProjectStatus = "configured"
	TektonProjectConfigurationOngoing TektonProjectStatus = "configuration-ongoing"
	TektonProjectConfigurationFailed  TektonProjectStatus = "configuration-failed"
)

type TektonProjectSyncUsecase

type TektonProjectSyncUsecase struct {
	Type                string            `json:"Type,omitempty"`
	RepoURL             string            `json:"RepoURL,omitempty"`
	VaultCredIdentifier string            `json:"VaultCredIdentifier,omitempty"`
	Timeout             uint32            `json:"Timeout,omitempty"`
	OverrideValues      map[string]string `json:"OverrideValues,omitempty"`
	PushToDefaultBranch bool              `json:"PushToDefaultBranch,omitempty"`
}

type UseCase

type UseCase struct {
	Type                string            `json:"Type,omitempty"`
	RepoURL             string            `json:"RepoURL,omitempty"`
	VaultCredIdentifier string            `json:"VaultCredIdentifier,omitempty"`
	Timeout             uint32            `json:"Timeout,omitempty"`
	OverrideValues      map[string]string `json:"OverrideValues,omitempty"`
	PushToDefaultBranch bool              `json:"PushToDefaultBranch,omitempty"`
}

type WorkFlowStatus

type WorkFlowStatus string
const (
	WorkFlowStatusStarted    WorkFlowStatus = "started"
	WorkFlowStatusCompleted  WorkFlowStatus = "completed"
	WorkFlowStatusInProgress WorkFlowStatus = "in-progress"
	WorkFlowStatusFailed     WorkFlowStatus = "failed"
)

Jump to

Keyboard shortcuts

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