Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update API version to v1beta3 #1127

Merged
merged 4 commits into from
Nov 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions PROJECT
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ resources:
domain: kubevirt.io
group: ssp
kind: SSP
path: kubevirt.io/ssp-operator/api/v1beta2
version: v1beta2
path: kubevirt.io/ssp-operator/api/v1beta3
version: v1beta3
webhooks:
# conversion: true
# defaulting: true
Expand All @@ -24,8 +24,8 @@ resources:
domain: kubevirt.io
group: ssp
kind: SSP
path: kubevirt.io/ssp-operator/api/v1beta1
version: v1beta1
path: kubevirt.io/ssp-operator/api/v1beta2
version: v1beta2
webhooks:
# conversion: true
# defaulting: true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ See the License for the specific language governing permissions and
limitations under the License.
*/

// Package v1beta1 contains API Schema definitions for the ssp v1beta1 API group
// Package v1beta3 contains API Schema definitions for the ssp v1beta3 API group
// +kubebuilder:object:generate=true
// +groupName=ssp.kubevirt.io
package v1beta1
package v1beta3

import (
"k8s.io/apimachinery/pkg/runtime/schema"
Expand All @@ -26,7 +26,7 @@ import (

var (
// GroupVersion is group version used to register these objects
GroupVersion = schema.GroupVersion{Group: "ssp.kubevirt.io", Version: "v1beta1"}
GroupVersion = schema.GroupVersion{Group: "ssp.kubevirt.io", Version: "v1beta3"}

// SchemeBuilder is used to add go types to the GroupVersionKind scheme
SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
limitations under the License.
*/

package v1beta1
package v1beta3

import (
ocpv1 "github.com/openshift/api/config/v1"
Expand Down Expand Up @@ -43,38 +43,10 @@ type CommonTemplates struct {
//+kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
Namespace string `json:"namespace"`

// DataImportCronTemplates defines a list of DataImportCrons managed by the SSP
// Operator. This is intended for images used by CommonTemplates.
// DataImportCronTemplates defines a list of DataImportCrons managed by the SSP Operator.
DataImportCronTemplates []DataImportCronTemplate `json:"dataImportCronTemplates,omitempty"`
}

type NodeLabeller struct {
// Placement describes the node scheduling configuration
Placement *lifecycleapi.NodePlacement `json:"placement,omitempty"`
}

type CommonInstancetypes struct {
// URL of a remote Kustomize target from which to generate and deploy resources.
//
// The following caveats apply to the provided URL:
//
// * Only 'https://' and 'git://' URLs are supported.
//
// * The URL must include '?ref=$ref' or '?version=$ref' pinning it to a specific
// reference. It is recommended that the reference be a specific commit or tag
// to ensure the generated contents does not change over time. As such it is
// recommended not to use branches as the ref for the time being.
//
// * Only VirtualMachineClusterPreference and VirtualMachineClusterInstancetype
// resources generated from the URL are deployed by the operand.
//
// See the following Kustomize documentation for more details:
//
// remote targets
// https://github.com/kubernetes-sigs/kustomize/blob/master/examples/remoteBuild.md
URL *string `json:"url,omitempty"`
}

// SSPSpec defines the desired state of SSP
type SSPSpec struct {
// TemplateValidator is configuration of the template validator operand
Expand All @@ -83,38 +55,11 @@ type SSPSpec struct {
// CommonTemplates is the configuration of the common templates operand
CommonTemplates CommonTemplates `json:"commonTemplates"`

// NodeLabeller is configuration of the node-labeller operand
NodeLabeller *NodeLabeller `json:"nodeLabeller,omitempty"`

// TLSSecurityProfile is a configuration for the TLS.
TLSSecurityProfile *ocpv1.TLSSecurityProfile `json:"tlsSecurityProfile,omitempty"`

// CommonInstancetypes is the configuration of the common-instancetypes operand
CommonInstancetypes *CommonInstancetypes `json:"commonInstancetypes,omitempty"`

// TektonPipelines is the configuration of the tekton-pipelines operand
TektonPipelines *TektonPipelines `json:"tektonPipelines,omitempty"`

// TektonTasks is the configuration of the tekton-tasks operand
TektonTasks *TektonTasks `json:"tektonTasks,omitempty"`

// FeatureGates is the configuration of the tekton operands
FeatureGates *FeatureGates `json:"featureGates,omitempty"`
}

// TektonPipelines defines the desired state of pipelines
type TektonPipelines struct {
Namespace string `json:"namespace,omitempty"`
}

// TektonTasks defines variables for configuration of tasks
type TektonTasks struct {
Namespace string `json:"namespace,omitempty"`
}

// FeatureGates defines feature gate for tto operator
type FeatureGates struct {
DeployTektonTaskResources bool `json:"deployTektonTaskResources,omitempty"`
// TokenGenerationService configures the service for generating tokens to access VNC for a VM.
TokenGenerationService *TokenGenerationService `json:"tokenGenerationService,omitempty"`
}

// DataImportCronTemplate defines the template type for DataImportCrons.
Expand All @@ -133,6 +78,11 @@ func (t *DataImportCronTemplate) AsDataImportCron() cdiv1beta1.DataImportCron {
}
}

// TokenGenerationService configures the service for generating tokens to access VNC for a VM.
type TokenGenerationService struct {
Enabled bool `json:"enabled,omitempty"`
}

// SSPStatus defines the observed state of SSP
type SSPStatus struct {
lifecycleapi.Status `json:",inline"`
Expand All @@ -146,9 +96,9 @@ type SSPStatus struct {

// +kubebuilder:object:root=true
// +kubebuilder:subresource:status
// +kubebuilder:deprecatedversion:warning="ssp.kubevirt.io/v1beta1 ssp is deprecated"
// SSP is the Schema for the ssps API
// +kubebuilder:printcolumn:name="Phase",type="string",JSONPath=".status.phase"

// SSP is the Schema for the ssps API
type SSP struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading