v1alpha1

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Mar 30, 2022 License: Apache-2.0 Imports: 20 Imported by: 1

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the types v1alpha1 API group this group is a duck type only package that hosts common objects and interfaces in katanomi very similar to knative.dev/pkg/apis/duck/v1 or k8s.io/apimachinery/pkg/apis/meta/v1 +kubebuilder:object:generate=true +k8s:deepcopy-gen=package +groupName=meta.katanomi.dev

Index

Constants

View Source
const (
	AuthTypeBasic  = AuthType(corev1.SecretTypeBasicAuth)
	AuthTypeOAuth2 = AuthType("katanomi.dev/oauth2")
)
View Source
const (
	NotAllowedAuthCheckReason         = "NotAllowed"
	NotImplementedAuthCheckReason     = "NotImplemented"
	NeedsAuthorizationAuthCheckReason = "NeedsAuthorization"
)
View Source
const (
	CloudEventPrefix               = "dev.katanomi.cloudevents"
	CloudEventExtGitReference      = "reference"
	CloudEventExtGitBranch         = "branch"
	CloudEventExtGitCommitMessage  = "commitmessage"
	CloudEventExtGitCommitID       = "commit"
	CloudEventExtGitSourceBranch   = "sourcebranch"
	CloudEventExtGitTargetBranch   = "targetbranch"
	CloudEventExtGitTag            = "tag"
	CloudEventExtAction            = "action"
	CloudEventExtSender            = "sender"
	CloudEventExtPullRequestNumber = "number"
	CloudEventExtCodeRepository    = "repository"
	CloudEventExtWebhookType       = "webhooktype"

	// Triggered when a pull request's head branch is updated.
	// For example, when the head branch is updated from the base branch, when new commits are pushed to the head branch, or when the base branch is changed.
	// Used for matching events in trigger filter
	CloudEventExtPullRequestActionSynchronize = "synchronize"
	// pull request title changed or description changed.
	// Used for matching events in trigger filter
	CloudEventExtPullRequestActionEdited = "edited"
	// Triggered when a pull request is closed
	// Used for matching events in trigger filter
	CloudEventExtPullRequestActionClosed = "closed"
	// Triggered when a pull request is merged
	// Used for matching events in trigger filter
	CloudEventExtPullRequestActionMerged = "merged"
	// event type of open pull request
	CloudEventExtPullRequestActionOpened = "opened"
	// event type of reopen pull request
	CloudEventExtPullRequestActionReOpened = "reopened"

	// action of create branch
	// Used for matching events in trigger filter
	CloudEventExtBranchActionCreate = "create"
	// action of delete branch
	// Used for matching events in trigger filter
	CloudEventExtBranchActionDelete = "delete"

	// action of create tag
	// Used for matching events in trigger filter
	CloudEventExtTagActionCreate = "create"
	// action of delete tag
	// Used for matching events in trigger filter
	CloudEventExtTagActionDelete = "delete"

	CloudEventExtArtifactActionPush = "push"
	// artifact type. eg. OCIHelmChart OCIContainerImage
	CloudEventExtArtifactType = "artifacttype"
	// resource URL. eg. katanomi/core:latest
	CloudEventExtArtifactResourceURL = "resourceurl"
	// is the digest of the manifest. eg. sha256:92d648...
	CloudEventExtArtifactDigest = "digest"
	// is the tag of the artifact. (if not assigned, the value same as digest)
	CloudEventExtArtifactTag = "tag"
	// username of user who pushed artifact
	CloudEventExtArtifactOperator = "operator"
	// push time timestamp
	CloudEventExtArtifactOccurAt = "occurat"
	// concat os-arch-variant and os-variant strings of all artifact, use # connect each string.
	// eg. #linux-amd64-#linux-#linux-arm64-v8#linux-v8# (only supported when artifact_type is OCIContainerImage)
	CloudEventExtArtifactPlatform = "platform"
)
View Source
const (
	// SkippedReason a task/stage/step was skipped
	SkippedReason = "Skipped"
	// CancelledReason a task/stage/step was cancelled
	CancelledReason = "Cancelled"
	// PendingReason resource is in a pending state waiting for some condition
	PendingReason = "Pending"
	// ApprovedReason a request/approval was approved
	ApprovedReason = "Approved"
	// DeniedReason a request/approval was denied
	DeniedReason = "Denied"
	// NotRequired a request/approval is not required and therefore was "approved"
	NotRequiredReason = "NotRequired"
	// RunningReason entered in a running state, a quality gate check is executing
	RunningReason = "Running"
	// CreatedReason created the object
	CreatedReason = "Created"
	// FailedReason execution/tests/quality gates failed
	FailedReason = "Failed"
	// SucceededReason execution/tests/quality gates succeeded
	SucceededReason = "Succeeded"
	// TimeoutReason execution/tests/quality gates timed out
	TimeoutReason = "Timeout"
	// QueuedReason is in a queued state
	QueuedReason = "Queued"
	// ValidationError some validation error occurred
	ValidationError = "ValidationError"
	// ErrorReason some error occurred
	ErrorReason = "Error"
)
View Source
const (
	// key for additional information type
	StatusInfoTypePipelineKey          = "pipeline"
	StatusInfoTypeVulnerabilityScanKey = "vulnerabilityScan"
	StatusInfoTypeCodeScanKey          = "codeScan"
	StatusInfoTypeArtifactKey          = "artifact"
	StatusInfoTypeUnittestKey          = "unittest"

	// vulnerability scan severity level key
	VulnerabilityScanNoneLevelKey       = "None"
	VulnerabilityScanNegligibleLevelKey = "Negligible"
	VulnerabilityScanUnknownLevelKey    = "Unknown"
	VulnerabilityScanLowLevelKey        = "Low"
	VulnerabilityScanMediumLevelKey     = "Medium"
	VulnerabilityScanHighLevelKey       = "High"
	VulnerabilityScanCriticalLevelKey   = "Critical"
)
View Source
const (
	IntegrationLabel        = IntegrationLabelKey
	ClusterIntegrationLabel = ClusterIntegrationLabelKey
	ProjectLabel            = ProjectLabelKey
	RepositoryLabel         = RepositoryLabelKey
)
View Source
const (
	// SourceLabelKey indicates the source of the resource
	SourceLabelKey = "katanomi.dev/source"

	// SecretLabelKey secret resource name
	SecretLabelKey = "core.kubernetes.io/secret" //nolint:gosec
	// NamespaceLabelKey namespace of a resource
	NamespaceLabelKey = "core.kubernetes.io/namespace"
	// IntegrationClassLabelKey for integrationclass resource
	IntegrationClassLabelKey = "core.katanomi.dev/integrationClass"

	// ClusterIntegrationLabelKey for cluster integration resources
	ClusterIntegrationLabelKey = "integrations.katanomi.dev/clusterIntegration"
	// IntegrationLabelKey for integration resources
	IntegrationLabelKey = "integrations.katanomi.dev/integration"
	// ProjectLabelKey for integration resources
	ProjectLabelKey = "integrations.katanomi.dev/project"
	// RepositoryLabelKey for integration resources
	RepositoryLabelKey = "integrations.katanomi.dev/repository"

	// IntegrationAddressAnnotation annotation key to store integration server address
	IntegrationAddressAnnotation = "integrations.katanomi.dev/integration.address"

	// IntegrationResourceScope annotation key to store integration resource scope
	IntegrationResourceScope = "integrations.katanomi.dev/integration.resourceScope"

	// IntegrationSecretApplyNamespaces annotation key to store apply namespace for current secret
	IntegrationSecretApplyNamespaces = "integrations.katanomi.dev/secret.applyNamespaces"
)

Common labels

View Source
const (
	// CreatedTimeAnnotationKey creation time for objects
	CreatedTimeAnnotationKey = "katanomi.dev/creationTime"
	// CrossClusterAnnotationKey annotates a cross cluster resource/action
	CrossClusterAnnotationKey = "katanomi.dev/crossCluster"
	// ReconcileTriggeredAnnotationKey annotation key to trigger reconcile of objects
	ReconcileTriggeredAnnotationKey = "katanomi.dev/reconcileTriggeredOn"
	// NamespaceAnnotationKey namespace of objects
	NamespaceAnnotationKey = "katanomi.dev/namespace"
	// TriggeredByAnnotationKey annotation to store a TriggeredBy struct json
	TriggeredByAnnotationKey = "katanomi.dev/triggeredBy"
	// CreatedByAnnotationKey annotation key to store resource creation username
	CreatedByAnnotationKey = "katanomi.dev/createdBy"
	// UpdatedByAnnotationKey annotation key to store resource update username
	UpdatedByAnnotationKey = "katanomi.dev/updatedBy"
	// SecretTypeAnnotationKey annotation key for an existed secret with a different type
	SecretTypeAnnotationKey = "katanomi.dev/secretType" //nolint:gosec
	// ClusterNameAnnotationKey annotation key to store resource cluster name
	ClusterNameAnnotationKey = "integrations.katanomi.dev/clusterName"
	// TriggerNameAnnotationKey annotation key to store a friendly trigger name
	TriggerNameAnnotationKey = "katanomi.dev/triggerName"
)

Common Annotations

View Source
const (
	// Keys used in IntegrationClass.status.attributes
	AuthAttributeKey                   = "auth"
	ReplicationPolicyTypesAttributeKey = "replicationPolicyTypes"
	ResourceTypesAttributeKey          = "resourceTypes"
	MethodsAttributeKey                = "methods"
	AllowEmptySecretAttributeKey       = "allowEmptySecret"
	DefaultProjectTypeAttributeKey     = "defaultProjectSubType"
)

Attribute keys for Integrations

View Source
const (
	LabelSourceSystem = "system"
	LabelSourceUser   = "user"
)

Attribute values for label source

View Source
const (
	// ArtifactAliasAnnotationKey indicates the alias of the artifact parameter in the delivery
	ArtifactAliasAnnotationKey = "alias"

	// ImageRegistryEndpoint for artifact endpoint
	ImageRegistryEndpoint = "imageRegistryEndpoint"
)

Annotation keys for artifact parameter

View Source
const (
	FirstPage       = 1
	DefaultPageSize = 20
)
View Source
const (
	// Build metadata key.
	BuildMetadataKey = "builds.katanomi.dev/buildrun"
)
View Source
const (
	ConditionReasonNotSet = "NotSet"
)

Variables

View Source
var (
	CodeQualityGVK            = GroupVersion.WithKind("CodeQuality")
	CodeQualityLineChartGVK   = GroupVersion.WithKind("CodeQualityLineChart")
	CodeQualityTaskMetricsGVK = GroupVersion.WithKind("CodeQualityTaskMetrics")
)
View Source
var (
	GitBranchGVK     = GroupVersion.WithKind("GitBranch")
	GitBranchListGVK = GroupVersion.WithKind("GitBranchList")
)
View Source
var (
	GitCommitGVK     = GroupVersion.WithKind("GitCommit")
	GitCommitListGVK = GroupVersion.WithKind("GitCommitList")
)
View Source
var (
	GitCommitCommentGVK     = GroupVersion.WithKind("GitCommitComment")
	GitCommitCommentListGVK = GroupVersion.WithKind("GitCommitCommentList")
)
View Source
var (
	GitCommitStatusGVK     = GroupVersion.WithKind("GitCommitStatus")
	GitCommitStatusListGVK = GroupVersion.WithKind("GitCommitStatusList")
)
View Source
var (
	GitPullRequestsGVK        = GroupVersion.WithKind("GitPullRequest")
	GitPullRequestsListGVK    = GroupVersion.WithKind("GitPullRequestList")
	GitPullRequestNotesGVK    = GroupVersion.WithKind("GitPullRequestNote")
	GitPullRequestNoteListGVK = GroupVersion.WithKind("GitPullRequestNoteList")
)
View Source
var (
	GitRepoFileGVK     = GroupVersion.WithKind("GitRepositoryFile")
	GitRepoFileListGVK = GroupVersion.WithKind("GitRepositoryFileList")
)
View Source
var (
	GitRepoGVK     = GroupVersion.WithKind("GitRepository")
	GitRepoListGVK = GroupVersion.WithKind("GitRepositoryList")
)
View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "meta.katanomi.dev", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var ArtifactGVK = GroupVersion.WithKind("Artifact")
View Source
var ArtifactListGVK = GroupVersion.WithKind("ArtifactList")
View Source
var AttributeGVK = GroupVersion.WithKind("Attribute")
View Source
var AuthCheckGVK = GroupVersion.WithKind("AuthCheck")
View Source
var BranchGVK = GroupVersion.WithKind("Branch")
View Source
var BranchListGVK = GroupVersion.WithKind("BranchList")
View Source
var (
	CodeQualityProjectOverviewGVK = GroupVersion.WithKind("CodeQualityProjectOverview")
)
View Source
var DefinitionTriggeredTypeValues = definitionTriggeredTypeValuesType{

	Manual: "Manual",

	Automated: "Automated",
}
View Source
var ImageConfigGVK = GroupVersion.WithKind("ImageConfig")
View Source
var IssueGVK = GroupVersion.WithKind("Issue")
View Source
var IssueListGVK = GroupVersion.WithKind("IssueList")
View Source
var ProjectGVK = GroupVersion.WithKind("Project")
View Source
var ProjectListGVK = GroupVersion.WithKind("ProjectList")
View Source
var RepositoryGVK = GroupVersion.WithKind("Repository")
View Source
var RepositoryListGVK = GroupVersion.WithKind("RepositoryList")
View Source
var UserGVK = GroupVersion.WithKind("User")
View Source
var UserListGVK = GroupVersion.WithKind("UserList")

