Skip to content

Commit

Permalink
Move conversion hub to v1beta2
Browse files Browse the repository at this point in the history
Signed-off-by: acmenezes <[email protected]>
  • Loading branch information
acmenezes committed May 4, 2023
1 parent e84948a commit 79729ca
Show file tree
Hide file tree
Showing 15 changed files with 1,504 additions and 373 deletions.
7 changes: 7 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,13 @@ generate-go-conversions: $(CONVERSION_GEN) ## Run all generate-go-conversions
--output-file-base=zz_generated.conversion \
$(CONVERSION_GEN_OUTPUT_BASE) \
--go-header-file=./hack/boilerplate/boilerplate.generatego.txt
$(MAKE) clean-generated-conversions SRC_DIRS="./api/v1beta1"
$(CONVERSION_GEN) \
--input-dirs=./api/v1beta1 \
--build-tag=ignore_autogenerated_core \
--output-file-base=zz_generated.conversion \
$(CONVERSION_GEN_OUTPUT_BASE) \
--go-header-file=./hack/boilerplate/boilerplate.generatego.txt

generate: gencode manifests doc generate-go-conversions ## Run all code/file generators

Expand Down
11 changes: 0 additions & 11 deletions PROJECT
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,6 @@ plugins:
projectName: netobserv-operator
repo: github.com/netobserv/network-observability-operator
resources:
- api:
crdVersion: v1
controller: true
domain: netobserv.io
group: flows
kind: FlowCollector
path: github.com/netobserv/network-observability-operator/api/v1beta1
version: v1beta1
webhooks:
conversion: true
webhookVersion: v1
- controller: true
group: core
kind: ConfigMap
Expand Down
2 changes: 1 addition & 1 deletion api/v1alpha1/doc.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ limitations under the License.
*/

// Package v1aplha1 contains the v1alpha1 API implementation.
// +k8s:conversion-gen=github.com/netobserv/network-observability-operator/api/v1beta1
// +k8s:conversion-gen=github.com/netobserv/network-observability-operator/api/v1beta2
package v1alpha1
54 changes: 27 additions & 27 deletions api/v1alpha1/flowcollector_webhook.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,26 +19,26 @@ package v1alpha1
import (
"fmt"

"github.com/netobserv/network-observability-operator/api/v1beta1"
"github.com/netobserv/network-observability-operator/api/v1beta2"
utilconversion "github.com/netobserv/network-observability-operator/pkg/conversion"
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
apiconversion "k8s.io/apimachinery/pkg/conversion"
"sigs.k8s.io/controller-runtime/pkg/conversion"
)

