Wed Mar 03 13:58:24 UTC 2021 - vasily.ulyanov@suse.com
- Update to version 0.38.1:
* Run bazelisk run //plugins/cmd/uploader:uploader -- -workspace /home/prow/go/src/github.com/kubevirt/project-infra/../kubevirt/WORKSPACE -dry-run=false
* Expose field name 'ipFamily' for k8s < 1.20
* Bump k8s deps to 0.20.2
* verify that VMIs can be started with images not owned by qemu provided by FS PVC
* change ownership of the image provided by a filesystem PVC to qemu
* virt-launcher's FSGroup functional test is obsolete
* virt-controller: Remove FSGroup from Pod
* cloudinit.GenerateLocalData: defer removal of temp files
* rpm: update `make rpm-deps`
* launcher / handler rpm: add tar as pod dependency
* cloudinit.GenerateLocalData: drop ineffectual assignment
* tests/config_test: fix ineffectual assignment to err
* pkg/virt-handler/migration-proxy/migration-proxy_test: fix ineffectual assignment to err
* tests/replicaset_test: fix ineffectual assignment to err
* pkg/virt-launcher/virtwrap/access-credentials/access_credentials_test: fix ineffectual assignment to err
* tests/vnc_test: fix ineffectual assignment to err
* pkg/virt-handler/isolation/isolation_test: fix ineffectual assignment to err
* pkg/virt-controller/watch/migration: fix ineffectual assignment to err
* tools/vms-generator/utils/utils: fix ineffectual assignment to err
* tests/vmi_gpu_test: fix ineffectual assignment to err
* pkg/virt-handler/cache/cache_test:fix ineffectual assignment to err
* pkg/virt-launcher/virtwrap/manager_test:fix ineffectual assignment to err
* multus, tests: assert error does not happen
* Bump bazeldnf to v0.0.15
* pkg/virt-handler/cmd-client/client_test:fix ineffectual assignment to err
* pkg/virt-operator/creation/components/secrets_test: fix ineffectual assignment to err
* tests/infra_test.go: fix ineffectual assignment to err
* tests/vmipreset_test: fix ineffectual assignment to err
* func tests, multus: getting the kubevirtClient must be done first
* func tests, multus: execute BeforeAll before BeforeEach
* document the interface between hostdev device plugins and kubevirt
* Refactor methods to reduce their Cognitive Complexity
* Define a constant instead of duplicating literal
* Refactor method to reduce its Cognitive Complexity
* Define a constant instead of duplicating literals
* Refactor method to reduce its Cognitive Complexity
* Add a nested comment indicating about an empty function
* Define a constant instead of duplicating a literal
* Refactor methods to reduce their Cognitive Complexity
* Increase subresource pod test execution timeout
* Add Nvidia as a KubeVirt ADOPTOR
* ipv4, network tests: refactor the masquerade test table
* controller, virtinformers: Define the unexpected error once
* Run bazelisk run //plugins/cmd/uploader:uploader -- -workspace /home/prow/go/src/github.com/kubevirt/project-infra/../kubevirt/WORKSPACE -dry-run=false
* Converter: Handle 'float' memory
* Tests: Ensure cpu/memory in requests/limits allow int/float
* virt-launcher: Support (non-)transitional virtio-balloon
* rpm: Bump libvirt and QEMU
* tests/utils: fix ineffectual assignment to ok
* tests/utils: fix ineffectual assignment to err
* tests/utils: fix ineffectual assignment to scale
* pkg/container-disk/container-disk_test: fix ineffectual assignment to path
* pkg/virt-launcher/virtwrap/network/common: fix ineffectual assignment to err
* tests/vm_test: fix ineffectual assignment to err
* tests/vm_watch_test: fix ineffectual assignment to cmdName
* pkg/virt-handler/hotplug-disk/mount_test: fix ineffectual assignment to err
* pkg/virt-handler/hotplug-disk/mount_test: fix ineffectual assignment to res
* tests/reporter/kubernetes: fix ineffectual assignment to err
* pkg/virt-launcher/virtwrap/access-credentials: fix ineffectual assignment to err
* pkg/virt-launcher/virtwrap/access-credentials: fix ineffectual assignment to output
* pkg/virt-handler/vm_test: fix ineffectual assignment to err
* tools/util/marshaller: fix ineffectual assignment to err
* pkg/virt-handler/device-manager/mediated_device_test: fix ineffectual assignment to err
* tests/restore_test: fix ineffectual assignment to restore
* removing trello reference as its no longer used
* Adjust e2e test which checks for the scsi controller
* consider scsi controllers in virtio version decisions
* Bump kubevirtci, now hosted on quay.io
* network: BindMechanism receiver name consistency
* MacvtapBindMechanism.loadCachedInterface fix arg name
* Clean error message for not migratable VMI
* Fix detection of previous release version in operator func test
* Alert when less than 2 KVM nodes available
* Fix a datavolume collision
* Remove danielBelenky from reviewers
* KubeVirt is now released on quay.io only
* [virt-operator] load new certificates earlier
* Keepalive function for travis to prevent timeout due to inactivity on stdout
* Fix limits/requests to accept int again
* network: rename NetworkInterface and PodInterface
* network: drop NetworkInterface.Unplug
* network: eliminate mocking of SetupPodNetworkPhase2
* network: make SetupPodNetworkPhase1 into a constant function
* virt-api/webhooks: simplify and rename ServiceAccount-matching function
* split sync resources into multiple functions and files
* tests: Test guest restart after migration
* Normalize DNS search domains to lower-case
* Revert "Fix typos in log output"
* tests: After migration test is not invoked
* virt-launcher: [masquerade] pass a MAC to the vm accroding to the spec only
* virt-launcher: [masquerade] Stop filtering dhcp reuqests by vm MAC
* Example code for gosec fix
* Update gosec.md
* guidelines for using gosec analysis tool
* docs/devel/networking: unbreak URL
* Add virtctl image-upload usage for WaitForFirstConsumer DVs
* Add error message on virtctl image-upload to WaitForFirstConsumer DataVolume
* bump bazeldnf
* Fix typos in log output
* Extend isolation test to cover IsMounted method
* Wrap mountinfo parsing common code into a function
* start virt-launchers with a non-default log verbosity
* change virt-controller log verbosity on relevant config changes
* change virt-api log verbosity on relevant config changes
* change virt-handlers log verbosity on relevant config changes
* add default log verbosity values to cluster config
* allow registering multiple callbacks for config changes
* add a logVerbosity struct to set KubeVirt components log verbosity
* Remove travis-ci logic for pushing to quay app registery
* Make mutating webhooks required
* Bump bazeldnf to a version with its own ldd implementation
* Add tests
* Fix typo
* Fix some typo in docs
* Add alert for insufficient number of nodes with KVM resources
* Remove dockerhub-related travis jobs and credentials
* Make `make build-functest` work without nested bazel invocation
* Compile template-manifestor with bazel
* Invoke shfmt from bazel
* Add gofmt to our vendor tree
* kubevirtci, Bump kubevirtci
* Bump bazeldnf to 0.0.10 to better deal with bad repomd mirrors
* Allow setting user local bazelrc settings.
* Update Quay credentials in travis config
* Run bazelisk run //plugins/cmd/uploader:uploader -- -workspace /home/prow/go/src/github.com/kubevirt/project-infra/../kubevirt/WORKSPACE -dry-run=false
* tests: make client in hello world job UDP wait for response
* wait for host responding to ping, in some cases the first two pings fail, now instead we wait for a specific amount of time
* Increase time to wait for failed connection
* virt-controller: increase the number of VMI controller threads
* sriov, tests: xfail vlan test
* network: simplify getNetworkInterfaceFactory
* network: drop long-unused plugFunction
* network: drop long-unused qemuArgCacheFile
* network: rename constant to primaryPodInterfaceName
* network: drop global podInterfaceName variable
* Run bazelisk run //plugins/cmd/uploader:uploader -- -workspace /home/prow/go/src/github.com/kubevirt/project-infra/../kubevirt/WORKSPACE -dry-run=false
* add vi-minimal to base packages for containers
* Additional hotplug functional tests
* Add unit test for PCI address parsing
* Escape dot '\.' in PCI_ADDRESS_PATTERN
* Move ParsePciAddress function to hardware utils
* Bump bazeldnf to fix rpm verification
* Drop references to kubevirt-host-device-plugin-config cfgMap
* Check if block devices are ready. If not ensure that the block device major and minor is allowed in the virt-launcher pod. Enable functional tests that were failing due to permission issues
* Reviewers update: Adding EdDev as a code reviewer
* virt-launcher/handler: move Macvtap discovery of MTU and target
* virt-launcher/handler: Macvtap shouldn't use vif cache
* Fix Open Shift SCC permissions to allow attachment pods to use host network. Fix selinux to be on container level instead of pod level.
* Use the array value instead of a new variable when possible
* eliminate the usage of interface address in decorateConfig()
* allocate new variable and don't use the originsl s.domain.Spec.Devices.Interfaces
* fix some tabs/spaces mess
* Fix memory aliasing in for loop - taking the address of loop variable is dangerous
* ENV VAR for client-go scheme registration version
* Give kubevirt pods more time to become ready
* Fix PV selector for windos and rhel PVCs
* Make storage tests fit for parallel execution
* Use the new nfsserver library in the migration tests
* Create windows and rhel PV within the corresponding tests
* Prepare our framework in utils for parallel storage test execution
* Move nfs server rendering to its own package and adjust memory requests
* Add a ginkgo matcher library especially for kubevirt
* Prepare image provider for parallel execution
* Code Review edits
* Bump kubevirtci
* Stick with virtio model on the ballooning device
* Tablet input device only exists as virtio 1.0
* virtio-serial controllers need the model set too
* Add virtio-transitional e2e test
* Extract converter into its own subpackage
* Unit test for choosing virtio-transitional
* Make the converter aware of virtio model preferences
* Add a global VMI flag to the API to fall back to virtio_transitional
* tests, xfail: Change XFail API to wrap the expected failure
* Don't override the e2e kubevirt config by default in the e2e tests
* virt-launcher/handler: remove the tap device from the VIF cache
* Use virt-handler image as base for multus tests
* Explicitly build libvirt-devel tars
* Remove no longer needed go_library definition
* Allow qemu to bind to privileged ports for slirp
* Docuement how RPM verification can be done
* Add a RPM verification target
* Bump to bazeldnf with improved RPM verification
* fix logos dependency
* Add GPG keys to repo.yaml
* Update RPMs
* Avoid dependency flipping
* add ps binary
* Update dependency update documentation
* Remove old libvirt-devel dependencies in WORKSPACE
* Prepare binary containers for bazeldnf built content
* Start using bazeldnf RPMs for building and testing
* Add RPMs
* Add repo.yaml files
* Add a script to resolve RPM dependencies
* Document new kubevirt handling of WaitForFirstConsumer DataVolumes
* Fix support for camelCase userData and networkData labels
* virt-launcher: Remove unused arg from GetDomainSpecWithRuntimeInfo
* Extend VMI count metric to include osinfo
* fix: change url and label name for "good-first-issue" on CONTRIBUTING.md
* cloud-init, GenerateLocalData: drop redundant diskutils.RemoveFile call
* cloud-init, GenerateLocalData: drop ambiguous comment
* add use case Signed-off-by: xiaobo <zeng.xiaobo@h3c.com>
* add use case Signed-off-by: xiaobo <zeng.xiaobo@h3c.com>
* add use case Signed-off-by: xiaobo <zeng.xiaobo@h3c.com>
* add use case Signed-off-by: xiaobo <zeng.xiaobo@h3c.com>
* Run bazelisk run //plugins/cmd/uploader:uploader -- -workspace /home/prow/go/src/github.com/kubevirt/project-infra/../kubevirt/WORKSPACE -dry-run=false
* only validate status of vm, vmi, and vmi migration objects
* This fixes a race condition between unmounting a file system volume and detaching a disk from the running VM. In certain conditions it would attempt to unmount before the disk was fully detached causing the unmount to error and preventing the VM sync from fully detaching. This moves the unmount to after the sync, so this race never happens.
* smbios, sidecar hook, tests: assert the hook version is advertised
* smbios cmd: set the version parameter as mandatory
* examples, hooks: correct the vmi-sidecar-hook example
* add kubernetes os nodeSelector to injectPlacementMetadata
* virt-launcher, converter: Set SRIOV device as unmanaged
* tests, sriov: XFail IPv4 connectivity test
* Append rootfs mount to containerdisk base path
* Narrow down watcher select which waits for object states
* Fix Eventually which used the time out as description
* Remove unused functions: GenerateSelfSignedCertKey and GenerateSelfSignedCertKeyWithFixtures
* use filepath.Clean for two fixed path parameter functions
* virt-launcher, converter: Remove vCPU dependency on queue limits
* add Kubermatic to adopters list
* manager_test: add err check for ioutil.TempDir
* windows_test: remove duplicate code
* cleanup tempfiles for manager_test
* cleanup tempfiles for common_test
* Functional test to verify vmis are migratable after update to from latest KubeVirt official release
* update libvirt base container to rhel-av 8.3
* Unit test to verify evaculation controller generated migration object fields
* evacuation informer should only observe the creation of migration objects it created
* cloud-init: Allow populate networkData alone
* tests, sriov: XFail IPv6 connectivity test
* dev guide, networking: net_raw cap is not required by virt-launcher
* Revert "dev guide, networking: no capabilities are required"
* Make sure to use all supported versions for status subresource
* Update csv gen logic for v1 api
* Update hardcoded references to v1alpha3 in unit tests
* Update unit tests to account for aggregated api server registration for v1 API
* Update functional tests that had hardcoded references to v1alpha3
* Add functional tests to verify vm creation using all supported API versions
* Revert "libvirt, mtu: do not perform any network config on the launcher"
* move kv update validation webhook to operator validation configuration
* Fix test id for io mode test
* update listtype markers for kubevirt pci host devices
* Fix gosec unhandled errors in delete.go & create.go
* Cleanup k8s jobs from test namespaces
* If the fedora login expecter is stuck, retry
* tests, multus: Change 3rd network SRIOV vnic name
* tests, sriov: Centralize SRIOV network names
* tests, multus: Fix IP address configuration
* tests, Use RandName for creating random VMI names
* Fail detection and handling when EFI without SB is not available
* Add unit test covering GetDomainSpec fallback behavior
* Reject --access-mode ReadOnlyMany when uploading an image.
* Consume nightly build images from quay
* Run bazelisk run //plugins/cmd/uploader:uploader -- -workspace /home/prow/go/src/github.com/kubevirt/project-infra/../kubevirt/WORKSPACE -dry-run=false
* Fix failing unit tests for new GetDomain logic
* Remove race condition from GetDomain check
* Fix timed domain resync
* fix patch for removing infra and workloads from KV
* add webhook to validate kubevirt CR updates - only allow updates to workloads key if no vmis are running
* tests, sriov: Retry ping if it fails
* tests, libvmi, vmi: shorten random vm names #2
* tests, gpu: Do not mount /sys/devices/ for SRIOV devices
* VMI configuration test: fix disk cache modes testing
* fix gosec g204: Subprocess launched with variable
* Removed unused function readProcCmdline()
* Enable and fix tests
* Fix gosec issue of: Potential file inclusion via variable
* Revert "libvirt, mtu: do not perform any network config on the launcher"
* Fail detection and handling when EFI without SB is not available
* Add unit test covering GetDomainSpec fallback behavior
* Fix failing unit tests for new GetDomain logic
* Remove race condition from GetDomain check
* Fix timed domain resync
* Update ADOPTERS.md
* tests, utils: shorten name of random VMs
* Move some datavolume tests to the ceph lane
* Old kubevirt released don't support CDIs WaitForFirstCustomer
* Let virtiofs consider WaitForFirstCustomer setting of CDI
* Use Immediate bind on negative PVC Datavolume tests
* Enable WaitForCustomer CDI feature gate by default
* Generate v1beta1 client for CDI
* Don't try to hotplug waitForFirstCustomer PVCs
* Fix access credential unit tests
* Ensure that our service accounts can always update the VMI status
* Update to a libvirt image with a newer seabios.
* adjust pci address tests to consider the new virtio-iscsi controller
* Remove AfterEach cleanup so we can capture VM/VMI state in overal aftereach cleanup instead of losing it.
* Disable complex tests for now.
* HotplugVolumes feature gate
* Set grace period on attachment pod to 0 to have faster removal of the volumes when not removed by the controller. Added functional test to ensure the VMI goes into failed state when attachment pod is deleted. Added functional test to ensure the VMI is no longer migrateable after a volume is hotplugged.
* Added VMI attach/detach functional tests. Increased timeout on tests. Fixed typo in reason message
* Fixed bug in how device names were calculated. Added functional test that adds a bunch of volumes, removes one, add a different one, and expects the device name to be the one just removed. Then adds the removed one back and expects the device name to be a new one. Added unit tests.
* Improve error messaging during hotplug subresource add/removew
* Fixes issue with VolumeRequests validation on the VM
* Fix some issues pointed out in review. Fixed functional test with 5 adds and deletes. Added new functional test to test various adds and deletes.
* Addes abilty to watch for libvirt device add/remove events for hotplug volumes
* Updated and added functional tests. Added storage directory for storage related functional tests similar to networking. Fixed various issues found by the functional tests.
* Attach disk to VM
* VM controller unit tests for volume hotplug
* Ensure we only add/remove volume operations are only performed if needed
* Volume add/remove subresource unit tests
* VolumeRequest validation unit tests
* Validation logic for VM VolumeRequests
* Hotplug VM Functional Tests
* Add VM controller logic for handling volume add/remove requests
* Add hotplug subresource api endpoints
* Implemented virt-handler changes: Bind mount File System PV into virtlauncher pod. Expose block PV in virtlauncher pod. Added volume mounter struct to keep track of mounts. Added unit tests for volume mounter
* Change phase/message/reason from hotplug struct to main VolumeStatus struct. Address some review comments
* Automatically add virtio-scsi controller to all VMIs.
* Updated vmi controller to separate sync and status update to follow KubeVirt guidelines. Updated unit test tests to match and added some extra unit tests for the new status update function.
* Updated update-admission webhook to include verifying the structure of disks and volumes as well as call the create admission verifier to ensure nothing else slips through.
* Added attachment pod life cycle functions to vmi-controller. Added unit tests for new functions
* Attachment POD life-cycle code, including updating VMI status.
* Update VMI admission webhook to allow modification of the disks and volumes section of the VMI Spec. This modification is needed to allow for disk hotplugging to happen. Only internal KubeVirt Service Accounts are eligible to modify the spec. Once we have the appropriate sub resources, users can call those to have it modify the spec on their behalf
* macvtap, migration, tests: add a test w/ traffic
* tests, network: Remove vmi Status ip normalization
* tests, sriov: Use cloud-init to set IPv6 by MAC
* tests, multus: Use network-data at bridge-cni test
* tests, libnet: Add Match feature and expression builder to networkData
* Update feature gate setup to new CDI version (now on CDI CR)
* Reuse datavolumes already found in listMatchingDataVolumes for increased consistency between sync and updateStatus
* Update test_id:5252 to run with WFFC enabled
* check PVC if it waits for first consumer
* Remove API phase "Provisioning"
* Handle the DV in WaitForFirstConsumer phase by starting the "consumer-pod".
* Remove sysctl binary dependency
* Bump atlassian/bazel-tools
* tests, network: Fix race condition GA test
* virt-handler, status: Do not include the IP prefix consistently
* Allow to run subset of rules for gosec
* tests, dual stack: split probes tests to test per IP-Family
* bump kubevirtci
* Add ADOPTERS
* make generate && make deps-update
* bump cdi to 1.26.1 (from 1.25.0)
* dev guide, networking: no capabilities are required
* Increase CDI deployment timeout
* expose, tests: fix early shutdown of `nc` TCP connections
* Fix misspellings
* Fixes race condition in func test
* Properly handle failures when starting the qemu agent access credential watcher
* Ignore warnings during vmi startup in access cred functests
* Update access credential documentation and openapi markers
* access credential sync events
* Remove authorized_key file merging.
* Report access credential status as a condition on the VMI
* virt-handler, sriov: Add network name in VMI interface status
* fix gosec issue of g204: subprocess launched with function call as argument or cmd arguments
* Fix for flake CI test
* Use the correct emulator prefix for qemu cleanup steps
* Fix hardcoded qemu-kvm occurance in a migration test
* Remove in some tests the assumption of hardcoded qemu emulators
* Explicitly set virtio-scsi on the scsi controller
* WORKSPACE: Update libvirt container
* Switch to use anew global close() function in pkg/util Fix typos and remove extra comments
* tests, console: Remove VMIExpecterFactory
* Fix double migration during node drain
* test, network: Add bridge binding + ga test
* networking, tests: also check the MTU of the tap device
* tests, libvmi: Remove interface,network config from NewFedora
* linux capabilities: remove CAP_NET_ADMIN
* libvirt, tap: create the tap device w/ the same user as libvirt
* mtu, tuntap: set link MTU when creating the tap device
* libvirt, mtu: do not perform any network config on the launcher
* net admin: disabling tx checksum offloading on virt-handler
* Add a log message if we pick up a new CA bundle
* Increase rotate intervall
* tests, multus, sriov: Refactor tests
* Update bazel files
* Switch to use named return errors to allow updating the error from defered function
* Fix gosec issue: Deferring unsafe close() When deferring a close() we don't have a chance to check the error returned from the close() call itself. For RW files we treat the error similar to a write() error , for RO files we only log an error message
* Mirror PVC struct
* Add function test to validate IO mode settings
* Set IO to native also for pre-allocated file disks
* Switch to use a common function GetImage and remove GetImage from manager.go
* Use qemu-img in order to identify sparse files and get image info
* Set the IO mode to 'native' when possible for better performance
* test, cloudinit: Use "json" annotation instead of "yaml"
* tests, multus, sriov: Fix flakiness due to race between ga and test
* tests, console: Change NetBootExpecter to not return an expecter
* tests, login: Replace the Alpine login helper
* tests, login: Replace the Cirros login helper
* tests, login: Check privileged console prompt
* tests, login: Replace the Fedora login helper
* tests: Use LoginTo* helpers in waitUntilVMIReady
* updated the technical description
* Add enp0s3 to approvers list
* Change file permissions on binary directory
* docs: Fix documentation for useEmulation flag
* virt-config: Fix tests for KubeVirt CR
* virt-config: Drop stopChan
* removed the word place-holder
* fix gosec sha1 week cryptographic issues
* Fix gosec md5 weak cryptographic primitive
* Fix shell formatting, fix entrypoint path
* Disable Virtio-FS Metadata Cache
* Add Igor Bezukh to test approvers
* Fix permissions tests for VMs
* lock device plugings maps during device controller shutdown
* dp: verify that host devices topology is being correctly reported
* update the API fields so it be complient with API rules.
* testutils: remove unnecessary changes to the config mock
* tests: move the soundcard test out of the GPU module
* Add a "GPU" passthrough functional test
* update unittests to use kubevirt CR and remove remove hostDevConfigMapInformer
* remove the hostDevConfigMapInformer, get host devices from KubeVirt CRD
* request host devices on vmiPod as well
* make sure that permitted host device config is working as expected
* add unit tests to veriy host devices assignment
* device-manager: clear permitted device list before parsing
* device-manager: added mdev tests + misc fixes
* device-manager: improve the PCI tests
* device-manager: misc post-rebase fixes
* add GetInitialized to pci and mdev device plugings
* add HostDevices feature gate
* device-manager: add static tests for PCI device discovery functions
* device-manager: few cosmetic fixes
* make sure that vmis can request only permitted gpus
* tests: return hostDevConfigMapInformer as part of the NewFakeClusterConfig
* device-manager: mock PCI device info getters for tests
* Fix device controller static tests to match the new API
* Move the check for permanent device plugins to list creation Instead of always adding them to the list and then ignoring them later
* Add a lock to ensure device plugins won't be started/stopped multiple times in parallel Also fix some typos and avoid an active loop
* close device plugin channel is a safe manner
* introduce a ControlledDevice struct for the device controller to keep dpi stop chan
* Fix ignored static DPs, fix typos and remove defer Stop() in Start()
* Refactor permanent device plugin code
* dynamically start and start device plugings for permitted/banned devices
* propagate hostDevConfigMapInformer to device controller
* virt-launcher: handle allocated host devices using a single map
* reject specs with non-permitted HostDevice and GPU resources
* convert HostDevices and GPUs to libvirt hostdev for pci and mdevs
* collect PCI and MDEVs made available for assignement by the device plugins
* add alias to libvirt hostdev struct
* separate ResourceNameToEnvvar to utils
* add device plugings for permitted devices which are present on the nodes
* add a device plugin for mediated devices
* add a device plugin for pci devices
* add virt-config to device controller
* add a HostDevices api schema
* add TopologyInfo to out device plugin api
* rename the device manager controller for kvm controller
* introduce a new hostDevConfigMapInformer
* handle the kubevirt-host-device-plugin-config config map
* Add PermittedHostDevices type to support a new kubevirt-host-device-plugin-config configmap
* Revert "Merge pull request #4470 from oshoval/fix_sriov"
* tests, Fix CDIInsecureRegistryConfig logic
* tests: LoggedInCirrosExpecter can return a nil expecter in case of error, with these changes we call Close on the returned expecter if the error is nil.
* tests, sriov: Do not mount /sys/devices/ for SRIOV devices
* virt-launcher: remove redundant cidr from dhcp server address
* tests, sriov: Fix the helper that waits for a vmi to start
* tests, Fix SRIOV UpdateCDIConfigMap panic
* add unit test
* Enhancement #4365 [virt-controller] Remove redundant initcontainer when there is no ContainerDisk defined in VM
* Consolidate shell script files into functions
* Create main shell scripts to call from the ci-config
* Fix comment typos
* Add scripts for nightly master deploy
* Move code for downloads and test execution into scripts
* ensure the virt-handler killer pod has gone
* audit the usage of unsafe pointers
* Set leader metric after controller is functional Add a unit test for this
* Define side effects class on our webhooks
* Improved the Technical Overview description
* changed: VM has only one VMI
* Included a figure to illustrate the components architecture
* Included a little bit more details in the virt-launcher description
* Included a little bit more details in the virt-handler description
* Included a little bit more details in the virt-controller description
* functests, macvtap, multus: add connectivity test between VMs
* macvtap: feature gate macvtap feature
* functests, multus: refactor `configInterface` to allow sudo
* functests, macvtap, multus: add test with a custom MAC address
* tests: remove all net-attach-defs on test cleanup
* automation, macvtap: restrict macvtap func tests to multus lanes
* unit tests, macvtap, multus: introduce macvtap
* macvtap, multus: add macvtap BindingMechanism
* improving PCI configuration tests
* Template the cdi namespace
* add dev registry as insecure registry to cdi
* Update testing infra to cdi 1.23.7 in order to bring in registry import fixes
* Datavolume container registry import test
* CONTRIBUTING: point developers to kubevirt-dev slack
* rebase
* Remove incorrect listtype
* fix 1.19 lane
* Propagate error from patchValidation
* rebase
* reduce scope to vm/vmi
* Remove +listType=map from tolerations This marker also requires //+listMapKey which can't be resonable set at this moment. (All fields are optional and missing default)
* update builder
* review
* Add missing markers
* Test verifying kubectl explain works
* Adding test verifying crds are structural
* Use controller-gen to generate validations for crds
* test if crds for operator are correct
* adding tools for generating correct validation
* cleaning generated desc. and nullable fields in status
* adding patching of crds for operator
* adding markers for controller-gen
* tests, restore tests: check on successful commands
* Fix gosec issue: week random generator
* Bump kubevirtci
* It is not always bad for VolumeSnapshot to have an error
* Fix artifacts in gosec target
* tests, infra-test, Refactor node selection
* Do not change vnc socket's permission to 0444
* tests, infra-test, Fix node updates
* tests, infra-test, Add missing break when selecting a node
* tests, pausing test: increase time for long process
* tests, dual stack: Adapt tests using NFSTargetPOD to support dual stack
* docs: Fix the ginkgo flags usage example
* Properly exit if kubevirt does not get ready on cluster-sync
* Rework logic so it is easier to understand what is happening
* fix restore controller memory corruption
* Allow PVC as volume source with a DV populating the PVC. Before this was not allowed because we could not be sure that the PVC was fully populated. This commit checks the DV to ensure the PVC is fully populated.
* Save a nice cluster-overview to the artifacts
* Disable goveralls debug output
* Take time in cert tests after CA generation
* Use coverage merge tool for goveralls
* Introduce a tool to merge coverage reports
* Enable atomic count, race detection and fix races
* Move coverage reports over to bazel
* Use a proper cc_library for libvirt dependencies
* Auto-generate Help message from /metrics endpoint to docs/metrics.md
* tests, libnet: Relocate validation to libnet
* tests, libnet: Move cloud-init net and dns to libnet
* Fix flaky rename test
* Run Travis CI only on selected branches, remove sudo flag
* tests, infra-test, Solve CI flakiness due to update conflict
* Fix flaky unpause tests
* Refactor .json files to go file
* Mark networking conformance tests
* Fail only when new issue comes up
* Fix high severity&confidence issues
* Add gosec to project
* Fix display of virtctl help text for other usages
* tests, libvmi: Introduce CloudInit NoCloud Network Data
* restore backwards compatiblity with api group/version on DataVolumeTemplates spec
* Revert "move all tests to use kv config"
* Revert "update config message to specify which resource type it is using"
* Revert "test usage of configmap configuration"
* Revert "update build file"
* Revert "convert postcopy tests to use KubeVirt CR"
* Rework logic so it is easier to understand what is happening
* Allow PVC as volume source with a DV populating the PVC. Before this was not allowed because we could not be sure that the PVC was fully populated. This commit checks the DV to ensure the PVC is fully populated.
* vmi, sriov: Enable to set the PCI address on a SRIOV iface
* Don't discard bazel platform cache on virtctl cross-compilation
* convert postcopy tests to use KubeVirt CR
* fix autoconverge test
* remove using BeforeAll in vmi configuration tests
* generated openapi spec
* clean up
* start prom server earlier in the virt-handler process so health check returns without EOF error
* change kubevirt config type MemBalloon
* dump kubevirt cr in ci artifacts
* cpuRequest can not be type string since when the resource is patched it will fail to parse the units
* change bool to pointer to know unset vs value set to false
* update build file
* test usage of configmap configuration
* update config message to specify which resource type it is using
* move all tests to use kv config
* virt-launcher, Add mechanism to guard add/delete events channel
* Generated artifacts
* Add functional tests for missing subresource RBAC rules
* Allow admins and editors of a namespace to [un]pause a VMI
* Add dummy status to DataVolumeTemplate objects to maintain backwards compatibility
* Add functional test to validate api compatiblity during update
* changed migration test to use table
* only log event if migration is stuck during post copy migration
* change api from MigrationMode to AllowPostCopy
* switch to post copy migration if not completed with in acceptableCompletionTime
* update openapi spec
* add NFS migration test with postcopy
* remove vmiHasLocalStorage function
* fix migration tests
* remove reject postcopy for storage test
* remove nested vmi migration configuration
* change usePostCopy to migrationMode
* move when mode is set
* allow for postcopy migration
* maybe fix flakes test
* vendor in 1.23.5 CDI to hand golden namespace use case
* Validate network interface name
* tests, utils: Check events watcher type before casting
* Add readiness and health probes to virt-handler
* Removes unusable fields from vm DataVolumeTemplates
* selinux: always build KubeVirt with selinux support
* Run make generate
* Adjust ceph-rook focus for e2e tests
* wrong apiVersion used for VirtualMachineRestore owner references
* update init container unit tests to validate container-disk pre-pull
* add container disk images also as init containers in order to guarantee they are pulled before virt-launcher starts
* add '--no-op' option to container-disk entry point for pre-pull logic
* Make the nogo check pass
* Make kubevirt compile with bazel 3.4.1
* Update builder image to bazel 3.4.1
* wait for vmi-killer pod to start before moving on
* Document basic parallel-test execution needs
* Integrate the junit merger into the parallel functest execution
* Add a tool to merge partial junit results
* Don't set the namespace in the VMI factory
* Run most of the VMI lifecycle tests in parallel
* Run kubectl related tests in parallel
* Hugepages are limited, run the relevant tests not in parallel
* Make version and vm-watch tests execute in parallel
* Don't check terminating pods if they pick up config changes
* Run container disk tests in parallel
* Run expose tests in parallel
* Run probe tests in parallel
* Allow running VMI Preset tests in parallel
* Run most of the cloud-init tests in parallel
* Make subresource tests part of the parallel test suite
* Adjust subresource access tests to new test service accounts
* Reference the default namespace directly
* Add a skip check for a migration tests if enough nodes are available
* Make access tests parallel executable
* More parallel tests
* Resolve test-namespace name in the test
* Allow VM tests to run in parallel
* Allow console tests to run in parallel
* Allow the headless service tests for VMIs to run in parallel
* Allow tests in vmi_configuration_test to run in parallel
* Make it possible to set the number of parallel executors
* Increase slow test threashold to 60 seconds
* Ensure that --skip and --focus flags are only passed onces
* Change build environment to execute ginkgo in parallel
* Let the ginkgo reporter log where it will dump artifacts
* Split setup and teardown code between parallel and synchronized steps
* Consume the ginkgo binary from the vendor folder
* Mark all tests as have to be run in serial
* fix typos
* docs: Update for k8s-1.18 as default provider
* Add option to log BIOS output to serial and use it to test for bootable NICs
* Migrate VMI when its pod is marked for eviction
* Intercept evictions on virt-launcher pods
* Support testing kubevirt on RHCOS
* Update kubevirtci to latest commit
* create tap device: add multiqueue support to netlink
* set vmipod cpu request based on guest vcpus and cpu_allocation_ratio
* allow to set a cpu allocation ratio in kubevirt config
* Test IDs for Node Placement tests
* only focus on tests that require rook-ceph for rook-ceph lane
* When filtering or aggregating metrics around the state label, having it exposed as a human readable state makes it a lot easier to understand, and thus, easier to get the desirable information. This PR changes kubevirt_vmi_vcpu_seconds' state label to a human readable string
* libvirt: disable PXE rom on interfaces with no boot order Except for virtio interfaces for which a rom is implicitely loaded
* Keep conformance artifacts on the top level
* tap device: use netlink instead of songgao's water lib
* netlink: update vendor folder
* bazel: update netlink dependency
* Release func tests on every release
* Add missing test ids
* Fix sync of generated client-go to master
* flaky pause test: make long-running process longer and quieter
* switch virtiofs tests to use datavolume
* test that vitriofs file written in the guest is present in the pod
* functional test to verify that virtiofs is enabled
* network, tests: move services functests to dedicated module
* tests, libvmi: provide a minimal CirrOS VMI via the libvmi factory
* fmt updates
* Adjust timelines and verbage to reflect feedback
* Fix release scripts git email and name variables
* New release documentation
* Replace outdated release announce script with new tool
* We introduced our `Pach` type which collides with kubernetes type. By default kube-openapi takes only last part of type/model definition. So type "kubevirt.io/client-go/api/v1.Patch" ends up -> "v1.Patch" & "k8s.io/apimachinery/pkg/apis/meta/v1.Patch" -> "v1.Patch".
* dual-stack, tests: actively check the cluster for dual stack conf
* dual stack, tests: check if the cluster is dual stack
* Add creation of bazelrc for running unnested in prow
* virt-chroot: use sysfs node for getenforce instead of less-reliable go-selinux
* network, tests: add a flag to skip a test asserting dual stack conf
* Addressed comments
* fix virtctl image-upload ignoring custom storage class
* Add unit tests for Service patching
* use informer for VirtualMachineRestores in restore webhook
* staticcheck updates
* don't allow creation of a VirtualMachineRestore if on is in progress
* make VirtualMachineRestores owned by VM
* wait for PVCs created from snapshots to be bound if not WaitForFirstConsumer
* Correctly check VM run strategy
* check running/runstrategy before restoring and one additional functional test
* tighten up functional tests
* initial functional tests for VM restore
* restore controller generate events on completion and error
* updates from rebase
* add source UID to VMSnapshot status and verify source matches target when restoring
* fix apiGroup handling
* VM sestore webhook
* restore unit tests
* restore controller implementation
* snapshot controller waits for no VMIs or pods using PVCs
* add VirtualMachineRestore type and CRD
* remove include/excludeVolumes
* update VirtualMachineRestoreStatus object to include timestamp and error
* add VirtualMachineRestore type and CRD
* Fix overloaded 'v1.Patch' api field
* Prevent delete and replace of service endpoints with ClusterIP == ""
* Fix validation for self-signed cert and addressed comments
* Add support for camel-case spellings of "userdata" and "networkdata"
* tests, net: Add dual-stack checks for post migration connectivity
* tests, net: Remove post migration connectivity workaround
* Enhance operator functional tests to validate pods are torn down after kv cr is deleted
* test: set kubevirt.io/memfd = false for k8s 1.16
* Add annotation kubevirt.io/memfd
* Unit tests to validate finalizer functionality on kubevirt objects
* Restore ability to set finalizer on kubevirt objects
* Unit tests to verify operator injected labels remain consistent
* Restores operator managed by label for backwards/forwards compability during updates
* Add mhenriks to approvers/reviewers list
* introduce retryOnConflict to certificate infra test
* tests, Make network policy tests dual stack compatible
* make generate after git rebase
* deps-updae && generate
* Workaround for a not accessible CDI dependency bitbucket.org/ww/goautoneg
* Update cdi in client-go and manifests/testing to v 1.21
* Run make deps-update
* Bumped CDI version to 1.21.0
* virt-api: allow update of VM metadata and status during VM rename process
* Rename option --allow-intermediate-certificates to --externally-name
* Add unit test for cert-manager
* Add option to allow client's intermediate certs to be used in building up the chain of trust in cert validation for virt-handler and virt-api
* Add options to allow users to configure certificate and key file paths for virt-handler, virt-controller and virt-api to accommodate varying rules around certificate validation.
* Limit CriticalAddonsOnly taint to a single compute
* Add test-id's for VMI migration and lifecycle testcases
* Add event for vmi failed render
* test, masquerade: Add dual stack vmi to vmi ping
* tests, Fix Network Policy Flakiness
* tests, Add waitForNetworkPolicyDeletion
* tests, Add skipNetworkPolicyRunningOnKindInfra for NetworkPolicy tests
* tests, Remove SkipIfNotUseNetworkPolicy
* tests, expecter: Centralize expecter helpers under expecter.go and login.go
* Add unit tests for to make sure it won't accidentally break passing monitorNamespace and monitorServiceAccount parameters
* add test_id to functional test
* add openapi listType=atomic to patches
* add func test for custom patches
* add custom patches to kubevirt resources on creation
* Fix issues of using default monitorNamespace and monitorServiceAccounta when those properities are not assigned
* update: fixing and adding unit tests
* test: add reserved hugepages
* tests, skip migration fail test on kind ipv6 provider
* test: add test for source in memorybacking
* Add source in memorybacking
* Set NUMA to use memfd
* virt-operator: on update, roll over daemonsets first, then controllers
* virt-operator: fix a copy-paste error
* Add functional test for custom-port flag
* Make use of stdout cleaner
* Added functional test
* Add option to run only VNC Proxy in virtctl
* Keep a single go_test_default rule
* Document on how to use the conformance tests
* Add the first conformance test
* Add wrapper binary for conformance tests
* Detect the kubevirt install namespace dynamically
* Fix issues that virt-operator cannot extract MonitorNamespace and MonitorServiceAccount from JSON.
* tests, network: Test connectivity pre/post migration
* tests, job: Convert WaitForJobTo* to a non-assert version.
* Generate deepcopy for NUMA
* add a NUMA schema element
* Removal of unnecessary output
* Added e2e test for unused memory metric
* Fix virtctl build for linux-amd64
* Adds new metric kubevirt_vmi_memory_unused_bytes
* cluster-deploy.sh: cancel cdi deployment on sriov-lane
* remove version from go.mod
* Use PingFromVMConsole for ipv6 instead of trace route
* tests, make test 1780 dual stack compatible
* refactor virtctl image-upload args
* tests,libvmi: Append passed options
* Rebase on Goveralls
* Export -mod=vendor to always use vendor
* Update ldflag to point to right package
* Increase memory limit for iscsi pod
* deps-update to reflect state after rebase
* Fix test to properly work with TLS 1.3
* Update kubevirt builder image to use go1.13.14
* Add required dependencies for functest image build
* Check if new api rule violation was added
* Pin bazel for builder
* selinux: relabel /dev/null to container_file_t
* selinux, virt-handler: relabel the clone device
* selinux, virt-chroot: provide a command to relabel files
* Add gradle install for builder to reenable swagger
* Set libvirt to virtmaint-sig/for-kubevirt 5.0.0
* Update builder image to include new goveralls version, remove ppc64le
* Move coverage from travis to prow
* Support VMI scheme multi IPs list in case of dual stack
* Improve stability of fedora VM's login expecter
* tests: Use new image for sriov tests
* tests/containerdisks: add fedora-extended image
* kubevirt/BUILD.bazel: push to cluster registry
* containerdisks/ WORKSPACE, BUILD.bazel: add new image
* containerdisks: add doc about container-disk images
* Unit test to veriy migration target is cleaned when VMI is deleted
* Unit test to ensure an error is returned if multiple container disk directories for the same vmi exist
* Add unit test to verify stale clients are handled during pre migration target setup
* abort migration if the vmi is deleted or in the process of being deleted
* Add better logging to container disk mount/unmount
* wait for virt-handler to come back online during migration fail func test case
* ensure we detect the correct pod environment during isolation detection when migrating
* ensure only we're mounting/unmounting the right pod's container disk during migration
* gitignore: ignore files ending with ~
* Ensures stale local data from failed migration target is cleaned before attempting to migrate again
* Functional test to validate migration failures
* Domain XML to be logged on info level
* Fix the test default SMBIOS testcase
* Add custom PCI tests
* Fix bug in virtctl upload when using PVC without any annotations. In this case in code the annotations map is nil, and we attempted to set a value in that nil map causing a crash of virtctl.
* Allow podman for normal build steps
* Makefile: Control timestamp addition
* Makefile: Add timestamps to make targets
* Makefile: Use realpath instead of shell to calculate path
* export local provider variables to the correct location
* no need to verify the number of depoyed nodes for local provider
* Use proper namespace in functional test
* Fix doc string
* Add --security-opt label:disable to bazel server version check On Fedora 32 with moby this fixes an selinux issue in the imega/jq container.
* Fix tests binary release
* tests: Add phoracek to approvers
* create-tap: improve code readability
* selinux: update the default launcher selinux type
* create-tap: prevent FD leaking into the tap-maker
* Shorten the release job exectuion time on travis
* libvirt expects memory value in bytes to be provided with correct units
* Bump kubevirtci
* flaky-finder: fix leading pipe bug
* tests: skip dmidecode tests on ipv6 lanes
* code inspection changes
* Add unit test to verify domain resync period
* Add resync period for syncing domains in virt-handler from each virt-launcher
* tests: fix string equality tests
* tests, vmi_config: Fix expecter false positives In these tests, BExp-ecting "pass" always worked, because the command line was matched. Splitting the word in 2 on the command line ensures the match to happen (or not) in the result. Also removed unused 'fail' echos.