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

forklift: introduce forklift controller #2983

Merged
merged 27 commits into from
May 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
c33ed34
forklift: add types for forklift populators
bennyz Sep 6, 2023
0399b25
forklift: introduce forklift controller
bennyz Sep 21, 2023
7a632ea
forklift: add CRD missing CRD suffix
bennyz Feb 4, 2024
0e677df
forklift: fix tests
bennyz Feb 4, 2024
738ffc8
forklift: start support for mutated PVC
bennyz Feb 15, 2024
2317542
forklift: fix linter issues
bennyz Mar 26, 2024
776027a
forklift: update vendor and generated code
bennyz Mar 31, 2024
009eced
forklift: remove unnecessary argument
bennyz Apr 2, 2024
708c49f
forklift: add ovirt-populator to cdi-importer
bennyz Apr 2, 2024
43de9e7
forklift: fix linter issues
bennyz Apr 2, 2024
d1872a5
forklift: fix contrller_test
bennyz Apr 3, 2024
3bd968c
forklift: regenerate swagger
bennyz Apr 3, 2024
c5fe62d
forklift: normalize ovirt image name
bennyz Apr 7, 2024
ba3a0ae
forklift: restore OVIRT_POPULATOR_IMAGE_NAME
bennyz Apr 8, 2024
c75821a
forklift: address comments
bennyz Apr 15, 2024
11c82e3
forklift: add doc with examples for the forklift populators
bennyz Apr 17, 2024
79d9f51
forklift: rename secret reference
bennyz Apr 17, 2024
6d3ce41
forklift: fix linter warning
bennyz Apr 17, 2024
4712894
forklift: update deps
bennyz Apr 18, 2024
d15ee41
forklift: fix linter issues
bennyz Apr 28, 2024
780c091
forklift: use ginkgo for openstack populator test
bennyz Apr 28, 2024
60d8081
Roll back nginx from 1.24.0 to 1.22.1 to avoid segfaults when pulling…
akalenyu Apr 3, 2024
24ed4d7
forklift: address comments
bennyz May 1, 2024
c26a34c
forklift: address comments
bennyz May 5, 2024
28f354d
forklift: add restartCount annotation
bennyz May 7, 2024
115ada1
forklift: address comments
bennyz May 8, 2024
84dc967
forklift: regenerate
bennyz May 10, 2024
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
1,005 changes: 375 additions & 630 deletions WORKSPACE

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions cmd/cdi-controller/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ go_library(
"//pkg/util/cert/fetcher:go_default_library",
"//pkg/util/cert/generator:go_default_library",
"//staging/src/kubevirt.io/containerized-data-importer-api/pkg/apis/core/v1beta1:go_default_library",
"//staging/src/kubevirt.io/containerized-data-importer-api/pkg/apis/forklift/v1beta1:go_default_library",
"//vendor/github.com/kelseyhightower/envconfig:go_default_library",
"//vendor/github.com/kubernetes-csi/external-snapshotter/client/v6/apis/volumesnapshot/v1:go_default_library",
"//vendor/github.com/openshift/api/config/v1:go_default_library",
Expand Down
8 changes: 8 additions & 0 deletions cmd/cdi-controller/controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ import (
"sigs.k8s.io/controller-runtime/pkg/manager/signals"

cdiv1 "kubevirt.io/containerized-data-importer-api/pkg/apis/core/v1beta1"
forklift "kubevirt.io/containerized-data-importer-api/pkg/apis/forklift/v1beta1"
"kubevirt.io/containerized-data-importer/pkg/common"
"kubevirt.io/containerized-data-importer/pkg/controller"
dvc "kubevirt.io/containerized-data-importer/pkg/controller/datavolume"
Expand All @@ -60,6 +61,7 @@ var (
clonerImage string
uploadServerImage string
uploadProxyServiceName string
ovirtPopulatorImage string
configName string
pullPolicy string
verbose string
Expand All @@ -71,6 +73,7 @@ var (
cdiv1.AddToScheme,
extv1.AddToScheme,
snapshotv1.AddToScheme,
forklift.AddToScheme,
imagev1.Install,
ocpconfigv1.Install,
routev1.Install,
Expand Down Expand Up @@ -103,6 +106,7 @@ func init() {
importerImage = getRequiredEnvVar("IMPORTER_IMAGE")
clonerImage = getRequiredEnvVar("CLONER_IMAGE")
uploadServerImage = getRequiredEnvVar("UPLOADSERVER_IMAGE")
ovirtPopulatorImage = getRequiredEnvVar("OVIRT_POPULATOR_IMAGE")
uploadProxyServiceName = getRequiredEnvVar("UPLOADPROXY_SERVICE")
installerLabels = map[string]string{}

Expand Down Expand Up @@ -301,6 +305,10 @@ func start() {
klog.Errorf("Unable to setup clone populator: %v", err)
os.Exit(1)
}
if _, err := populators.NewForkliftPopulator(ctx, mgr, log, importerImage, ovirtPopulatorImage, installerLabels); err != nil {
klog.Errorf("Unable to setup forklift populator: %v", err)
os.Exit(1)
}

klog.V(1).Infoln("created cdi controllers")

Expand Down
1 change: 1 addition & 0 deletions cmd/cdi-importer/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ container_image(
files = [
":cdi-importer",
"//cmd/openstack-populator",
"//cmd/ovirt-populator",
"//tools/cdi-containerimage-server",
"//tools/cdi-image-size-detection",
"//tools/cdi-source-update-poller",
Expand Down
18 changes: 16 additions & 2 deletions cmd/openstack-populator/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library", "go_test")

go_library(
name = "go_default_library",
srcs = ["openstack-populator.go"],
importpath = "kubevirt.io/containerized-data-importer/cmd/openstack-populator",
visibility = ["//visibility:private"],
deps = [
"//pkg/util/prometheus:go_default_library",
"//vendor/github.com/gophercloud/gophercloud:go_default_library",
"//vendor/github.com/gophercloud/gophercloud/openstack:go_default_library",
"//vendor/github.com/gophercloud/gophercloud/openstack/imageservice/v2/imagedata:go_default_library",
"//vendor/github.com/gophercloud/utils/openstack/clientconfig:go_default_library",
"//vendor/github.com/prometheus/client_golang/prometheus:go_default_library",
"//vendor/github.com/prometheus/client_golang/prometheus/promhttp:go_default_library",
"//vendor/github.com/prometheus/client_model/go:go_default_library",
"//vendor/k8s.io/klog/v2:go_default_library",
],
)
Expand All @@ -21,3 +22,16 @@ go_binary(
embed = [":go_default_library"],
visibility = ["//visibility:public"],
)

go_test(
name = "go_default_test",
srcs = [
"openstack-populator_test.go",
"openstack_populator_suite_test.go",
],
embed = [":go_default_library"],
deps = [
"//vendor/github.com/onsi/ginkgo/v2:go_default_library",
"//vendor/github.com/onsi/gomega:go_default_library",
],
)
Loading