Commit Graph

33 Commits

Author SHA1 Message Date
Michael Henriksen
75f4fd6f2f
update k8s deps to 18.6 and controller runtime to 0.6.2 (#1330)
* update k8s deps to 1.18.6 and controller runtime to 0.6.2

Signed-off-by: Michael Henriksen <mhenriks@redhat.com>

* remove building code generators from docker image.  This way the k8s ligray version only has to be updated in go.mod

Do more stuff in the bazel container.  Faster and better interop

Fix unit tests

Signed-off-by: Michael Henriksen <mhenriks@redhat.com>

* make format

Signed-off-by: Michael Henriksen <mhenriks@redhat.com>

* remove unnecessary rsync

Signed-off-by: Michael Henriksen <mhenriks@redhat.com>

* redo code generator dep management

Signed-off-by: Michael Henriksen <mhenriks@redhat.com>

* builder uses go modules

Signed-off-by: Michael Henriksen <mhenriks@redhat.com>
2020-08-07 14:09:52 +02:00
Bartosz Rybacki
ab48911b9b
WaitForFirstConsumer handling for DataVolumes (#1242)
* Set the WaitForFirstConsumer phase on DataVolume when storage uses the WaitForFirstConsumer binding mode and is not bound yet.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Skip PVC if not bound in import|clone|upload controllers.

This is done so the VM pod(not the cdi pod) will be the first consumer, and the PVC can be scheduled on the same location as the pod.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

fixup! Skip PVC if not bound in import|clone|upload controllers.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Update importer tests to force bind the PCV by scheduling a pod for pvc, when storage class is wffc.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Update datavolume tests to force bind the PCV by scheduling a pod for pvc, when storage class is wffc.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Update upload controller and upload tests to correctly handle force binding the PCV by scheduling a pod for pvc, when storage class is wffc.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Update clone tests to force bind the PCV by scheduling a pod for pvc when the storage class is wffc.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Update cloner multi-node tests to force bind the PCV by scheduling a pod for pvc when storage class is wffc.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Correct after automerge

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Improve/simplify tests

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Fix error in import test.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Update transport_test,operator_test.go

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Update rbac_test.go and leaderelection_test.go

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Improve Datavolume and PVC Checks for WFFC.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Handle wffc only if feature gate is open - import-controller

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* TEST for Handle wffc only if feature gate is open - import-controller - TEST

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Handle wffc only if feature gate is open - upload-controller with test

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* rename and simplify checks

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* cleanup after rebase

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* update tests after rebase

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* update tests after rebase

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* more cleanups

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Document new WFFC behavior

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Document new HonorWaitForFirstConsumer option

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* update docs according to comments

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* extract common function, cleanup - code review fixes

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* add comment for another pr - 1210, so it can have easier merge/rebase

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* typo

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Simplify getStoragebindingMode - code review comments

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Add FeatureGates interface - code review fix

Additionally pass the features gates instead of the particular feature gate value,
and let shouldReconcilePVC decide what to do with the feature gate. That way shouldReconcilePVC
contains all the logic, and the caller does not need to do additional calls to provide parameters.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Update matcher

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>
2020-07-22 16:23:44 +02:00
Alexander Wels
8d4d89694e
Change permissions to always be 660 for the disk image. (#1231)
Updated functional tests to check for permissions

Signed-off-by: Alexander Wels <awels@redhat.com>
2020-06-17 16:03:42 +02:00
Alexander Wels
e41c3f4a2a
Give source clone pvc a gid so it gets copied properly. (#1216)
Signed-off-by: Alexander Wels <awels@redhat.com>
2020-06-09 21:51:38 +02:00
Bartosz Rybacki
ab8b9c025e
Generating label names (#1200)
* Handle labels length correctly

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Handle service name generation correctly

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Remove not needed labels

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Store import pod name in annotation

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Enable long DV name

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Handle name with dot when creating service/label name

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Test long names on import,  upload and clone

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Store upload pod name in annotation

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Store importer scratch pvc name in annotation

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Quick fix for tests (need improvements)

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Cleanup handling scratch name

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Ensure pod/service name conflicts are handled

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Handle client errors when trying to get the import pod

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Style improvements, and other code review fixes.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Store clone source pod name in an annotation

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Correct name initialization and tests

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Do not init name if pod already exists. It is not needed.

The situation of having a pod but not name on annotation can happen after the upgrade, when we have a legacy pvc and pod already existing, but clone operation not finished. But when we already have the pod, then in the code (currently) we do not need the name from annotation.

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Cleanup scratch name handling

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Use constant for max dv name in validation

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Simplify clone source pod name initialization

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>
2020-05-29 19:55:32 +02:00
Bartosz Rybacki
6d97be73d3
Add DV restarts test for upload controller (#1186)
* Add import/upload/clone functional tests for DataVolume restarts column

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>

* Cleanup tests tests

Signed-off-by: Bartosz Rybacki <brybacki@redhat.com>
2020-04-23 21:41:10 +02:00
kubevirt-bot
19ee764626
Added functional tests for ResourceRequirements feature. (#1076)
Added documentation for ResourceQuota.

Signed-off-by: Alexander Wels <awels@redhat.com>
2020-03-04 23:30:57 +01:00
Alexander Wels
17db2920b1
Update clone controller to use runtime library. (#1075)
Signed-off-by: Alexander Wels <awels@redhat.com>

Co-authored-by: Michael Henriksen <mhenriks@redhat.com>
2020-02-14 23:04:46 +01:00
Fred Rolland
826b4d3e88 Select a schedulable node in local PV test (#977)
Signed-off-by: Fred Rolland <frolland@redhat.com>
2019-09-26 10:09:05 -04:00
Fred Rolland
fe38c5ac33 Add node selectot for VerifyPvcEmpty pod (#974)
Signed-off-by: Fred Rolland <frolland@redhat.com>
2019-09-26 10:08:53 -04:00
Alexander Wels
2884854375
falloc on resize and blank disk. (#970)
Signed-off-by: Alexander Wels <awels@redhat.com>
2019-09-25 07:57:30 -04:00
Alexander Wels
47fbebad42
Added unit test to verify quantity returns right value. (#968)
Add label to verifier pods so if they fail, they also print their log.

Signed-off-by: Alexander Wels <awels@redhat.com>
2019-09-23 07:56:16 -04:00
John Griffith
5c8877911c Fallback to Fedora29 minimal for images (#915)
The newer version of qemu-img (3.1.0) that ships in Fedora 30 has issues
with streaming conversions whereby it hangs during the conversion
process.  Rather than try to force a downgrade of qemu when building
images instead, let's try reverting back to Fedora29 minimal which has
qemu-img version  3.0.0.

This issue has also exposed the fact that we aren't performing any
testing against streaming external images, we're only testing against
images that we've pulled in to our test infrastucture.  So add a
functional test that builds a DataVolume directly from the cirros site.

set dv test back to expectin prlimit failure
2019-08-16 11:18:21 -04:00
Alexander Wels
dc4d22dc5d
Allow specifying block storage class. (#815)
Fix node selection functional test

Signed-off-by: Alexander Wels <awels@redhat.com>
2019-06-28 08:22:56 -04:00
Alexander Wels
f5e042fcb8 Switch to minimal fedora 30
Signed-off-by: Alexander Wels <awels@redhat.com>
2019-05-22 10:31:19 -04:00
tavni
e6665945bc Adding support to clone disk image from one Block PV to another
Signed-off-by: tavni <tavni@redhat.com>
2019-04-15 15:33:52 +03:00
Alexander Wels
c507cc40cb Update fedora base image to fedora 29 for containers.
Signed-off-by: Alexander Wels <awels@redhat.com>
2019-04-10 09:22:21 -04:00
tavni
d4c7b0be54 Adding support to import disk image into Block PV
Signed-off-by: tavni <tavni@redhat.com>
2019-03-28 11:43:56 +02:00
annastopel
b9edce9ef0 Import VM disk from ContainerDisk image 2019-02-12 21:11:39 +02:00
tavni
f4bb5e531e Adding more functional tests for blank-raw-image, PV allocation on specific
node and upload disk image features.

Signed-off-by: tavni <tavni@redhat.com>
2018-12-20 13:32:54 +02:00
Alexander Wels
676b4ec133 Fix some flaky tests.
Signed-off-by: Alexander Wels <awels@redhat.com>
2018-11-20 09:23:37 -05:00
Alexander Wels
995ebf39e7 Increase e2e test timeouts.
Signed-off-by: Alexander Wels <awels@redhat.com>
2018-11-02 11:31:45 -04:00
tavni
05778eecff CDI e2e negative tests
Signed-off-by: tavni <tavni@redhat.com>
2018-10-17 11:04:41 +03:00
Alexander Wels
f3478d3d74 Properly fix concurrency issue with QEMU cmd
Signed-off-by: Alexander Wels <awels@redhat.com>
2018-10-02 07:54:50 -04:00
j-griffith
0a84e2fa8c Add lint checks to remaining go src directories
This finishes up the last of the golint implementation, with the
addition of the cmd, tests and tools directories we are now running
golint tests on all of the current go source files in the project.

This change adds all the little fixes (mostly just commenting and
naming) and also enables the new diretories in the lint test that we
gate on.
2018-09-29 08:35:21 -06:00
Alexander Wels
efae631d37 Try to debug the flaky http transport test.
- Updated glide dependencies.
- Fixed issue where if the qemu process was killed before all the output
  was read it would not return everything to the calling function.
- Added PrintPodLog method to print out the pod log.

Signed-off-by: Alexander Wels <awels@redhat.com>
2018-09-28 14:54:43 -04:00
Michael Henriksen
be89439734 functional test 2018-09-19 12:30:46 -04:00
Alexander Wels
70db9fdf37 Fix find pod by prefix (#402)
- Implemented missing LabelSelector code.
- Fixed bug where err was not nil in inner function.

Signed-off-by: Alexander Wels <awels@redhat.com>
2018-09-05 00:04:39 -07:00
Jon Cope
437154d701 Add http transport test suite and supporting utils (#376) 2018-08-31 11:48:03 -07:00
Alexander Wels
01cfa85dd1 Configure STDCI
- Added oVirt STDCI configuration files.

Signed-off-by: Alexander Wels <awels@redhat.com>
2018-08-30 15:50:36 -04:00
Adam Litke
facfe372b6 Fix clone tests (#386)
* test: fix pvc annotation check

The clone controller uses a slightly different annotation on PVCs.  The
test was using the form used by the import controller.  Quick fix.

Signed-off-by: Adam Litke <alitke@redhat.com>

* tests: Pods must be polled to determine their node

When checking the node on which a pod is scheduled we must use an
Eventually assertion and poll.  Otherwise, tests could flake when pod
scheduling is delayed.

Signed-off-by: Adam Litke <alitke@redhat.com>
2018-08-29 15:59:28 -04:00
Alexander Wels
ac638c8107 Add cloner e2e tests (#372)
- Positive test clone from namespace into same namespace.
- Positive test clone from namespace into other namespace.

Signed-off-by: Alexander Wels <awels@redhat.com>
2018-08-28 14:12:07 -07:00
Alexander Wels
ea15dd41f5 Add regular PVC creation e2e test.
- Added e2e test to see if regular PVC doesn't get populated.
- Added PVC utilities, for both framework and stand alone
- Added exec utility functions to execute commands against running
  Pods.

Signed-off-by: Alexander Wels <awels@redhat.com>
2018-08-22 14:10:49 -04:00