Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the ghapp v1alpha1 API group +kubebuilder:object:generate=true +groupName=ghapp.tsuzu.dev
Index ¶
- Variables
- type ClusterGitHubApp
- func (in *ClusterGitHubApp) DeepCopy() *ClusterGitHubApp
- func (in *ClusterGitHubApp) DeepCopyInto(out *ClusterGitHubApp)
- func (in *ClusterGitHubApp) DeepCopyObject() runtime.Object
- func (a *ClusterGitHubApp) GetAppID() int64
- func (a *ClusterGitHubApp) GetPrivateKey(ctx context.Context, c client.Client) ([]byte, error)
- func (a *ClusterGitHubApp) GetURL() string
- type ClusterGitHubAppList
- type ClusterGitHubAppSpec
- type ClusterGitHubAppStatus
- type GitHubApp
- func (in *GitHubApp) DeepCopy() *GitHubApp
- func (in *GitHubApp) DeepCopyInto(out *GitHubApp)
- func (in *GitHubApp) DeepCopyObject() runtime.Object
- func (a *GitHubApp) GetAppID() int64
- func (a *GitHubApp) GetPrivateKey(ctx context.Context, c client.Client) ([]byte, error)
- func (a *GitHubApp) GetURL() string
- type GitHubAppList
- type GitHubAppSpec
- type GitHubAppStatus
- type Installation
- type InstallationList
- type InstallationPermissions
- type InstallationSpec
- type InstallationStatus
- type MetadataSpec
- type PrivateKeySecretRef
- type SecretTemplateSpec
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "ghapp.tsuzu.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 )
Functions ¶
This section is empty.
Types ¶
type ClusterGitHubApp ¶
type ClusterGitHubApp struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ClusterGitHubAppSpec `json:"spec,omitempty"`
Status ClusterGitHubAppStatus `json:"status,omitempty"`
}
ClusterGitHubApp is the Schema for the clustergithubapps API +kubebuilder:resource:path=clustergithubapps,scope=Cluster
func (*ClusterGitHubApp) DeepCopy ¶
func (in *ClusterGitHubApp) DeepCopy() *ClusterGitHubApp
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterGitHubApp.
func (*ClusterGitHubApp) DeepCopyInto ¶
func (in *ClusterGitHubApp) DeepCopyInto(out *ClusterGitHubApp)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterGitHubApp) DeepCopyObject ¶
func (in *ClusterGitHubApp) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClusterGitHubApp) GetAppID ¶
func (a *ClusterGitHubApp) GetAppID() int64
func (*ClusterGitHubApp) GetPrivateKey ¶
func (*ClusterGitHubApp) GetURL ¶
func (a *ClusterGitHubApp) GetURL() string
type ClusterGitHubAppList ¶
type ClusterGitHubAppList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ClusterGitHubApp `json:"items"`
}
ClusterGitHubAppList contains a list of ClusterGitHubApp
func (*ClusterGitHubAppList) DeepCopy ¶
func (in *ClusterGitHubAppList) DeepCopy() *ClusterGitHubAppList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterGitHubAppList.
func (*ClusterGitHubAppList) DeepCopyInto ¶
func (in *ClusterGitHubAppList) DeepCopyInto(out *ClusterGitHubAppList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterGitHubAppList) DeepCopyObject ¶
func (in *ClusterGitHubAppList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterGitHubAppSpec ¶
type ClusterGitHubAppSpec struct {
// URL is the base url for GitHub
// +kubebuilder:validation:Optional
URL string `json:"url"`
// AppID is the id of GitHub App
AppID int64 `json:"appID"`
// PrivateKeySecretRef is the reference for the secret of GitHub App's private key
PrivateKeySecretRef PrivateKeySecretRef `json:"privateKeySecretRef"`
}
ClusterGitHubAppSpec defines the desired state of ClusterGitHubApp
func (*ClusterGitHubAppSpec) DeepCopy ¶
func (in *ClusterGitHubAppSpec) DeepCopy() *ClusterGitHubAppSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterGitHubAppSpec.
func (*ClusterGitHubAppSpec) DeepCopyInto ¶
func (in *ClusterGitHubAppSpec) DeepCopyInto(out *ClusterGitHubAppSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterGitHubAppStatus ¶
type ClusterGitHubAppStatus struct {
}
ClusterGitHubAppStatus defines the observed state of ClusterGitHubApp
func (*ClusterGitHubAppStatus) DeepCopy ¶
func (in *ClusterGitHubAppStatus) DeepCopy() *ClusterGitHubAppStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterGitHubAppStatus.
func (*ClusterGitHubAppStatus) DeepCopyInto ¶
func (in *ClusterGitHubAppStatus) DeepCopyInto(out *ClusterGitHubAppStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitHubApp ¶
type GitHubApp struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec GitHubAppSpec `json:"spec,omitempty"`
Status GitHubAppStatus `json:"status,omitempty"`
}
GitHubApp is the Schema for the githubapps API
func (*GitHubApp) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitHubApp.
func (*GitHubApp) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GitHubApp) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GitHubApp) GetPrivateKey ¶
type GitHubAppList ¶
type GitHubAppList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []GitHubApp `json:"items"`
}
GitHubAppList contains a list of GitHubApp
func (*GitHubAppList) DeepCopy ¶
func (in *GitHubAppList) DeepCopy() *GitHubAppList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitHubAppList.
func (*GitHubAppList) DeepCopyInto ¶
func (in *GitHubAppList) DeepCopyInto(out *GitHubAppList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GitHubAppList) DeepCopyObject ¶
func (in *GitHubAppList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GitHubAppSpec ¶
type GitHubAppSpec struct {
// URL is the base url for GitHub
// +kubebuilder:validation:Optional
URL string `json:"url"`
// AppID is the id of GitHub App
AppID int64 `json:"appID"`
// PrivateKeySecretRef is the reference for the secret of GitHub App's private key
PrivateKeySecretRef PrivateKeySecretRef `json:"privateKeySecretRef"`
}
GitHubAppSpec defines the desired state of GitHubApp
func (*GitHubAppSpec) DeepCopy ¶
func (in *GitHubAppSpec) DeepCopy() *GitHubAppSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitHubAppSpec.
func (*GitHubAppSpec) DeepCopyInto ¶
func (in *GitHubAppSpec) DeepCopyInto(out *GitHubAppSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GitHubAppStatus ¶
type GitHubAppStatus struct {
}
GitHubAppStatus defines the observed state of GitHubApp
func (*GitHubAppStatus) DeepCopy ¶
func (in *GitHubAppStatus) DeepCopy() *GitHubAppStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitHubAppStatus.
func (*GitHubAppStatus) DeepCopyInto ¶
func (in *GitHubAppStatus) DeepCopyInto(out *GitHubAppStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Installation ¶
type Installation struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec InstallationSpec `json:"spec,omitempty"`
Status InstallationStatus `json:"status,omitempty"`
}
Installation is the Schema for the installations API
func (*Installation) DeepCopy ¶
func (in *Installation) DeepCopy() *Installation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Installation.
func (*Installation) DeepCopyInto ¶
func (in *Installation) DeepCopyInto(out *Installation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Installation) DeepCopyObject ¶
func (in *Installation) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InstallationList ¶
type InstallationList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Installation `json:"items"`
}
InstallationList contains a list of Installation
func (*InstallationList) DeepCopy ¶
func (in *InstallationList) DeepCopy() *InstallationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstallationList.
func (*InstallationList) DeepCopyInto ¶
func (in *InstallationList) DeepCopyInto(out *InstallationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InstallationList) DeepCopyObject ¶
func (in *InstallationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InstallationPermissions ¶
type InstallationPermissions struct {
Administration *string `json:"administration,omitempty"`
Blocking *string `json:"blocking,omitempty"`
Checks *string `json:"checks,omitempty"`
Contents *string `json:"contents,omitempty"`
ContentReferences *string `json:"content_references,omitempty"`
Deployments *string `json:"deployments,omitempty"`
Emails *string `json:"emails,omitempty"`
Followers *string `json:"followers,omitempty"`
Issues *string `json:"issues,omitempty"`
Metadata *string `json:"metadata,omitempty"`
Members *string `json:"members,omitempty"`
OrganizationAdministration *string `json:"organization_administration,omitempty"`
OrganizationHooks *string `json:"organization_hooks,omitempty"`
OrganizationPlan *string `json:"organization_plan,omitempty"`
OrganizationPreReceiveHooks *string `json:"organization_pre_receive_hooks,omitempty"`
OrganizationProjects *string `json:"organization_projects,omitempty"`
OrganizationUserBlocking *string `json:"organization_user_blocking,omitempty"`
Packages *string `json:"packages,omitempty"`
Pages *string `json:"pages,omitempty"`
PullRequests *string `json:"pull_requests,omitempty"`
RepositoryHooks *string `json:"repository_hooks,omitempty"`
RepositoryProjects *string `json:"repository_projects,omitempty"`
RepositoryPreReceiveHooks *string `json:"repository_pre_receive_hooks,omitempty"`
SingleFile *string `json:"single_file,omitempty"`
Statuses *string `json:"statuses,omitempty"`
TeamDiscussions *string `json:"team_discussions,omitempty"`
VulnerabilityAlerts *string `json:"vulnerability_alerts,omitempty"`
}
InstallationPermissions is the permissions to restrict permissions for tokens
func (*InstallationPermissions) DeepCopy ¶
func (in *InstallationPermissions) DeepCopy() *InstallationPermissions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstallationPermissions.
func (*InstallationPermissions) DeepCopyInto ¶
func (in *InstallationPermissions) DeepCopyInto(out *InstallationPermissions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InstallationPermissions) GetGitHubPermissions ¶
func (p *InstallationPermissions) GetGitHubPermissions() *github.InstallationPermissions
GetGitHubPermissions returns github.InstallationPermissions converted from InstallationPermissions
type InstallationSpec ¶
type InstallationSpec struct {
// AppRef is a reference to ClusterGitHubApp or GitHubApp
AppRef corev1.ObjectReference `json:"appRef"`
// InstallationID is an installation id for GitHub App
InstallationID int64 `json:"installationID"`
// RepositoryIDS are used to restrict permissions for tokens
// +kubebuilder:validation:Optional
RepositoryIDs []int64 `json:"repositoryIDs,omitempty"`
// Permissions are used to restrict permissions for tokens
// +kubebuilder:validation:Optional
Permissions *InstallationPermissions `json:"permissions"`
// Key is the key in the secret to save the token
Key string `json:"key"`
// Template is the template to generate secret with the installation token
Template SecretTemplateSpec `json:"template"`
}
InstallationSpec defines the desired state of GitHub installation
func (*InstallationSpec) DeepCopy ¶
func (in *InstallationSpec) DeepCopy() *InstallationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstallationSpec.
func (*InstallationSpec) DeepCopyInto ¶
func (in *InstallationSpec) DeepCopyInto(out *InstallationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InstallationStatus ¶
type InstallationStatus struct {
// Ready is the status of the installation token
Ready bool `json:"ready"`
// Secret is the secret name to save the installation token
Secret string `json:"secret"`
// Message is the error message if something failed
// +kubebuilder:validation:Optional
Message string `json:"message,omitempty"`
}
InstallationStatus defines the observed state of Installation
func (*InstallationStatus) DeepCopy ¶
func (in *InstallationStatus) DeepCopy() *InstallationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstallationStatus.
func (*InstallationStatus) DeepCopyInto ¶
func (in *InstallationStatus) DeepCopyInto(out *InstallationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetadataSpec ¶
type MetadataSpec struct {
// Map of string keys and values that can be used to organize and categorize
// (scope and select) objects. May match selectors of replication controllers
// and services.
// More info: http://kubernetes.io/docs/user-guide/labels
// +kubebuilder:validation:Optional
Labels map[string]string `json:"labels,omitempty"`
// Annotations is an unstructured key value map stored with a resource that may be
// set by external tools to store and retrieve arbitrary metadata. They are not
// queryable and should be preserved when modifying objects.
// More info: http://kubernetes.io/docs/user-guide/annotations
// +kubebuilder:validation:Optional
Annotations map[string]string `json:"annotations,omitempty"`
}
func (*MetadataSpec) DeepCopy ¶
func (in *MetadataSpec) DeepCopy() *MetadataSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataSpec.
func (*MetadataSpec) DeepCopyInto ¶
func (in *MetadataSpec) DeepCopyInto(out *MetadataSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrivateKeySecretRef ¶
func (*PrivateKeySecretRef) DeepCopy ¶
func (in *PrivateKeySecretRef) DeepCopy() *PrivateKeySecretRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateKeySecretRef.
func (*PrivateKeySecretRef) DeepCopyInto ¶
func (in *PrivateKeySecretRef) DeepCopyInto(out *PrivateKeySecretRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretTemplateSpec ¶
type SecretTemplateSpec struct {
// Standard object's metadata.
// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
// +kubebuilder:validation:Optional
MetadataSpec `json:"metadata,omitempty"`
// Immutable, if set to true, ensures that data stored in the Secret cannot
// be updated (only object metadata can be modified).
// If not set to true, the field can be modified at any time.
// Defaulted to nil.
// This is an alpha field enabled by ImmutableEphemeralVolumes feature gate.
// +kubebuilder:validation:Optional
Immutable *bool `json:"immutable,omitempty"`
// Data contains the secret data. Each key must consist of alphanumeric
// characters, '-', '_' or '.'. The serialized form of the secret data is a
// base64 encoded string, representing the arbitrary (possibly non-string)
// data value here. Described in https://tools.ietf.org/html/rfc4648#section-4
// +kubebuilder:validation:Optional
Data map[string][]byte `json:"data,omitempty"`
// stringData allows specifying non-binary secret data in string form.
// It is provided as a write-only convenience method.
// All keys and values are merged into the data field on write, overwriting any existing values.
// It is never output when reading from the API.
// +k8s:conversion-gen=false
// +kubebuilder:validation:Optional
StringData map[string]string `json:"stringData,omitempty"`
// Used to facilitate programmatic handling of secret data.
// +kubebuilder:validation:Optional
Type corev1.SecretType `json:"type,omitempty"`
}
SecretTemplateSpec is the template to generate secret with the installation token
func (*SecretTemplateSpec) DeepCopy ¶
func (in *SecretTemplateSpec) DeepCopy() *SecretTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretTemplateSpec.
func (*SecretTemplateSpec) DeepCopyInto ¶
func (in *SecretTemplateSpec) DeepCopyInto(out *SecretTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.