// ConvertTo converts this v1alpha1 FlowCollector to its v1beta1 equivalent (the conversion Hub)
// ConvertTo converts this v1alpha1 FlowCollector to its v1beta2 equivalent (the conversion Hub)
// https://book.kubebuilder.io/multiversion-tutorial/conversion.html
func (r *FlowCollector) ConvertTo(dstRaw conversion.Hub) error {
dst := dstRaw.(*v1beta1.FlowCollector)
dst := dstRaw.(*v1beta2.FlowCollector)

if err := Convert_v1alpha1_FlowCollector_To_v1beta1_FlowCollector(r, dst, nil); err != nil {
return fmt.Errorf("copying v1alpha1.FlowCollector into v1beta1.FlowCollector: %w", err)
if err := Convert_v1alpha1_FlowCollector_To_v1beta2_FlowCollector(r, dst, nil); err != nil {
return fmt.Errorf("copying v1alpha1.FlowCollector into v1beta2.FlowCollector: %w", err)
}
dst.Status.Conditions = make([]v1.Condition, len(r.Status.Conditions))
copy(dst.Status.Conditions, r.Status.Conditions)

// Manually restore data.
restored := &v1beta1.FlowCollector{}
restored := &v1beta2.FlowCollector{}
if ok, err := utilconversion.UnmarshalData(r, restored); err != nil || !ok {
return err
}
Expand All @@ -62,12 +62,12 @@ func (r *FlowCollector) ConvertTo(dstRaw conversion.Hub) error {
return nil
}

// ConvertFrom converts the hub version v1beta1 FlowCollector object to v1alpha1
// ConvertFrom converts the hub version v1beta2 FlowCollector object to v1alpha1
func (r *FlowCollector) ConvertFrom(srcRaw conversion.Hub) error {
src := srcRaw.(*v1beta1.FlowCollector)
src := srcRaw.(*v1beta2.FlowCollector)

if err := Convert_v1beta1_FlowCollector_To_v1alpha1_FlowCollector(src, r, nil); err != nil {
return fmt.Errorf("copying v1beta1.FlowCollector into v1alpha1.FlowCollector: %w", err)
if err := Convert_v1beta2_FlowCollector_To_v1alpha1_FlowCollector(src, r, nil); err != nil {
return fmt.Errorf("copying v1beta2.FlowCollector into v1alpha1.FlowCollector: %w", err)
}
r.Status.Conditions = make([]v1.Condition, len(src.Status.Conditions))
copy(r.Status.Conditions, src.Status.Conditions)
Expand All @@ -80,32 +80,32 @@ func (r *FlowCollector) ConvertFrom(srcRaw conversion.Hub) error {
}

func (r *FlowCollectorList) ConvertTo(dstRaw conversion.Hub) error {
dst := dstRaw.(*v1beta1.FlowCollectorList)
return Convert_v1alpha1_FlowCollectorList_To_v1beta1_FlowCollectorList(r, dst, nil)
dst := dstRaw.(*v1beta2.FlowCollectorList)
return Convert_v1alpha1_FlowCollectorList_To_v1beta2_FlowCollectorList(r, dst, nil)
}

func (r *FlowCollectorList) ConvertFrom(srcRaw conversion.Hub) error {
src := srcRaw.(*v1beta1.FlowCollectorList)
return Convert_v1beta1_FlowCollectorList_To_v1alpha1_FlowCollectorList(src, r, nil)
src := srcRaw.(*v1beta2.FlowCollectorList)
return Convert_v1beta2_FlowCollectorList_To_v1alpha1_FlowCollectorList(src, r, nil)
}

// This function need to be manually created because conversion-gen not able to create it intentionally because
// we have new defined fields in v1beta1 not in v1alpha1
// we have new defined fields in v1beta2 not in v1alpha1
// nolint:golint,stylecheck,revive
func Convert_v1beta1_FlowCollectorFLP_To_v1alpha1_FlowCollectorFLP(in *v1beta1.FlowCollectorFLP, out *FlowCollectorFLP, s apiconversion.Scope) error {
return autoConvert_v1beta1_FlowCollectorFLP_To_v1alpha1_FlowCollectorFLP(in, out, s)
func Convert_v1beta2_FlowCollectorFLP_To_v1alpha1_FlowCollectorFLP(in *v1beta2.FlowCollectorFLP, out *FlowCollectorFLP, s apiconversion.Scope) error {
return autoConvert_v1beta2_FlowCollectorFLP_To_v1alpha1_FlowCollectorFLP(in, out, s)
}

// This function need to be manually created because conversion-gen not able to create it intentionally because
// we have new defined fields in v1beta1 not in v1alpha1
// nolint:golint,stylecheck,revive
func Convert_v1beta1_FLPMetrics_To_v1alpha1_FLPMetrics(in *v1beta1.FLPMetrics, out *FLPMetrics, s apiconversion.Scope) error {
return autoConvert_v1beta1_FLPMetrics_To_v1alpha1_FLPMetrics(in, out, s)
// // This function need to be manually created because conversion-gen not able to create it intentionally because
// // we have new defined fields in v1beta2 not in v1alpha1
// // nolint:golint,stylecheck,revive
func Convert_v1beta2_FLPMetrics_To_v1alpha1_FLPMetrics(in *v1beta2.FLPMetrics, out *FLPMetrics, s apiconversion.Scope) error {
return autoConvert_v1beta2_FLPMetrics_To_v1alpha1_FLPMetrics(in, out, s)
}

// This function need to be manually created because conversion-gen not able to create it intentionally because
// we have new defined fields in v1beta1 not in v1alpha1
// nolint:golint,stylecheck,revive
func Convert_v1beta1_FlowCollectorLoki_To_v1alpha1_FlowCollectorLoki(in *v1beta1.FlowCollectorLoki, out *FlowCollectorLoki, s apiconversion.Scope) error {
return autoConvert_v1beta1_FlowCollectorLoki_To_v1alpha1_FlowCollectorLoki(in, out, s)
// // This function need to be manually created because conversion-gen not able to create it intentionally because
// // we have new defined fields in v1beta2 not in v1alpha1
// // nolint:golint,stylecheck,revive
func Convert_v1beta2_FlowCollectorLoki_To_v1alpha1_FlowCollectorLoki(in *v1beta2.FlowCollectorLoki, out *FlowCollectorLoki, s apiconversion.Scope) error {
return autoConvert_v1beta2_FlowCollectorLoki_To_v1alpha1_FlowCollectorLoki(in, out, s)
}
Loading

0 comments on commit 79729ca

Please sign in to comment.