Functions

func ArtifactResourceAttributes

func ArtifactResourceAttributes(verb string) authv1.ResourceAttributes

ArtifactResourceAttributes returns a ResourceAttribute object to be used in a filter

func AttributeResourceAttributes added in v0.3.0

func AttributeResourceAttributes(verb string) authv1.ResourceAttributes

AttributeResourceAttributes returns a ResourceAttribute object to be used in a filter

func BranchResourceAttributes added in v0.3.0

func BranchResourceAttributes(verb string) authv1.ResourceAttributes

BranchResourceAttributes returns a ResourceAttribute object to be used in a filter

func CopyAnnotations

func CopyAnnotations(object, dest metav1.Object)

CopyAnnotations from the left side object to the righ side will override any existing values

func CopyLabels

func CopyLabels(object, dest metav1.Object)

CopyLabels from the left side object to the righ side will override any existing labels

func CopyMapStringString

func CopyMapStringString(object, dest map[string]string) map[string]string

CopyMapStringString copies content from a map to annother

func GetNamespacedNameFromObject

func GetNamespacedNameFromObject(obj metav1.Object) (named types.NamespacedName)

GetNamespacedNameFromObject returns a types.NamespacedName from an object

func GetNamespacedNameFromRef

func GetNamespacedNameFromRef(ref *corev1.ObjectReference) (named types.NamespacedName)

GetNamespacedNameFromRef returns a types.NamespacedName from an object reference

func GetObjectReferenceFromObject

func GetObjectReferenceFromObject(obj metav1.Object, opts ...ObjectRefOptionsFunc) (ref corev1.ObjectReference)

GetObjectReferenceFromObject extracts an object reference from an object

func GitRepositoryResourceAttributes

func GitRepositoryResourceAttributes(verb string) authv1.ResourceAttributes

GitRepositoryResourceAttributes returns a ResourceAttribute object to be used in a filter

func HasAnnotation

func HasAnnotation(obj metav1.Object, key, value string) bool

HasAnnotation returns true if the object has the annotation and the values matches

func HasLabel

func HasLabel(obj metav1.Object, key, value string) bool

HasLabel returns true if the object has the label and the values matches

func IsConditionChanged

func IsConditionChanged(current, old apis.ConditionAccessor, conditionType apis.ConditionType) bool

IsConditionChanged given two condition accessors and a condition type will check if conditions changed

func IsTheSameObject

func IsTheSameObject(obj, compared corev1.ObjectReference) bool

IsTheSameObjRef compares two corev1.ObjectReference comparing: APIVersion, Kind, Name and Namespace. All other attributes are ignored

func IsTheSameObjectReference

func IsTheSameObjectReference(obj, compared *corev1.ObjectReference) bool

IsTheSameObjectReference uses pointers to make comparison of objects

func IssueResourceAttributes added in v0.3.0

func IssueResourceAttributes(verb string) authv1.ResourceAttributes

IssueResourceAttributes returns a ResourceAttribute object to be used in a filter

func MapContainsKeyValue

func MapContainsKeyValue(mapObj map[string]string, key, value string) bool

MapContainsKeyValue checks if a map[string]string has a key with a specific value

func PropagateCondition

func PropagateCondition(conditionManager apis.ConditionManager, conditionType apis.ConditionType, condition *apis.Condition)

PropagateCondition propagates a condition based on an external conditions used mainly when a resource depends on another and its conditions needs to be synced

func ReasonForError

func ReasonForError(err error) string

ReasonForError returns a string for Reason from an error. If the error is a apimachinery.StatusError will return its reason, otherwise will return unknown

func RepositoryResourceAttributes

func RepositoryResourceAttributes(verb string) authv1.ResourceAttributes

RepositoryResourceAttributes returns a ResourceAttribute object to be used in a filter

func SetConditionByError

func SetConditionByError(conditionManager apis.ConditionManager, condition apis.ConditionType, err error)

SetConditionByError sets a condition using an error to determine if it is True or False. If the given error is not nil will examine its reason and mark the condition as False otherwise will set condition to True

func UserResourceAttributes added in v0.3.0

func UserResourceAttributes(verb string) authv1.ResourceAttributes

UserResourceAttributes returns a ResourceAttribute object to be used in a filter

Types

type Artifact

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

	Spec ArtifactSpec `json:"spec"`
}

Artifact object for plugins

func (*Artifact) DeepCopy

func (in *Artifact) DeepCopy() *Artifact

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Artifact.

func (*Artifact) DeepCopyInto

func (in *Artifact) DeepCopyInto(out *Artifact)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArtifactList

type ArtifactList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []Artifact `json:"items"`
}

ArtifactList list of artifacts

func (*ArtifactList) DeepCopy

func (in *ArtifactList) DeepCopy() *ArtifactList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArtifactList.

func (*ArtifactList) DeepCopyInto

func (in *ArtifactList) DeepCopyInto(out *ArtifactList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ArtifactList) Filter added in v0.3.0

func (r *ArtifactList) Filter(filter func(artifact Artifact) bool) *ArtifactList

Filter takes a closure that returns true or false, if true, the artifact should be present

func (*ArtifactList) Paginate added in v0.3.0

func (r *ArtifactList) Paginate(page int, pageSize int) *ArtifactList

Paginate return a pagination subset of artifact list with specific page and page size

type ArtifactOptions

type ArtifactOptions struct {
	RepositoryOptions

	// repository name
	Repository string `json:"repository"`

	// artifact name
	Artifact string `json:"artifact"`
}

ArtifactOptions path params

func (*ArtifactOptions) DeepCopy

func (in *ArtifactOptions) DeepCopy() *ArtifactOptions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArtifactOptions.

func (*ArtifactOptions) DeepCopyInto

func (in *ArtifactOptions) DeepCopyInto(out *ArtifactOptions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArtifactSpec

type ArtifactSpec struct {
	// Address API related access URL
	// +optional
	Address *duckv1.Addressable `json:"address,omitempty"`

	// Access stores the webconsole address if any
	// +optional
	Access *duckv1.Addressable `json:"access,omitempty"`

	// Type of repository content
	Type string `json:"type"`

	// Version of specified artifact
	Version string `json:"version"`

	// UpdatedTime updated time for repository
	// +optional
	UpdatedTime metav1.Time `json:"updatedTime"`

	// Properties extended properties for Artifact
	// +optional
	Properties *runtime.RawExtension `json:"properties,omitempty"`
}

ArtifactSpec spec for repository TODO: add more necessary spec data

func (*ArtifactSpec) DeepCopy

func (in *ArtifactSpec) DeepCopy() *ArtifactSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArtifactSpec.

func (*ArtifactSpec) DeepCopyInto

func (in *ArtifactSpec) DeepCopyInto(out *ArtifactSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Attribute added in v0.3.0

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

	Spec AttributeSpec `json:"spec"`
}

Attribute object for project management issue attribute

type AttributeSpec added in v0.3.0

type AttributeSpec struct {
	// Issue type of user self define in project
	Types []IssueType `json:"types"`

	// Issue priority of user self define in project
	Priorities []IssuePriority `json:"priorities"`

	// Issue status of user self define in project
	Statuses []AttributeStatus `json:"statuses"`
}

AttributeSpec for issue

type AttributeStatus added in v0.3.0

type AttributeStatus struct {
	// project attribute status id
	ID string `json:"id"`
	// project attribute status name
	Name string `json:"name"`
}

AttributeStatus for issue status type

type AuthCheck added in v0.2.0

type AuthCheck struct {
	metav1.TypeMeta `json:",inline"`
	Spec            *AuthCheckSpec  `json:"spec,omitempty"`
	Status          AuthCheckStatus `json:"status"`
}

AuthCheck consists of result for an auth check request

func (*AuthCheck) DeepCopy added in v0.3.0

func (in *AuthCheck) DeepCopy() *AuthCheck

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthCheck.

func (*AuthCheck) DeepCopyInto added in v0.3.0

func (in *AuthCheck) DeepCopyInto(out *AuthCheck)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AuthCheckOptions added in v0.2.0

type AuthCheckOptions struct {
	RedirectURL string `json:"redirectURL"`
}

AuthCheckOptions options for AuthCheck most of the necessary data is already embed in headers

func (*AuthCheckOptions) DeepCopy added in v0.3.0

func (in *AuthCheckOptions) DeepCopy() *AuthCheckOptions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthCheckOptions.

func (*AuthCheckOptions) DeepCopyInto added in v0.3.0

func (in *AuthCheckOptions) DeepCopyInto(out *AuthCheckOptions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AuthCheckSpec added in v0.2.0

type AuthCheckSpec struct {
	RedirectURL          string                  `json:"redirectURL"`
	Secret               *corev1.ObjectReference `json:"secretRef,omitempty"`
	IntegrationClassName string                  `json:"integrationClassName,omitempty"`
	BaseURL              string                  `json:"baseURL,omitempty"`
	Version              string                  `json:"version,omitempty"`
}

func (*AuthCheckSpec) DeepCopy added in v0.3.0

func (in *AuthCheckSpec) DeepCopy() *AuthCheckSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthCheckSpec.

func (*AuthCheckSpec) DeepCopyInto added in v0.3.0

func (in *AuthCheckSpec) DeepCopyInto(out *AuthCheckSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AuthCheckStatus added in v0.2.0

type AuthCheckStatus struct {
	// Allowed describes if the headers used where accepted or not by the integrated system.
	// `True` when accepted,
	// `False` when not accepted or when secret data is incomplete (oAuth2 flow),
	// `Unknown` for a standard `not implemented` response.
	Allowed corev1.ConditionStatus `json:"allowed"`

	// Message a message explaining the response content
	Message string `json:"message,omitempty"`

	// Reason specific reason enum for the given status
	Reason string `json:"reason,omitempty"`

	// RedirectURL the provided redirect url for oauthFlow
	// +optional
	RedirectURL string `json:"redirectURL,omitempty"`
	// AuthorizeURL url for the oAuth2 flow
	// +optional
	AuthorizeURL string `json:"authorizeURL,omitempty"`
}

func (*AuthCheckStatus) DeepCopy added in v0.3.0

func (in *AuthCheckStatus) DeepCopy() *AuthCheckStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthCheckStatus.

func (*AuthCheckStatus) DeepCopyInto added in v0.3.0

func (in *AuthCheckStatus) DeepCopyInto(out *AuthCheckStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AuthToken added in v0.2.0

type AuthToken struct {
	metav1.TypeMeta `json:",inline"`
	Status          AuthTokenStatus `json:"status"`
}

+k8s:deepcopy-gen=false AuthToken access token request response

type AuthTokenStatus added in v0.2.0

type AuthTokenStatus struct {
	// AccessTokenKey store the key for accessToken it is mainly for git clone as userName
	AccessTokenKey string `json:"accessTokenKey"`
	// AccessToken access token used for oAuth2
	AccessToken string `json:"accessToken"`
	// RefreshToken to renew access token when expired
	RefreshToken string `json:"refreshToken,omitempty"`
	// TokenType provides a token type for consumers, usually is a bearer type
	TokenType string `json:"tokenType"`
	// ExpiresIn token expiration duration
	ExpiresIn time.Duration `json:"expiresIn"`
	// CreatedAt time which access token was generated.
	// Used with ExpiresIn to calculate expiration time
	CreatedAt time.Time `json:"createdAt"`
}

+k8s:deepcopy-gen=false AuthTokenStatus access token request response status

type AuthType

type AuthType string

type BlobStore added in v0.2.0

type BlobStore struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              BlobStoreSpec `json:"spec"`
}

func (*BlobStore) DeepCopy added in v0.3.0

func (in *BlobStore) DeepCopy() *BlobStore

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobStore.

func (*BlobStore) DeepCopyInto added in v0.3.0

func (in *BlobStore) DeepCopyInto(out *BlobStore)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BlobStoreList added in v0.2.0

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

func (*BlobStoreList) DeepCopy added in v0.3.0

func (in *BlobStoreList) DeepCopy() *BlobStoreList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobStoreList.

func (*BlobStoreList) DeepCopyInto added in v0.3.0

func (in *BlobStoreList) DeepCopyInto(out *BlobStoreList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BlobStoreSpec added in v0.2.0

type BlobStoreSpec struct {
	Type string `json:"type"`
}

func (*BlobStoreSpec) DeepCopy added in v0.3.0

func (in *BlobStoreSpec) DeepCopy() *BlobStoreSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BlobStoreSpec.

func (*BlobStoreSpec) DeepCopyInto added in v0.3.0

func (in *BlobStoreSpec) DeepCopyInto(out *BlobStoreSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Branch added in v0.3.0

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

	Spec BranchSpec `json:"spec"`
}

Branch object for plugin

type BranchList added in v0.3.0

type BranchList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []Branch `json:"items"`
}

BranchList list of branch

type BranchSpec added in v0.3.0

type BranchSpec struct {
	// issue info
	Issue IssueInfo `json:"issue"`

	// Branch author
	Author UserSpec `json:"author"`

	// Address stores the branch address
	Address *duckv1.Addressable `json:"address"`

	// CodeInfo stores the branch info in code repo
	CodeInfo CodeInfo `json:"codeInfo"`
}

BranchSpec for branch

type BuildGitBranchStatus added in v0.3.0

type BuildGitBranchStatus struct {
	// Name of git branch
	Name string `json:"name"`
	// Protected represent if is the protected branch
	Protected bool `json:"protected"`
	// Default represent if is the protected branch
	Default bool `json:"default"`
	// WebURL to access the branch
	WebURL string `json:"webURL"`
}

GitBranchStatus represent branch status of build run

func (*BuildGitBranchStatus) DeepCopy added in v0.3.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildGitBranchStatus.

func (*BuildGitBranchStatus) DeepCopyInto added in v0.3.0

func (in *BuildGitBranchStatus) DeepCopyInto(out *BuildGitBranchStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BuildGitCommitStatus added in v0.3.0

type BuildGitCommitStatus struct {
	// ShortID means last commit short id
	ShortID string `json:"shortID"`
	// ID represent last commit id
	ID string `json:"id"`
	// Title represent last commit title
	Title string `json:"title"`
	// Message of last commit
	Message string `json:"message"`
	// AuthorEmail of last commit
	AuthorEmail string `json:"authorEmail"`
	// PushedAt means push time of last commit
	// +optional
	PushedAt *metav1.Time `json:"pushedAt,omitempty"`
}

func (*BuildGitCommitStatus) DeepCopy added in v0.3.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildGitCommitStatus.

func (*BuildGitCommitStatus) DeepCopyInto added in v0.3.0

func (in *BuildGitCommitStatus) DeepCopyInto(out *BuildGitCommitStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BuildGitPullRequestStatus added in v0.3.0

type BuildGitPullRequestStatus struct {
	// ID is identity of pull request
	ID string `json:"id"`
	// Title of pullrequest if current build is building a pull request
	Title string `json:"title"`
	// Source of pullrequest if current build is building a pull request
	Source string `json:"source"`
	// Target of pullrequest if current build is building a pull request
	Target string `json:"target"`
	// AuthorEmail of pull request
	AuthorEmail string `json:"authorEmail"`
	// WebURL to access pull request
	WebURL string `json:"webURL"`
	// HasConflicts represent if has conflicts in pull request
	HasConflicts bool `json:"hasConflicts"`
}

func (*BuildGitPullRequestStatus) DeepCopy added in v0.3.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildGitPullRequestStatus.

func (*BuildGitPullRequestStatus) DeepCopyInto added in v0.3.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BuildMetaData added in v0.3.0

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

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

This structure is a derivative of buildrun and is used for artifacts to record build information.

func (*BuildMetaData) DeepCopy added in v0.3.0

func (in *BuildMetaData) DeepCopy() *BuildMetaData

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildMetaData.

func (*BuildMetaData) DeepCopyInto added in v0.3.0

func (in *BuildMetaData) DeepCopyInto(out *BuildMetaData)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BuildMetaDataStatus added in v0.3.0

type BuildMetaDataStatus struct {
	// Git represent code repository status of buildrun
	// +optional
	Git *BuildRunGitStatus `json:"git,omitempty"`

	// TriggeredBy is the reason for the event trigger
	// +optional
	TriggeredBy *TriggeredBy `json:"triggeredBy,omitempty"`
}

func (*BuildMetaDataStatus) DeepCopy added in v0.3.0

func (in *BuildMetaDataStatus) DeepCopy() *BuildMetaDataStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildMetaDataStatus.

func (*BuildMetaDataStatus) DeepCopyInto added in v0.3.0

func (in *BuildMetaDataStatus) DeepCopyInto(out *BuildMetaDataStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BuildRunGitStatus added in v0.3.0

type BuildRunGitStatus struct {
	// URL means git repository url of current buildrun
	// +optional
	URL string `json:"url,omitempty"`
	// LastCommit means last commit status of current build
	// +optional
	LastCommit *BuildGitCommitStatus `json:"lastCommit,omitempty"`
	// PullRequest means pull request status of current build
	// +optional
	PullRequest *BuildGitPullRequestStatus `json:"pullRequest,omitempty"`
	// Branch status of current build
	// +optional
	Branch *BuildGitBranchStatus `json:"branch,omitempty"`
}

BuildRunGitStatus represent code repository status

func (*BuildRunGitStatus) DeepCopy added in v0.3.0

func (in *BuildRunGitStatus) DeepCopy() *BuildRunGitStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BuildRunGitStatus.

func (*BuildRunGitStatus) DeepCopyInto added in v0.3.0

func (in *BuildRunGitStatus) DeepCopyInto(out *BuildRunGitStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudEvent

type CloudEvent struct {
	ID      string `json:"id,omitempty"`
	Source  string `json:"source,omitempty"`
	Subject string `json:"subject,omitempty"`
	// Type of event
	Type string `json:"type,omitempty"`
	// Data event payload
	Data            string            `json:"data,omitempty"`
	Time            metav1.Time       `json:"time,omitempty"`
	SpecVersion     string            `json:"specversion,omitempty"`
	DataContentType string            `json:"datacontenttype,omitempty"`
	Extensions      map[string]string `json:"extensions,omitempty"`
}

func (*CloudEvent) DeepCopy

func (in *CloudEvent) DeepCopy() *CloudEvent

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudEvent.

func (*CloudEvent) DeepCopyInto

func (in *CloudEvent) DeepCopyInto(out *CloudEvent)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CloudEvent) From

func (evt *CloudEvent) From(event cloudevents.Event) *CloudEvent

type CodeInfo added in v0.3.0

type CodeInfo struct {
	// Address stores the repo address
	Address *duckv1.Addressable `json:"address"`

	// code repo integration name
	IntegrationName string `json:"integrationName"`

	// code project name
	Project string `json:"project"`

	// code repo name
	Repository string `json:"repository"`

	// issue relate branch
	Branch string `json:"branch"`

	// issue relate base branch
	// +optional
	BaseBranch string `json:"baseBranch"`
}

type CodeQuality added in v0.2.0

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

	Spec CodeQualitySpec `json:"spec"`
}

CodeQuality object for plugin

func (*CodeQuality) DeepCopy added in v0.2.0

func (in *CodeQuality) DeepCopy() *CodeQuality

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodeQuality.

func (*CodeQuality) DeepCopyInto added in v0.2.0

func (in *CodeQuality) DeepCopyInto(out *CodeQuality)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CodeQualityAnalyzeMetric added in v0.2.0

type CodeQualityAnalyzeMetric struct {
	// Value defines the value of this metric
	Value string `json:"value"`
	// Level defines the level of the value
	// +optional
	Level *string `json:"level,omitempty"`
}

CodeQualityAnalyzeResult present CodeQualityProject analyze result

func (*CodeQualityAnalyzeMetric) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodeQualityAnalyzeMetric.

func (*CodeQualityAnalyzeMetric) DeepCopyInto added in v0.2.0

func (in *CodeQualityAnalyzeMetric) DeepCopyInto(out *CodeQualityAnalyzeMetric)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CodeQualityBaseOption added in v0.2.0

type CodeQualityBaseOption struct {
	ProjectKey string `json:"projectKey"`
	BranchKey  string `json:"branchKey"`
}

func (*CodeQualityBaseOption) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodeQualityBaseOption.

func (*CodeQualityBaseOption) DeepCopyInto added in v0.2.0

func (in *CodeQualityBaseOption) DeepCopyInto(out *CodeQualityBaseOption)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CodeQualityBranch added in v0.2.0

type CodeQualityBranch struct {
	HTML              string                              `json:"html"`
	Name              string                              `json:"name"`
	IsMain            bool                                `json:"isMain"`
	QualityGateStatus string                              `json:"qualityGateStatus"`
	AnalysisDate      metav1.Time                         `json:"analysisDate"`
	Metrics           map[string]CodeQualityAnalyzeMetric `json:"metrics"`
}

func (*CodeQualityBranch) DeepCopy added in v0.2.0

func (in *CodeQualityBranch) DeepCopy() *CodeQualityBranch

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodeQualityBranch.

func (*CodeQualityBranch) DeepCopyInto added in v0.2.0

func (in *CodeQualityBranch) DeepCopyInto(out *CodeQualityBranch)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CodeQualityLineChart added in v0.2.0

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

	Spec CodeQualityLineChartSpec `json:"spec"`
}

CodeQualityLineChart object for plugin

func (*CodeQualityLineChart) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodeQualityLineChart.

func (*CodeQualityLineChart) DeepCopyInto added in v0.2.0

func (in *CodeQualityLineChart) DeepCopyInto(out *CodeQualityLineChart)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CodeQualityLineChartOption added in v0.2.0

type CodeQualityLineChartOption struct {
	CodeQualityBaseOption
	StartTime      *time.Time `json:"startTime"`
	CompletionTime *time.Time `json:"completionTime"`
	Metrics        string     `json:"metrics"`
}

+k8s:deepcopy-gen=false

type CodeQualityLineChartSpec added in v0.2.0

type CodeQualityLineChartSpec struct {
	Index   []string            `json:"index"`
	Metrics map[string][]string `json:"metrics"`
}

func (*CodeQualityLineChartSpec) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodeQualityLineChartSpec.

func (*CodeQualityLineChartSpec) DeepCopyInto added in v0.2.0

func (in *CodeQualityLineChartSpec) DeepCopyInto(out *CodeQualityLineChartSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CodeQualityProjectOverview added in v0.2.0

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

	Spec CodeQualityProjectOverviewSpec `json:"spec"`
}

func (*CodeQualityProjectOverview) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodeQualityProjectOverview.

func (*CodeQualityProjectOverview) DeepCopyInto added in v0.2.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CodeQualityProjectOverviewComponent added in v0.2.0

type CodeQualityProjectOverviewComponent struct {
	Branch                 string                              `json:"branch"`
	CodeRepositoryFullName string                              `json:"codeRepositoryFullName"`
	CodeRepositoryLink     string                              `json:"codeRepositoryLink"`
	LastAnalysisTime       int                                 `json:"lastAnalysisTime"`
	Name                   string                              `json:"name"`
	QualityGateStatus      string                              `json:"qualityGateStatus"`
	SonarQubeLink          string                              `json:"sonarQubeLink"`
	Metrics                map[string]CodeQualityAnalyzeMetric `json:"metrics"`
}

func (*CodeQualityProjectOverviewComponent) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodeQualityProjectOverviewComponent.

func (*CodeQualityProjectOverviewComponent) DeepCopyInto added in v0.2.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CodeQualityProjectOverviewSpec added in v0.2.0

type CodeQualityProjectOverviewSpec struct {
	Summary             CodeQualityProjectOverviewSpecSummary `json:"summary"`
	CodeQualityProjects []CodeQualityProjectOverviewComponent `json:"codeQualityProjects"`
}

func (*CodeQualityProjectOverviewSpec) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodeQualityProjectOverviewSpec.

func (*CodeQualityProjectOverviewSpec) DeepCopyInto added in v0.2.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CodeQualityProjectOverviewSpecSummary added in v0.2.0

type CodeQualityProjectOverviewSpecSummary struct {
	Error int `json:"error"`
	OK    int `json:"ok"`
	Warn  int `json:"warn"`
	Total int `json:"total"`
}

func (*CodeQualityProjectOverviewSpecSummary) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodeQualityProjectOverviewSpecSummary.

func (*CodeQualityProjectOverviewSpecSummary) DeepCopyInto added in v0.2.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CodeQualitySpec added in v0.2.0

type CodeQualitySpec struct {
	Branches map[string]CodeQualityBranch `json:"branches"`
}

func (*CodeQualitySpec) DeepCopy added in v0.2.0

func (in *CodeQualitySpec) DeepCopy() *CodeQualitySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CodeQualitySpec.

func (*CodeQualitySpec) DeepCopyInto added in v0.2.0

func (in *CodeQualitySpec) DeepCopyInto(out *CodeQualitySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CodeQualityTaskMetrics added in v0.3.0

type CodeQualityTaskMetrics struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              CodeQualityTaskMetricsSpec   `json:"spec"`
	Status            CodeQualityTaskMetricsStatus `json:"status,omitempty"`
}

CodeQualityTaskMetrics object obtains the code scan results obtained by the scan task

type CodeQualityTaskMetricsSpec added in v0.3.0

type CodeQualityTaskMetricsSpec struct {
	// Summary is the panel data for code scans
	// +optional
	Summary CodeQualityTaskMetricsSpecSummary `json:"summary,omitempty"`
	// Task is scan task specific information
	Task CodeQualityTaskMetricsSpecTask `json:"task"`
	// Component is code scan component
	Component CodeQualityTaskMetricsSpecComponent `json:"component"`
	// Metrics is other scan result indicators are stored here
	Metrics map[string]string `json:"metrics"`
}

CodeQualityTaskMetricsSpec includes structured and raw data for code scans

type CodeQualityTaskMetricsSpecComponent added in v0.3.0

type CodeQualityTaskMetricsSpecComponent struct {
	// ID is component id
	ID string `json:"id"`
	// Key is component key
	Key string `json:"key"`
	// Name is component name
	Name string `json:"name"`
}

CodeQualityTaskMetricsSpecComponent is code scan component

type CodeQualityTaskMetricsSpecSummary added in v0.3.0

type CodeQualityTaskMetricsSpecSummary struct {
	// New Indicates the newly added data in this scan
	// +optional
	New *CodeQualityTaskMetricsSpecSummaryOverview `json:"new,omitempty"`
	// Total represents all the issues scanned
	// +optional
	Total *CodeQualityTaskMetricsSpecSummaryOverview `json:"total,omitempty"`
}

CodeQualityTaskMetricsSpecSummary is the panel data for code scans

type CodeQualityTaskMetricsSpecSummaryOverview added in v0.3.0

type CodeQualityTaskMetricsSpecSummaryOverview struct {
	// Bugs means number of bugs
	Bugs string `json:"bugs"`
	// DuplicatedLinesDensity means ratio of duplicate code
	DuplicatedLinesDensity string `json:"duplicatedLinesDensity"`
	// Vulnerabilities means number of vulnerabilities
	Vulnerabilities string `json:"vulnerabilities"`
	// CodeSmells means number of codeSmells
	CodeSmells string `json:"codeSmells"`
}

CodeQualityTaskMetricsSpecSummaryOverview is the overview data for code scans

type CodeQualityTaskMetricsSpecTask added in v0.3.0

type CodeQualityTaskMetricsSpecTask struct {
	// StartedAt is start time
	StartedAt string `json:"startedAt"`
	// CompletedAt is end time
	CompletedAt string `json:"executedAt"`
	// ExecutionTimeMs is consuming to execute
	ExecutionTimeMs string `json:"executionTimeMs"`
	// ID is code scan task id
	ID string `json:"id"`
	// Status is code scan task status
	Status CodeScanReportSyncReason `json:"status"`
	// AnalysisId is analysis report id
	AnalysisId string `json:"analysisId"`
}

CodeQualityTaskMetricsSpecTask is scan task specific information

type CodeQualityTaskMetricsStatus added in v0.3.0

type CodeQualityTaskMetricsStatus struct {
	// Reason is code scan reason
	// +optional
	Reason CodeScanReportSyncReason `json:"reason,omitempty"`
	// Status is code scan status
	// +optional
	Status corev1.ConditionStatus `json:"status,omitempty"`
}

CodeQualityTaskMetricsStatus is a status attribute that specifies the need to integrate

type CodeQualityTaskOption added in v0.3.0

type CodeQualityTaskOption struct {
	TaskID      string `json:"taskID"`
	ProjectKey  string `json:"projectKey"`
	Branch      string `json:"branch"`
	PullRequest string `json:"pullRequest"`
}

type CodeScanReportSyncReason added in v0.3.0

type CodeScanReportSyncReason string
const (
	// Code scan task succeeded
	CodeScanReportSyncSucceededReason CodeScanReportSyncReason = SucceededReason
	// The code scan task was canceled
	CodeScanTaskCancelled CodeScanReportSyncReason = "CodeScanTaskCancelled"
	// Code scan task is waiting to start
	CodeScanTaskPending CodeScanReportSyncReason = "CodeScanTaskPending"
	// ode scan task in process
	CodeScanTaskRunning CodeScanReportSyncReason = "CodeScanTaskRunning"
	// Code scan task execution failed
	CodeScanTaskFailedReason CodeScanReportSyncReason = "CodeScanTaskFailed"
	// Error in sync report
	CodeScanReportSyncErrorReason CodeScanReportSyncReason = "CodeScanSyncReportError"
)

type Comment added in v0.3.0

type Comment struct {
	// Issue comment by user
	User UserSpec `json:"author"`

	// Issue comment create time
	CreatedTime metav1.Time `json:"createdTime"`

	// Issue comment message
	Detail string `json:"detail"`
}

type ConditionType added in v0.3.0

type ConditionType string

ConditionType is a camel-cased condition type.

const (
	// ConditionReady specifies that the resource is ready.
	// For long-running resources.
	ConditionReady ConditionType = "Ready"
	// ConditionSucceeded specifies that the resource has finished.
	// For resource which run to completion.
	ConditionSucceeded ConditionType = "Succeeded"
	// ConditionPending specifies that the resource is pending.
	// For resource which run is waiting to be executed.
	ConditionPending ConditionType = "Pending"
	// ConditionRunning specifies that the resource is running.
	// For resource which run is running.
	ConditionRunning ConditionType = "Running"
	// ConditionFailed specifies that the resource is failed.
	// For resource which run to failed.
	ConditionFailed ConditionType = "Failed"
	// ConditionDisabled specifies that the resource is disabled.
	// For resource which can't be run.
	ConditionDisabled ConditionType = "Disabled"
	// ConditionCanceled specifies that the resource is canceled.
	// For resource which run to canceled.
	ConditionCanceled ConditionType = "Canceled"
)

type ContextKey added in v0.2.0

type ContextKey string
const (
	// KeyForSubType subtype key in context
	KeyForSubType ContextKey = "subtype"
)

func (ContextKey) String added in v0.2.0

func (c ContextKey) String() string

type CreateBranchParams

type CreateBranchParams struct {
	// Branch new branch name
	Branch string `json:"branch"`
	// Ref source branch name
	Ref string `json:"ref"`
}

CreateBranchParams params for create branch in server

func (*CreateBranchParams) DeepCopy

func (in *CreateBranchParams) DeepCopy() *CreateBranchParams

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreateBranchParams.

func (*CreateBranchParams) DeepCopyInto

func (in *CreateBranchParams) DeepCopyInto(out *CreateBranchParams)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CreateBranchPayload

type CreateBranchPayload struct {
	GitRepo
	CreateBranchParams
}

CreateBranchPayload payload for create branch

func (*CreateBranchPayload) DeepCopy

func (in *CreateBranchPayload) DeepCopy() *CreateBranchPayload

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreateBranchPayload.

func (*CreateBranchPayload) DeepCopyInto

func (in *CreateBranchPayload) DeepCopyInto(out *CreateBranchPayload)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CreateCommitCommentParam

type CreateCommitCommentParam struct {
	Note     *string `json:"note,omitempty"`
	Path     *string `json:"path"`
	Line     *int    `json:"line"`
	LineType *string `json:"lineType"`
}

CreateCommitCommentParam param for create commit's comment

func (*CreateCommitCommentParam) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreateCommitCommentParam.

func (*CreateCommitCommentParam) DeepCopyInto

func (in *CreateCommitCommentParam) DeepCopyInto(out *CreateCommitCommentParam)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CreateCommitCommentPayload

type CreateCommitCommentPayload struct {
	GitRepo
	GitCommitBasicInfo
	CreateCommitCommentParam
}

CreateCommitCommentPayload payload for create commit's Comment

func (*CreateCommitCommentPayload) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreateCommitCommentPayload.

func (*CreateCommitCommentPayload) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CreateCommitStatusParam

type CreateCommitStatusParam struct {
	State       string   `json:"state"`
	Ref         *string  `json:"ref,omitempty"`
	Name        *string  `json:"name,omitempty"`
	Context     *string  `json:"context,omitempty"`
	TargetURL   *string  `json:"targetUrl,omitempty"`
	Description *string  `json:"description,omitempty"`
	Coverage    *float64 `json:"coverage,omitempty"`
	PipelineID  *int     `json:"pipelineId,omitempty"`
	// TODO CreateCommitStatusParam should remove, create function only use GitCommitStatus as param
	*GitCommitStatus
}

CreateCommitStatusParam param for create commit's status

func (*CreateCommitStatusParam) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreateCommitStatusParam.

func (*CreateCommitStatusParam) DeepCopyInto

func (in *CreateCommitStatusParam) DeepCopyInto(out *CreateCommitStatusParam)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CreateCommitStatusPayload

type CreateCommitStatusPayload struct {
	GitRepo
	GitCommitBasicInfo
	CreateCommitStatusParam
}

CreateCommitStatusPayload payload for create commit's status

func (*CreateCommitStatusPayload) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreateCommitStatusPayload.

func (*CreateCommitStatusPayload) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CreatePullRequestCommentParam

type CreatePullRequestCommentParam struct {
	Body string `json:"body"`
}

CreatePullRequestCommentParam param for create pr's comment

func (*CreatePullRequestCommentParam) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreatePullRequestCommentParam.

func (*CreatePullRequestCommentParam) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CreatePullRequestCommentPayload

type CreatePullRequestCommentPayload struct {
	GitRepo
	CreatePullRequestCommentParam
	Index int `json:"index"`
}

CreatePullRequestCommentPayload payload for create pr's Comment

func (*CreatePullRequestCommentPayload) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreatePullRequestCommentPayload.

func (*CreatePullRequestCommentPayload) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CreatePullRequestPayload

type CreatePullRequestPayload struct {
	Source      GitBranchBaseInfo `json:"source"`
	Target      GitBranchBaseInfo `json:"target"`
	Title       string            `json:"title"`
	Description string            `json:"description,omitempty"`
}

CreatePullRequestPayload option for create PullRequest

func (*CreatePullRequestPayload) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreatePullRequestPayload.

func (*CreatePullRequestPayload) DeepCopyInto

func (in *CreatePullRequestPayload) DeepCopyInto(out *CreatePullRequestPayload)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CreateRepoFileParams

type CreateRepoFileParams struct {
	// Branch target branch to create file
	Branch string `json:"branch"`
	// Name of the branch to start the new branch from
	StartBranch string `json:"startBranch"`
	// Message commit message for create the file
	Message string `json:"message"`
	// Content must be base64 encoded
	Content []byte `json:"content"`
}

CreateBranchParams params for create file in server

func (*CreateRepoFileParams) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreateRepoFileParams.

func (*CreateRepoFileParams) DeepCopyInto

func (in *CreateRepoFileParams) DeepCopyInto(out *CreateRepoFileParams)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CreateRepoFilePayload

type CreateRepoFilePayload struct {
	GitRepo
	CreateRepoFileParams
	FilePath string `json:"filepath"`
}

CreateRepoFilePayload option for create file and commit + push

func (*CreateRepoFilePayload) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreateRepoFilePayload.

func (*CreateRepoFilePayload) DeepCopyInto

func (in *CreateRepoFilePayload) DeepCopyInto(out *CreateRepoFilePayload)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CreatedBy added in v0.2.0

type CreatedBy struct {
	// Reference to the user that created the object. Any Kubernetes `Subject` is accepted.
	// +optional
	User *rbacv1.Subject `json:"user,omitempty"`
}

Stores a list of created information.

func (*CreatedBy) DeepCopy added in v0.2.0

func (in *CreatedBy) DeepCopy() *CreatedBy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CreatedBy.

func (*CreatedBy) DeepCopyInto added in v0.2.0

func (in *CreatedBy) DeepCopyInto(out *CreatedBy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CreatedBy) FromAnnotation added in v0.2.0

func (by *CreatedBy) FromAnnotation(annotations map[string]string) (*CreatedBy, error)

FromAnnotation will set `by` from annotations it will find CreatedByAnnotationKey and unmarshl content into struct type *CreatedBy if not found CreatedByAnnotationKey, error would be nil, and *CreatedBy would be nil also. if some errors happened, error will not be nil and *CreatedBy will be nil

func (*CreatedBy) IsZero added in v0.2.0

func (by *CreatedBy) IsZero() bool

IsZero basic function returns true when all attributes of the object are empty

func (*CreatedBy) SetIntoAnnotation added in v0.2.0

func (by *CreatedBy) SetIntoAnnotation(annotations map[string]string) (map[string]string, error)

SetIntoAnnotation will set CreatedBy into annotations return annotations that with CreatedBy.

type DefinitionTriggeredType

type DefinitionTriggeredType string

func (DefinitionTriggeredType) String

func (triggeredType DefinitionTriggeredType) String() string

type DownloadURL added in v0.2.0

type DownloadURL struct {
	Zip    string  `json:"zip"`
	TarGz  *string `json:"tar.gz"`
	TarBa2 *string `json:"tar.ba2"`
	Tar    *string `json:"tar"`
}

func (*DownloadURL) DeepCopy added in v0.2.0

func (in *DownloadURL) DeepCopy() *DownloadURL

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownloadURL.

func (*DownloadURL) DeepCopyInto added in v0.2.0

func (in *DownloadURL) DeepCopyInto(out *DownloadURL)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitBranch

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

	Spec GitBranchSpec `json:"spec"`
}

GitBranch object for plugin

func (*GitBranch) DeepCopy

func (in *GitBranch) DeepCopy() *GitBranch

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitBranch.

func (*GitBranch) DeepCopyInto

func (in *GitBranch) DeepCopyInto(out *GitBranch)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitBranchBaseInfo

type GitBranchBaseInfo struct {
	GitRepo
	// Name branch name
	Name string `json:"name"`
}

GitBranchBaseInfo branch base info

func (*GitBranchBaseInfo) DeepCopy

func (in *GitBranchBaseInfo) DeepCopy() *GitBranchBaseInfo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitBranchBaseInfo.

func (*GitBranchBaseInfo) DeepCopyInto

func (in *GitBranchBaseInfo) DeepCopyInto(out *GitBranchBaseInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitBranchList

type GitBranchList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []GitBranch `json:"items"`
}

GitBranchList list of branch

func (*GitBranchList) DeepCopy

func (in *GitBranchList) DeepCopy() *GitBranchList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitBranchList.

func (*GitBranchList) DeepCopyInto

func (in *GitBranchList) DeepCopyInto(out *GitBranchList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitBranchOption

type GitBranchOption struct {
	GitRepo
	Keyword string `json:"keyword"`
}

GitBranchOption option for list branch

func (*GitBranchOption) DeepCopy added in v0.2.0

func (in *GitBranchOption) DeepCopy() *GitBranchOption

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitBranchOption.

func (*GitBranchOption) DeepCopyInto added in v0.2.0

func (in *GitBranchOption) DeepCopyInto(out *GitBranchOption)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitBranchSpec

type GitBranchSpec struct {
	GitBranchBaseInfo
	// Protected the branch is protected
	Protected *bool `json:"protected,omitempty" yaml:"protected,omitempty"`
	// Default the branch is default branch (repo only have one default branch like main)
	Default *bool `json:"default,omitempty" yaml:"default,omitempty"`
	// DevelopersCanPush developer can push to this branch
	DevelopersCanPush *bool `json:"developersCanPush,omitempty" yaml:"developersCanPush,omitempty"`
	// DevelopersCanMerge developer can merge to this branch
	DevelopersCanMerge *bool `json:"developersCanMerge,omitempty" yaml:"developersCanMerge,omitempty"`
	// Commit latest commit's sha in this branch
	Commit      GitCommitInfo         `json:"commit"`
	WebURL      string                `json:"webURL"`
	DownloadURL DownloadURL           `json:"downloadURL"`
	Properties  *runtime.RawExtension `json:"properties,omitempty"`
}

GitBranchSpec spec of branch

func (*GitBranchSpec) DeepCopy

func (in *GitBranchSpec) DeepCopy() *GitBranchSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitBranchSpec.

func (*GitBranchSpec) DeepCopyInto

func (in *GitBranchSpec) DeepCopyInto(out *GitBranchSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommit

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

	Spec GitCommitSpec `json:"spec"`
}

GitCommit object for plugin

func (*GitCommit) DeepCopy

func (in *GitCommit) DeepCopy() *GitCommit

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommit.

func (*GitCommit) DeepCopyInto

func (in *GitCommit) DeepCopyInto(out *GitCommit)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitBasicInfo

type GitCommitBasicInfo struct {
	// SHA commit's sha
	SHA *string `json:"sha,omitempty"`
}

GitCommitBasicInfo github support field is SHA & web_URL

func (*GitCommitBasicInfo) DeepCopy

func (in *GitCommitBasicInfo) DeepCopy() *GitCommitBasicInfo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitBasicInfo.

func (*GitCommitBasicInfo) DeepCopyInto

func (in *GitCommitBasicInfo) DeepCopyInto(out *GitCommitBasicInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitComment

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

	Spec GitCommitCommentSpec `json:"spec"`
}

GitCommitComment object for plugin

func (*GitCommitComment) DeepCopy

func (in *GitCommitComment) DeepCopy() *GitCommitComment

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitComment.

func (*GitCommitComment) DeepCopyInto

func (in *GitCommitComment) DeepCopyInto(out *GitCommitComment)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitCommentList

type GitCommitCommentList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []GitCommitComment `json:"items"`
}

GitCommitCommentList list of commit comment

func (*GitCommitCommentList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitCommentList.

func (*GitCommitCommentList) DeepCopyInto

func (in *GitCommitCommentList) DeepCopyInto(out *GitCommitCommentList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitCommentSpec

type GitCommitCommentSpec struct {
	// Note content
	Note string `json:"note"`
	// Path file path
	Path string `json:"path"`
	// Line comment line number
	Line int `json:"line"`
	// LineType
	LineType *string `json:"lineType"`
	// Author comment author
	Author     GitUserBaseInfo       `json:"author"`
	Properties *runtime.RawExtension `json:"properties,omitempty"`
}

GitCommitCommentSpec spec for commit comment

func (*GitCommitCommentSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitCommentSpec.

func (*GitCommitCommentSpec) DeepCopyInto

func (in *GitCommitCommentSpec) DeepCopyInto(out *GitCommitCommentSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitInfo added in v0.2.0

type GitCommitInfo struct {
	// SHA commit's sha
	SHA *string `json:"sha,omitempty"`
	// TODO remove this field, because is same as metadata.creationTimeStamp
	CreatedAt metav1.Time `json:"createdAt"`
	// Address for commit url for code repository web server
	Address *duckv1.Addressable `json:"address,omitempty"`
}

GitCommitInfo github support field is SHA & web_URL

func (*GitCommitInfo) DeepCopy added in v0.2.0

func (in *GitCommitInfo) DeepCopy() *GitCommitInfo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitInfo.

func (*GitCommitInfo) DeepCopyInto added in v0.2.0

func (in *GitCommitInfo) DeepCopyInto(out *GitCommitInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitList

type GitCommitList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []GitCommit `json:"items"`
}

GitCommitList list of commits

func (*GitCommitList) DeepCopy

func (in *GitCommitList) DeepCopy() *GitCommitList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitList.

func (*GitCommitList) DeepCopyInto

func (in *GitCommitList) DeepCopyInto(out *GitCommitList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitListOption added in v0.3.0

type GitCommitListOption struct {
	GitRepo
	// Ref source branch name
	Ref string `json:"ref"`
	// Since Time query parameter, the lower bound of the time range
	Since *v1.Time `json:"since,omitempty"`
	// Until Time query parameter, the upper limit of the time range
	Until *v1.Time `json:"util,omitempty"`
}

GitCommitListOption option for list commit

func (*GitCommitListOption) DeepCopy added in v0.3.0

func (in *GitCommitListOption) DeepCopy() *GitCommitListOption

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitListOption.

func (*GitCommitListOption) DeepCopyInto added in v0.3.0

func (in *GitCommitListOption) DeepCopyInto(out *GitCommitListOption)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitOption

type GitCommitOption struct {
	GitRepo
	GitCommitBasicInfo
}

GitCommitOption option for get one commit by sha

func (*GitCommitOption) DeepCopy

func (in *GitCommitOption) DeepCopy() *GitCommitOption

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitOption.

func (*GitCommitOption) DeepCopyInto

func (in *GitCommitOption) DeepCopyInto(out *GitCommitOption)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitSpec

type GitCommitSpec struct {
	GitCommitInfo
	// Coverage code coverage for test
	Coverage *float64 `json:"coverage,omitempty"`
	// Author commit author
	Author *GitUserBaseInfo `json:"author,omitempty"`
	// Committer commit committer
	Committer *GitUserBaseInfo `json:"committer,omitempty"`
	// Message commit message
	Message    *string               `json:"message,omitempty"`
	Properties *runtime.RawExtension `json:"properties,omitempty"`
}

GitCommitSpec spec for commit

func (*GitCommitSpec) DeepCopy

func (in *GitCommitSpec) DeepCopy() *GitCommitSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitSpec.

func (*GitCommitSpec) DeepCopyInto

func (in *GitCommitSpec) DeepCopyInto(out *GitCommitSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitStatus

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

	Spec   GitCommitStatusSpec   `json:"spec"`
	Status GitCommitStatusStatus `json:"status"`
}

GitCommitStatus object for plugin

func (*GitCommitStatus) DeepCopy

func (in *GitCommitStatus) DeepCopy() *GitCommitStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitStatus.

func (*GitCommitStatus) DeepCopyInto

func (in *GitCommitStatus) DeepCopyInto(out *GitCommitStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitStatusInfo added in v0.3.0

type GitCommitStatusInfo struct {
	// Type of additional information(pipeline, vulnerabilityScan, codeScan, artifact)
	Type string `json:"type"`
	// Status for additional information
	Status ConditionType `json:"status"`
	// URL result address
	URL        *apis.URL             `json:"url"`
	Properties *runtime.RawExtension `json:"properties,omitempty"`
}

GitCommitStatusInfo pipeline for code repository in commit statues https://github.com/katanomi/spec/blob/main/3.core.plugins.gitapi.md search 8.commit status

func (*GitCommitStatusInfo) DeepCopy added in v0.3.0

func (in *GitCommitStatusInfo) DeepCopy() *GitCommitStatusInfo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitStatusInfo.

func (*GitCommitStatusInfo) DeepCopyInto added in v0.3.0

func (in *GitCommitStatusInfo) DeepCopyInto(out *GitCommitStatusInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitStatusInfoList added in v0.3.0

type GitCommitStatusInfoList []GitCommitStatusInfo

func (GitCommitStatusInfoList) DeepCopy added in v0.3.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitStatusInfoList.

func (GitCommitStatusInfoList) DeepCopyInto added in v0.3.0

func (in GitCommitStatusInfoList) DeepCopyInto(out *GitCommitStatusInfoList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitStatusList

type GitCommitStatusList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []GitCommitStatus `json:"items"`
}

GitCommitStatusList list of commit status

func (*GitCommitStatusList) DeepCopy

func (in *GitCommitStatusList) DeepCopy() *GitCommitStatusList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitStatusList.

func (*GitCommitStatusList) DeepCopyInto

func (in *GitCommitStatusList) DeepCopyInto(out *GitCommitStatusList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitStatusSpec

type GitCommitStatusSpec struct {
	// ID status id
	ID int `json:"id"`
	// TODO:
	// 1.SHA and CreatedAt will be removed, because they should be used in metadata.
	// 2.Status, Name, TargetURL will be removed that already have the same effect in status
	// For compatibility reasons, the above contents will be implemented in later versions.
	// SHA commit sha
	SHA string `json:"sha"`
	// Ref commit ref
	Ref string `json:"ref"`
	// Status
	Status string `json:"status"`
	// CreatedAt status create time
	CreatedAt metav1.Time `json:"createdAt"`
	// Name status name
	Name string `json:"name"`
	// Author status author
	Author GitUserBaseInfo `json:"author"`
	// Description status description
	Description string `json:"description"`
	// TargetURL
	TargetURL  string                `json:"targetUrl"`
	Properties *runtime.RawExtension `json:"properties,omitempty"`
}

func (*GitCommitStatusSpec) DeepCopy

func (in *GitCommitStatusSpec) DeepCopy() *GitCommitStatusSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitStatusSpec.

func (*GitCommitStatusSpec) DeepCopyInto

func (in *GitCommitStatusSpec) DeepCopyInto(out *GitCommitStatusSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitCommitStatusStatus added in v0.3.0

type GitCommitStatusStatus struct {
	GitCommitStatusInfoList
	*apis.Condition
}

func (*GitCommitStatusStatus) DeepCopy added in v0.3.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitCommitStatusStatus.

func (*GitCommitStatusStatus) DeepCopyInto added in v0.3.0

func (in *GitCommitStatusStatus) DeepCopyInto(out *GitCommitStatusStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitOperateLogBaseInfo

type GitOperateLogBaseInfo struct {
	User *GitUserBaseInfo `json:"user,omitempty"`
	Time *metav1.Time     `json:"time,omitempty"`
}

GitOperateLogBaseInfo a simple log for operate

func (*GitOperateLogBaseInfo) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitOperateLogBaseInfo.

func (*GitOperateLogBaseInfo) DeepCopyInto

func (in *GitOperateLogBaseInfo) DeepCopyInto(out *GitOperateLogBaseInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitPullRequest

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

	Spec GitPullRequestSpec `json:"spec"`
}

GitPullRequest object for plugins

func (*GitPullRequest) DeepCopy

func (in *GitPullRequest) DeepCopy() *GitPullRequest

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitPullRequest.

func (*GitPullRequest) DeepCopyInto

func (in *GitPullRequest) DeepCopyInto(out *GitPullRequest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitPullRequestList

type GitPullRequestList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []GitPullRequest `json:"items"`
}

GitPullRequestList list of pr

func (*GitPullRequestList) DeepCopy

func (in *GitPullRequestList) DeepCopy() *GitPullRequestList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitPullRequestList.

func (*GitPullRequestList) DeepCopyInto

func (in *GitPullRequestList) DeepCopyInto(out *GitPullRequestList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitPullRequestListOption

type GitPullRequestListOption struct {
	GitRepo
	State *PullRequestState `json:"state,omitempty"`
}

func (*GitPullRequestListOption) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitPullRequestListOption.

func (*GitPullRequestListOption) DeepCopyInto added in v0.2.0

func (in *GitPullRequestListOption) DeepCopyInto(out *GitPullRequestListOption)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitPullRequestNote

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

	Spec GitPullRequestNoteSpec `json:"spec"`
}

GitPullRequestNote note for pr

func (*GitPullRequestNote) DeepCopy

func (in *GitPullRequestNote) DeepCopy() *GitPullRequestNote

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitPullRequestNote.

func (*GitPullRequestNote) DeepCopyInto

func (in *GitPullRequestNote) DeepCopyInto(out *GitPullRequestNote)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitPullRequestNoteList

type GitPullRequestNoteList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []GitPullRequestNote `json:"items"`
}

GitPullRequestNoteList note list for pr

func (*GitPullRequestNoteList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitPullRequestNoteList.

func (*GitPullRequestNoteList) DeepCopyInto

func (in *GitPullRequestNoteList) DeepCopyInto(out *GitPullRequestNoteList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitPullRequestNoteSpec

type GitPullRequestNoteSpec struct {
	// ID note id
	ID int `json:"id"`
	// Body note content
	Body       string                `json:"body"`
	Properties *runtime.RawExtension `json:"properties,omitempty"`
}

GitPullRequestNoteSpec note's spec for pr

func (*GitPullRequestNoteSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitPullRequestNoteSpec.

func (*GitPullRequestNoteSpec) DeepCopyInto

func (in *GitPullRequestNoteSpec) DeepCopyInto(out *GitPullRequestNoteSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitPullRequestOption

type GitPullRequestOption struct {
	GitRepo
	Index int `json:"Index"`
}

GitPullRequestOption option for one pr by id

func (*GitPullRequestOption) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitPullRequestOption.

func (*GitPullRequestOption) DeepCopyInto

func (in *GitPullRequestOption) DeepCopyInto(out *GitPullRequestOption)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitPullRequestSpec

type GitPullRequestSpec struct {
	GitRepo
	// ID num for pr in platform
	ID int64 `json:"id"`
	// Number num for pr in repo
	Number int64 `json:"num"`
	// Title pr title
	Title string `json:"title"`
	// State pr state (different between platforms)
	State string `json:"state"`
	// CreatedAt pr create time
	CreatedAt metav1.Time `json:"createdAt"`
	// UpdateAt pr latest update time
	UpdateAt *metav1.Time `json:"updateAt,omitempty"`
	// ClosedAt pr close time
	ClosedAt *metav1.Time `json:"closedAt,omitempty"`
	// Target pr target branch and repo
	Target GitBranchBaseInfo `json:"target"`
	// Source pr source branch and repo
	Source GitBranchBaseInfo `json:"source"`
	// Author pr author
	Author GitUserBaseInfo `json:"author,omitempty"`
	// MergeLog pr merge info(user and time)
	MergeLog   *GitOperateLogBaseInfo `json:"mergeLog,omitempty"`
	Properties *runtime.RawExtension  `json:"properties,omitempty"`
	// HasConflicts means source and target branch has conflict change
	HasConflicts bool `json:"hasConflicts,omitempty"`
}

GitPullRequestSpec spec for pull request

func (*GitPullRequestSpec) DeepCopy

func (in *GitPullRequestSpec) DeepCopy() *GitPullRequestSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitPullRequestSpec.

func (*GitPullRequestSpec) DeepCopyInto

func (in *GitPullRequestSpec) DeepCopyInto(out *GitPullRequestSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitRepo

type GitRepo struct {
	// Project gitlab is empty string, github,gogs,gitea is owner name
	Project string `json:"project,omitempty" yaml:"project,omitempty"`
	// Repository is different between platforms. gitlab is number;github,gogs,gitea is repo name
	Repository string `json:"repository,omitempty" yaml:"repository,omitempty"`
}

GitRepo Repo base info

func (*GitRepo) DeepCopy

func (in *GitRepo) DeepCopy() *GitRepo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepo.

func (*GitRepo) DeepCopyInto

func (in *GitRepo) DeepCopyInto(out *GitRepo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitRepoFile

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

	Spec GitRepoFileSpec `json:"spec"`
}

GitRepoFile object for plugins

func (*GitRepoFile) DeepCopy

func (in *GitRepoFile) DeepCopy() *GitRepoFile

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoFile.

func (*GitRepoFile) DeepCopyInto

func (in *GitRepoFile) DeepCopyInto(out *GitRepoFile)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitRepoFileOption

type GitRepoFileOption struct {
	GitRepo
	// Ref commit/branch/tag name
	Ref  string `json:"ref"`
	Path string `json:"path"`
}

GitRepoFileOption option for get repo's file

func (*GitRepoFileOption) DeepCopy

func (in *GitRepoFileOption) DeepCopy() *GitRepoFileOption

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoFileOption.

func (*GitRepoFileOption) DeepCopyInto

func (in *GitRepoFileOption) DeepCopyInto(out *GitRepoFileOption)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitRepoFileSpec

type GitRepoFileSpec struct {
	GitCommitBasicInfo
	// FileName file name
	FileName string `json:"fileName" yaml:"fileName"`
	// FilePath file path
	FilePath string `json:"filePath" yaml:"filePath"`
	// Size file size
	Size int64 `json:"size"`
	// Encoding maybe text or base64 when path is a file
	Encoding *string `json:"encoding"`
	// Content file content
	Content    []byte                `json:"content"`
	Properties *runtime.RawExtension `json:"properties,omitempty"`
}

GitRepoFileSpec spec for repository's file

func (*GitRepoFileSpec) DeepCopy

func (in *GitRepoFileSpec) DeepCopy() *GitRepoFileSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepoFileSpec.

func (*GitRepoFileSpec) DeepCopyInto

func (in *GitRepoFileSpec) DeepCopyInto(out *GitRepoFileSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitRepository

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

	Spec GitRepositorySpec `json:"spec"`
}

GitRepository repository

func (*GitRepository) DeepCopy

func (in *GitRepository) DeepCopy() *GitRepository

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepository.

func (*GitRepository) DeepCopyInto

func (in *GitRepository) DeepCopyInto(out *GitRepository)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitRepositoryList

type GitRepositoryList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []GitRepository `json:"items"`
}

GitRepositoryList list of repo

func (*GitRepositoryList) DeepCopy

func (in *GitRepositoryList) DeepCopy() *GitRepositoryList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepositoryList.

func (*GitRepositoryList) DeepCopyInto

func (in *GitRepositoryList) DeepCopyInto(out *GitRepositoryList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitRepositorySpec

type GitRepositorySpec struct {
	// Name repo name
	Name string `json:"name"`
	// HtmlURL repo URL
	HtmlURL string `json:"htmlUrl"`
	// HttpCloneURL clone with http
	HttpCloneURL string `json:"httpCloneUrl"`
	// SshCloneURL clone with ssh
	SshCloneURL string `json:"sshCloneUrl"`
	// DefaultBranch main branch name
	DefaultBranch string `json:"defaultBranch"`
	// CreatedAt repo create time
	CreatedAt metav1.Time `json:"createdAt"`
	// UpdatedAt repo last update time
	UpdatedAt metav1.Time `json:"updatedAt"`
	// Owner repo owner
	Owner      GitUserBaseInfo       `json:"owner"`
	Properties *runtime.RawExtension `json:"properties,omitempty"`
}

GitRepositorySpec spec for repository

func (*GitRepositorySpec) DeepCopy

func (in *GitRepositorySpec) DeepCopy() *GitRepositorySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitRepositorySpec.

func (*GitRepositorySpec) DeepCopyInto

func (in *GitRepositorySpec) DeepCopyInto(out *GitRepositorySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type GitUserBaseInfo

type GitUserBaseInfo struct {
	// Name is the login Name
	Name  string `json:"name"`
	Email string `json:"email"`
}

GitUserBaseInfo user base info

func (*GitUserBaseInfo) DeepCopy

func (in *GitUserBaseInfo) DeepCopy() *GitUserBaseInfo

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitUserBaseInfo.

func (*GitUserBaseInfo) DeepCopyInto

func (in *GitUserBaseInfo) DeepCopyInto(out *GitUserBaseInfo)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ImageConfig added in v0.3.0

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

	Spec ImageConfigSpec `json:"spec"`
}

ImageConfig object for plugins

type ImageConfigSpec added in v0.3.0

type ImageConfigSpec struct {
	Config v1.ImageConfig `json:"config"`
}

type Issue added in v0.3.0

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

	Spec IssueSpec `json:"spec"`
}

Issue object for plugin

type IssueInfo added in v0.3.0

type IssueInfo struct {
	// issue id
	Id string `json:"id"`

	// issue type
	Type string `json:"type"`
}

type IssueList added in v0.3.0

type IssueList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []Issue `json:"items"`
}

IssueList list of Issue

type IssueOptions added in v0.3.0

type IssueOptions struct {
	// Project identity name
	Identity string `json:"identity"`

	// Issue id
	IssueId string `json:"issueId"`

	// Issue branch
	Branch string `json:"branch"`
}

IssueOption path params

type IssuePriority added in v0.3.0

type IssuePriority struct {
	// Issue priority id
	Id string `json:"id"`

	// Issue priority level
	// +optional
	Level string `json:"level"`

	// Issue priority name
	Name string `json:"name"`
}

type IssueProject added in v0.3.0

type IssueProject struct {
	// Issue of project id
	Id string `json:"id"`

	// Issue of project name
	Name string `json:"name"`
}

type IssueSpec added in v0.3.0

type IssueSpec struct {
	// Issue id
	Id string `json:"id"`

	// Issue project info
	Project IssueProject `json:"project"`

	// Address stores the webconsole address if any
	Address *duckv1.Addressable `json:"address"`

	// Issue subject
	Subject string `json:"subject"`

	// Issue type
	Type string `json:"type"`

	// Issue subtype
	SubType string `json:"subType"`

	// Issue priority
	Priority IssuePriority `json:"priority"`

	// Issue status
	Status string `json:"status"`

	// Issue assgin to someone
	Assign UserSpec `json:"assign"`

	// Issue latest update time
	UpdatedTime metav1.Time

	// Issue created user info
	Author UserSpec `json:"author"`

	// Issue description
	Description string `json:"description"`

	// Issue relate other issues
	RelateIssues []RelateIssue `json:"relateIssues"`

	// Issue subtasks
	SubTasks []RelateIssue `json:"subTasks"`

	// Issue comments
	Comments []Comment `json:"comments"`
}

IssueSpec for Issue

type IssueType added in v0.3.0

type IssueType struct {
	// Issue type id
	Id string `json:"id"`

	// Issue type name
	Name string `json:"name"`
}

type ListMeta

type ListMeta struct {
	metav1.ListMeta `json:",inline"`

	// TotalItems returned in the list
	TotalItems int `json:"totalItems"`

	// Current page number
	// +optional
	Page *int `json:"page,omitempty"`

	// Current items per page
	// +optional
	ItemsPerPage *int `json:"itemsPerPage,omitempty"`

	// Total number of pages
	// +optional
	TotalPages *int `json:"totalPages,omitempty"`
}

ListMeta extension of the metav1.ListMeta with paging related data

func (*ListMeta) DeepCopy

func (in *ListMeta) DeepCopy() *ListMeta

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ListMeta.

func (*ListMeta) DeepCopyInto

func (in *ListMeta) DeepCopyInto(out *ListMeta)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ListOptions

type ListOptions struct {
	// ItemsPerPage desired number of items to be returned in each page
	ItemsPerPage int `json:"itemsPerPage"`

	// Page desired to be returned
	Page int `json:"page"`

	// Custom search options
	// +optional
	Search map[string][]string `json:",inline"`

	// Subresoures for listing
	// will only work for lists that support this feature
	// when not supported, this values will be ignored
	// +optional
	SubResources []string `json:"subResources"`

	// Sort for listing
	Sort []SortOptions `json:"sort"`
}

ListOptions options for list

func (*ListOptions) DeepCopy

func (in *ListOptions) DeepCopy() *ListOptions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ListOptions.

func (*ListOptions) DeepCopyInto

func (in *ListOptions) DeepCopyInto(out *ListOptions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ListOptions) GetSearchFirstElement added in v0.3.0

func (opt ListOptions) GetSearchFirstElement(key string) (value string)

GetSearchFirstElement get first element by key that in search map

type ObjectCondition

type ObjectCondition struct {
	apis.Condition         `json:",inline"`
	corev1.ObjectReference `json:",inline"`
	// Annotations necessary annotations for ObjectCondition
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`
}

ObjectCondition is integration of an ObjectReference and a apis.Condition to give a condition for a specific object

func (*ObjectCondition) DeepCopy

func (in *ObjectCondition) DeepCopy() *ObjectCondition

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectCondition.

func (*ObjectCondition) DeepCopyInto

func (in *ObjectCondition) DeepCopyInto(out *ObjectCondition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ObjectCondition) FromTopLevelConditionObject

func (o *ObjectCondition) FromTopLevelConditionObject(obj TopLevelConditionObject) *ObjectCondition

func (ObjectCondition) IsTheSame

func (o ObjectCondition) IsTheSame(obj ObjectCondition) bool

IsTheSame compares both object conditions and returns true if its the same object it uses the ObjectReference as comparisons method and ignore all condition related attributes making this useful when managing ObjectConditions

type ObjectConditionAccessor

type ObjectConditionAccessor interface {
	GetObjectConditions() ObjectConditions
	SetObjectConditions(ObjectConditions)
}

ObjectConditionAccessor sets and gets ObjectConditions +k8s:deepcopy-gen=false

type ObjectConditionChanger

type ObjectConditionChanger interface {
	SetObjectCondition(objc ObjectCondition)
	GetObjectConditionByObjRef(objref corev1.ObjectReference) *ObjectCondition
	RemoveObjectConditionByObjRef(objref corev1.ObjectReference)
}

ObjectConditionChanger sets and removes objects +k8s:deepcopy-gen=false

type ObjectConditionManager

type ObjectConditionManager interface {
	ObjectConditionAccessor
	ObjectConditionChanger

	// MarkTrue sets the status of t to true, and then marks the happy condition to
	// true if all dependents are true.
	MarkTrue(t corev1.ObjectReference)

	// MarkTrueWithReason sets the status of t to true with the reason, and then marks the happy
	// condition to true if all dependents are true.
	MarkTrueWithReason(t corev1.ObjectReference, reason, messageFormat string, messageA ...interface{})

	// MarkUnknown sets the status of t to Unknown and also sets the happy condition
	// to Unknown if no other dependent condition is in an error state.
	MarkUnknown(t corev1.ObjectReference, reason, messageFormat string, messageA ...interface{})

	// MarkFalse sets the status of t and the happy condition to False.
	MarkFalse(t corev1.ObjectReference, reason, messageFormat string, messageA ...interface{})

	// SetConditionType sets a condition type for object condition
	SetConditionType(t corev1.ObjectReference, conditionType apis.ConditionType)

	// SetSeverity sets a severity for object condition
	SetSeverity(t corev1.ObjectReference, severity apis.ConditionSeverity)
}

ObjectConditionManager manages +k8s:deepcopy-gen=false

func ManageObjectCondition

func ManageObjectCondition(accessor ObjectConditionAccessor) ObjectConditionManager

ManageObjectCondition returns a ObjectConditionManager

type ObjectConditionSet

type ObjectConditionSet struct {
	// contains filtered or unexported fields
}

ObjectConditionSet set of object conditions managed in a controller and added to specific object types it helps iterate and update its contents +k8s:deepcopy-gen=false

func (*ObjectConditionSet) GetObjectConditionByObjRef

func (o *ObjectConditionSet) GetObjectConditionByObjRef(objref corev1.ObjectReference) *ObjectCondition

GetObjectConditionByObjRef returns object condition by object reference, returns nil if not found

func (*ObjectConditionSet) GetObjectConditions

func (o *ObjectConditionSet) GetObjectConditions() ObjectConditions

GetObjectConditions get conditions

func (*ObjectConditionSet) MarkFalse

func (o *ObjectConditionSet) MarkFalse(objref corev1.ObjectReference, reason, messageFormat string, messageA ...interface{})

MarkFalse sets the status of t and the happy condition to False.

func (*ObjectConditionSet) MarkTrue

func (o *ObjectConditionSet) MarkTrue(objref corev1.ObjectReference)

MarkTrue sets the status of t to true, and then marks the happy condition to true if all dependents are true.

func (*ObjectConditionSet) MarkTrueWithReason

func (o *ObjectConditionSet) MarkTrueWithReason(objref corev1.ObjectReference, reason, messageFormat string, messageA ...interface{})

MarkTrueWithReason sets the status of t to true with the reason

func (*ObjectConditionSet) MarkUnknown

func (o *ObjectConditionSet) MarkUnknown(objref corev1.ObjectReference, reason, messageFormat string, messageA ...interface{})

MarkUnknown sets the status of t to Unknown and also sets the happy condition to Unknown if no other dependent condition is in an error state.

func (*ObjectConditionSet) RemoveObjectConditionByObjRef

func (o *ObjectConditionSet) RemoveObjectConditionByObjRef(objref corev1.ObjectReference)

RemoveObjectConditionByObjRef removes item by corev1.ObjectReference

func (*ObjectConditionSet) SetConditionType

func (o *ObjectConditionSet) SetConditionType(objref corev1.ObjectReference, conditionType apis.ConditionType)

SetConditionType sets a condition type for object condition

func (*ObjectConditionSet) SetObjectCondition

func (o *ObjectConditionSet) SetObjectCondition(objc ObjectCondition)

SetObjectCondition sets object into condition slice in a upsert method

func (*ObjectConditionSet) SetObjectConditions

func (o *ObjectConditionSet) SetObjectConditions(objcs ObjectConditions)

GetObjectConditions set conditions

func (*ObjectConditionSet) SetSeverity

func (o *ObjectConditionSet) SetSeverity(objref corev1.ObjectReference, severity apis.ConditionSeverity)

SetSeverity sets a severity for object condition

type ObjectConditions

type ObjectConditions []ObjectCondition

ObjectConditions collection of object conditions useful to store and iterate over different object conditions in the status of an object

func (ObjectConditions) DeepCopy

func (in ObjectConditions) DeepCopy() ObjectConditions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectConditions.

func (ObjectConditions) DeepCopyInto

func (in ObjectConditions) DeepCopyInto(out *ObjectConditions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ObjectConditions) GetObjectConditionByObjRef

func (o ObjectConditions) GetObjectConditionByObjRef(objref corev1.ObjectReference) *ObjectCondition

GetObjectConditionByObjRef get object condition by object reference, returns nil if not found

func (ObjectConditions) Manage

Manage returns a ObjectConditionSet to manage its contents

func (ObjectConditions) RemoveObjectConditionByObjRef

func (o ObjectConditions) RemoveObjectConditionByObjRef(objref corev1.ObjectReference) ObjectConditions

RemoveObjectConditionByObjRef removes a conditions based on a object reference and returns a new slice

func (ObjectConditions) SetObjectCondition

func (o ObjectConditions) SetObjectCondition(objc ObjectCondition) ObjectConditions

SetObjectCondition updates a condition using the object reference, and if not found will append to the end and return a new slice

type ObjectRefOptionsFunc

type ObjectRefOptionsFunc func(obj metav1.Object, ref *corev1.ObjectReference)

+k8s:deepcopy-gen=false

func ObjectRefWithNamespace

func ObjectRefWithNamespace() ObjectRefOptionsFunc

func ObjectRefWithTypeMeta

func ObjectRefWithTypeMeta() ObjectRefOptionsFunc

func ObjectRefWithUID

func ObjectRefWithUID() ObjectRefOptionsFunc

type Project

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

	Spec ProjectSpec `json:"spec"`
}

Project object for plugins

func (*Project) AddNamespaceRef added in v0.2.0

func (p *Project) AddNamespaceRef(refs ...v1.ObjectReference)

func (*Project) DeepCopy

func (in *Project) DeepCopy() *Project

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Project.

func (*Project) DeepCopyInto

func (in *Project) DeepCopyInto(out *Project)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectList

type ProjectList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []Project `json:"items"`
}

ProjectList list of projects

func (*ProjectList) DeepCopy

func (in *ProjectList) DeepCopy() *ProjectList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectList.

func (*ProjectList) DeepCopyInto

func (in *ProjectList) DeepCopyInto(out *ProjectList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProjectList) Filter added in v0.3.0

func (p *ProjectList) Filter(filter func(project Project) bool) *ProjectList

Filter takes a closure that returns true or false, if true, the project should be present

func (*ProjectList) Paginate added in v0.3.0

func (p *ProjectList) Paginate(page int, pageSize int) *ProjectList

Paginate return a pagination subset of project list with specific page and page size

func (*ProjectList) Sort added in v0.3.0

func (p *ProjectList) Sort() *ProjectList

Sort project list by name

type ProjectSpec

type ProjectSpec struct {
	// Public defines if a project is public or not
	Public bool `json:"public"`

	// Address API related access URL
	// +optional
	Address *duckv1.Addressable `json:"address,omitempty"`

	// Access stores the webconsole address if any
	// +optional
	Access *duckv1.Addressable `json:"access,omitempty"`

	// project subtype
	// +kubebuilder:default="Project"
	SubType ProjectSubType `json:"subType"`

	// NamespaceRefs for which this project is already bound to
	// +optional
	NamespaceRefs []corev1.ObjectReference `json:"namespaceRefs,omitempty"`

	// Properties extended properties for Project
	Properties *runtime.RawExtension `json:"properties,omitempty"`
}

ProjectSpec spec for project TODO: add more necessary spec data

func (*ProjectSpec) DeepCopy

func (in *ProjectSpec) DeepCopy() *ProjectSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectSpec.

func (*ProjectSpec) DeepCopyInto

func (in *ProjectSpec) DeepCopyInto(out *ProjectSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectSubType added in v0.2.0

type ProjectSubType string

ProjectSubType stores a specific project subtype

const (
	// DefaultProjectSubType default project subtype
	DefaultProjectSubType ProjectSubType = "Project"

	// ImageRegistryProjectSubType image registry project subtype
	ImageRegistryProjectSubType ProjectSubType = "ImageRegistry"

	// GitUserProjectSubType git user project subtype
	GitUserProjectSubType ProjectSubType = "GitUser"

	// GitGroupProjectSubType git group project subtype
	GitGroupProjectSubType ProjectSubType = "GitGroup"

	// RawRepositoryProjectSubType raw repository project subtype
	RawRepositoryProjectSubType ProjectSubType = "RawRepository"

	// MavenRepositoryProjectSubType maven repository project subtype
	MavenRepositoryProjectSubType ProjectSubType = "MavenRepository"

	// ProjectManagementSubtype project management subtype
	ProjectManagementSubtype ProjectSubType = "ProjectManagement"
)

func (ProjectSubType) String added in v0.2.0

func (r ProjectSubType) String() string

func (ProjectSubType) Validate added in v0.2.0

func (r ProjectSubType) Validate(fld *field.Path) field.ErrorList

Validate if is known types

type PullRequestState

type PullRequestState string
const (
	PullRequestOpenedState PullRequestState = "opened"
	PullRequestClosedState PullRequestState = "closed"
	PullRequestMergedState PullRequestState = "merged"
	PullRequestAllState    PullRequestState = "all"
)

func String2PullRequestState

func String2PullRequestState(state string) *PullRequestState

type RelateIssue added in v0.3.0

type RelateIssue struct {
	// Relate issue subject
	Subject string `json:"subject"`

	// Relate issue access
	Access *duckv1.Addressable `json:"access"`
}

type ReportSyncReason added in v0.3.0

type ReportSyncReason string
const (
	// Sync task report succeeded
	ReportSyncSucceededReason ReportSyncReason = SucceededReason
	// Report is syncing
	ReportSyncingReason ReportSyncReason = "ReportSyncing"
	// Failed to sync report
	ReportSyncFailedReason ReportSyncReason = "ReportSyncFailed"
)

type Repository

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

	Spec RepositorySpec `json:"spec"`
}

Repository object for plugins

func (*Repository) AddNamespaceRef added in v0.2.0

func (r *Repository) AddNamespaceRef(refs ...v1.ObjectReference)

func (*Repository) DeepCopy

func (in *Repository) DeepCopy() *Repository

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Repository.

func (*Repository) DeepCopyInto

func (in *Repository) DeepCopyInto(out *Repository)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RepositoryList

type RepositoryList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []Repository `json:"items"`
}

RepositoryList list of repositories

func (*RepositoryList) DeepCopy

func (in *RepositoryList) DeepCopy() *RepositoryList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepositoryList.

func (*RepositoryList) DeepCopyInto

func (in *RepositoryList) DeepCopyInto(out *RepositoryList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RepositoryList) Filter added in v0.3.0

func (r *RepositoryList) Filter(filter func(repository Repository) bool) *RepositoryList

Filter takes a closure that returns true or false, if true, the repository should be present

func (*RepositoryList) Paginate added in v0.3.0

func (r *RepositoryList) Paginate(page int, pageSize int) *RepositoryList

Paginate return a pagination subset of repository list with specific page and page size

type RepositoryOptions

type RepositoryOptions struct {
	// project name
	Project string         `json:"project"`
	SubType ProjectSubType `json:"subType"`
}

RepositoryOptions list repositroy path params

func (*RepositoryOptions) DeepCopy

func (in *RepositoryOptions) DeepCopy() *RepositoryOptions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepositoryOptions.

func (*RepositoryOptions) DeepCopyInto

func (in *RepositoryOptions) DeepCopyInto(out *RepositoryOptions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RepositorySpec

type RepositorySpec struct {
	// Address API related access URL
	// +optional
	Address *duckv1.Addressable `json:"address,omitempty"`

	// Access stores the webconsole address if any
	// +optional
	Access *duckv1.Addressable `json:"access,omitempty"`

	// Type of repository content
	Type RepositorySubType `json:"type"`

	// NamespaceRefs for which this project is already bound to
	// +optional
	NamespaceRefs []corev1.ObjectReference `json:"namespaceRefs,omitempty"`

	// UpdatedTime updated time for repository
	// +optional
	UpdatedTime metav1.Time `json:"updatedTime"`

	// Properties extended properties for Repository
	// +optional
	Properties *runtime.RawExtension `json:"properties,omitempty"`
}

RepositorySpec spec for repository TODO: add more necessary spec data

func (*RepositorySpec) DeepCopy

func (in *RepositorySpec) DeepCopy() *RepositorySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RepositorySpec.

func (*RepositorySpec) DeepCopyInto

func (in *RepositorySpec) DeepCopyInto(out *RepositorySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RepositorySubType added in v0.2.0

type RepositorySubType string

RepositorySubType stores a specific repository subtype

const (
	// DefaultRepositorySubType default repository subtype
	DefaultRepositorySubType RepositorySubType = "Repository"

	// ImageRepositorySubType OCI artifact repository subtype
	ImageRepositorySubType RepositorySubType = "ImageRepository"

	// CodeRepositorySubType Code repository subtype
	CodeRepositorySubType RepositorySubType = "CodeRepository"
)

func (RepositorySubType) String added in v0.2.0

func (r RepositorySubType) String() string

type ResourceURI

type ResourceURI struct {
	// Unique resource identification for webhook resource, i.e
	// a code repository uri: https://github.com/katanomi/core
	URI *apis.URL `json:"uri"`

	// SecretRef stores a reference to a secret object
	// that contain authentication data for the described resource
	SecretRef *corev1.ObjectReference `json:"secretRef"`
}

ResourceURI stores a resource URI together with secret references for usage

func (*ResourceURI) DeepCopy

func (in *ResourceURI) DeepCopy() *ResourceURI

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceURI.

func (*ResourceURI) DeepCopyInto

func (in *ResourceURI) DeepCopyInto(out *ResourceURI)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ResourceURI) Validate

func (r *ResourceURI) Validate(path *field.Path) field.ErrorList

Validate basic validation for ResourceURI

type SortBy added in v0.3.0

type SortBy string
const (
	NameSortKey        SortBy = "name"
	UpdatedTimeSortKey SortBy = "updatedTime"
	CreatedTimeSortKey SortBy = "createdTime"

	// SearchValueKey The key of the keyword used for the search
	SearchValueKey = "searchValue"
)

type SortOptions added in v0.3.0

type SortOptions struct {
	// SortBy field
	SortBy SortBy `json:"sortBy"`

	// Order sorted is 'asc' or 'desc'
	Order SortOrder `json:"order"`
}

SortOptions options for sort

func (*SortOptions) DeepCopy added in v0.3.0

func (in *SortOptions) DeepCopy() *SortOptions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SortOptions.

func (*SortOptions) DeepCopyInto added in v0.3.0

func (in *SortOptions) DeepCopyInto(out *SortOptions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SortOrder added in v0.3.0

type SortOrder string
const (
	OrderDesc SortOrder = "desc"
	OrderAsc  SortOrder = "asc"
)

type TopLevelConditionObject

type TopLevelConditionObject interface {
	metav1.Object
	// GetTopLevelCondition finds and returns the top level Condition (happy Condition).
	GetTopLevelCondition() *apis.Condition
}

TopLevelConditionObject shoule be an metav1.Object that implement func GetTopLevelCondition() *apis.Condition +k8s:deepcopy-gen=false

type TriggeredBy

type TriggeredBy struct {
	// Reference to the user that triggered the object. Any Kubernetes `Subject` is accepted.
	// +optional
	User *rbacv1.Subject `json:"user,omitempty"`

	// Cloud Event data for the event that triggered.
	// +optional
	CloudEvent *CloudEvent `json:"cloudEvent,omitempty"`

	// Reference to another object that might have triggered this object
	// +optional
	Ref *corev1.ObjectReference `json:"ref,omitempty"`

	// Date time of creation of triggered event. Will match a resource's metadata.creationTimestamp
	// it is added here for convinience only
	// +optional
	TriggeredTimestamp *metav1.Time `json:"triggeredTimestamp,omitempty"`

	// Indicates trigger type, such as Manual Automated.
	// +optional
	TriggeredType DefinitionTriggeredType `json:"triggeredType,omitempty"`
}

Stores a list of triggered information such as: Entity that triggered, reference of an object that could have triggered, and event that triggered.

func (*TriggeredBy) DeepCopy

func (in *TriggeredBy) DeepCopy() *TriggeredBy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TriggeredBy.

func (*TriggeredBy) DeepCopyInto

func (in *TriggeredBy) DeepCopyInto(out *TriggeredBy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TriggeredBy) FromAnnotation

func (by *TriggeredBy) FromAnnotation(annotations map[string]string) (*TriggeredBy, error)

FromAnnotation will set `by` from annotations it will find TriggeredByAnnotationKey and unmarshl content into struct type *TriggeredBy if not found TriggeredByAnnotationKey, error would be nil, and *TriggeredBy would be nil also. if some errors happened, error will not be nil and *TriggeredBy will be nil

func (TriggeredBy) IsZero

func (by TriggeredBy) IsZero() bool

IsZero basic function returns true when all attributes of the object are empty

func (TriggeredBy) SetIntoAnnotation

func (by TriggeredBy) SetIntoAnnotation(annotations map[string]string) (map[string]string, error)

SetIntoAnnotation will set TriggeredBy into annotations return annotations that with triggeredby.

type User added in v0.3.0

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

	Spec UserSpec `json:"spec"`
}

User object for plugin

type UserList added in v0.3.0

type UserList struct {
	metav1.TypeMeta `json:",inline"`
	ListMeta        `json:"metadata,omitempty"`

	Items []User `json:"items"`
}

UserList list of user

type UserOptions added in v0.3.0

type UserOptions struct {
	// Project identity
	Project string `json:"project"`

	// Group identity
	Group string `json:"group"`

	// User indentity
	UserId string `json:"userId"`
}

type UserSpec added in v0.3.0

type UserSpec struct {
	// user id
	Id string `json:"id,omitempty"`

	// user name
	Name string `json:"name,omitempty"`

	//user email
	Email string `json:"email,omitempty"`
}

UserSpec for Issue

type WebhookEventSupportType added in v0.3.0

type WebhookEventSupportType string

WebhookEventSupportType consists of event type and "Event"

const (
	// https://github.com/katanomi/spec/pull/80
	// key in integrationClass.status
	// CodeRepositoryPushWebhookEvent event value for code repository's push webhook
	CodeRepositoryPushWebhookEvent WebhookEventSupportType = "CodeRepositoryPushEvent"
	// CodeRepositoryTagWebhookEvent event values for code repository's tag webhook
	CodeRepositoryTagWebhookEvent WebhookEventSupportType = "CodeRepositoryTagEvent"
	// CodeRepositoryPullRequestWebhookEvent event values for code repository's pr webhook
	CodeRepositoryPullRequestWebhookEvent WebhookEventSupportType = "CodeRepositoryPullRequestEvent"
	// ArtifactDeleteWebhookEvent event values for artifact's delete webhook
	ArtifactDeleteWebhookEvent WebhookEventSupportType = "ArtifactDeleteEvent"
	// ArtifactPushWebhookEvent event values for artifact's push webhook
	ArtifactPushWebhookEvent WebhookEventSupportType = "ArtifactPushEvent"

	// WebhookEventSuffix key's suffix in integrationClass.status
	WebhookEventSuffix = "Event"
)

func (WebhookEventSupportType) String added in v0.3.0

func (w WebhookEventSupportType) String() string

type WebhookRegisterSpec

type WebhookRegisterSpec struct {
	// URI stores the Uniform Resource Identifier for webhook resource
	URI apis.URL `json:"uri"`
	// Events holds a list of event types desired for registration
	Events []string `json:"events"`
	// WebhookID is only used in update and can be blank for creation
	// +optional
	WebhookID string `json:"webhookID"`
	// Address stores the target address for the webhook
	Address apis.URL `json:"addressURL"`
	// RequestSecret will hold information for a request header that should be used
	// by the registring webhook
	// this data will be used during request to validate webhook requests
	// +optional
	RequestSecret string `json:"requestSecret"`
}

WebhookRegisterSpec specifications to register a webhook

func (*WebhookRegisterSpec) DeepCopy

func (in *WebhookRegisterSpec) DeepCopy() *WebhookRegisterSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookRegisterSpec.

func (*WebhookRegisterSpec) DeepCopyInto

func (in *WebhookRegisterSpec) DeepCopyInto(out *WebhookRegisterSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WebhookRegisterStatus

type WebhookRegisterStatus struct {
	// WebhookID will return the registered webhook id during create
	WebhookID string `json:"webhookID"`

	// Address stores the target address for the webhook
	Address apis.URL `json:"addressURL"`

	// StatusCode for the API request
	// +optional
	StatusCode int `json:"statusCode"`

	// Body response body returned from the request
	// +optional
	Body []byte `json:"body"`
}

WebhookRegisterStatus stores a registration request result

func (*WebhookRegisterStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookRegisterStatus.

func (*WebhookRegisterStatus) DeepCopyInto

func (in *WebhookRegisterStatus) DeepCopyInto(out *WebhookRegisterStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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