What's Changed
Features:
- feat(vd): Allow change Virtual Disk spec after connect to Virtual Machine while Virtual Disk is not ready by @eofff in #461
- feat(vd): requeue for exceeded quota error by @Isteb4k in #450
- feat(vi): requeue for exceeded quota error by @Isteb4k in #472
- feat(vmop): rename type migrate to evict by @yaroslavborbat in #463
- feat(api): hide unknown conditions by @eofff in #471
- feat(vm): set limit of connected block devices by @eofff in #474
- feat(vm): notify user if the virtual machine cannot be restarted immediately by @Isteb4k in #477
- feat(vmclass): improve vmclass by @yaroslavborbat in #476
- feat(core, kubevirt): disable kubevirt exportproxy by @yaroslavborbat in #479
- feat(api): improve crd conditions by @yaroslavborbat in #487
- feat(cvi): namespace validation for vi/vd ObjectRef by @danilrwx in #504
- feat(vi,vd): add storage class ready condition, waiting in pending while storage class not ready by @eofff in #423
- feat(cvi/vi): generate crd by @danilrwx in #507
- feat(vd): crd generation by @danilrwx in #524
- feat(vi,vd): add custom settings for SC by @LopatinDmitr in #437
- feat(controller): add configuration metrics bind address by @yaroslavborbat in #516
- feat(core): add kube-rbac-proxy to virtualization by @nevermarine in #505
- feat(vd): block resizing VirtualDisk if storage class not ready by @eofff in #526
- feat(core): add kube-rbac-proxy to kubevirt & cdi by @nevermarine in #532
- feat(api): console,vnc reconnect by @danilrwx in #553
- feat(core): add separate healthz endpoint to virt-operator by @nevermarine in #570
- feat(cdi): configure clone strategy of storage profile by @Isteb4k in #563
- feat(vd): resize condition to resizing by @danilrwx in #568
- feat(vd): set tolerations for provisioners by @Isteb4k in #556
- feat(vm): add live migration for nodePlacement by @yaroslavborbat in #518
- feat(ci): send nightly e2e test to loop by @nevermarine in #593
- feat(core): add dvcr-cleaner to dvcr image by @hardcoretime in #590
- feat(vm): start live migration if vmclass changed (EE) by @yaroslavborbat in #602
- feat(module): add RBACv2 by @fl64 in #539
- feat(vd): add info represents quota exceed state by @eofff in #586
- feat(vi): add info represents quota exceed state by @eofff in #594
- feat: add webhook for validating module config virtualization by @yaroslavborbat in #571
- feat(core, kubevirt): add patch for hotplug container-disk by @yaroslavborbat in #564
- feat(vmbda): add hotplug virtual image by @yaroslavborbat in #536
Fixes:
- fix(cvi,vi,vd): use default http port for uploader service by @Isteb4k in #447
- fix(kube-api-rewriter): add VPA settings by @fl64 in #449
- fix(vmop): patch /metadata/labels for reconciled object by @diafour in #443
- fix(kube-api-rewriter): fix discovery and ValidatingAdmissionPolicy rewrite by @yaroslavborbat in #475
- fix(vi): hide dvcr url in pvc stored vi by @eofff in #488
- fix(api): rewrite conditions with empty reasons by @yaroslavborbat in #498
- fix(vm): fix conditions with empty status by @yaroslavborbat in #502
- fix(vm): block connect more than 16 block devices to vm on reconcile level by @eofff in #495
- fix(vm): check size policy matched condition in reconciler by @eofff in #514
- fix(vmbda): fix block device attached count condition processing by @eofff in #517
- fix(vm): create a kvvm with an optional cpu feature invtsc by @yaroslavborbat in #522
- fix(core): add kube-rbac-proxy to cdi-operator by @nevermarine in #530
- fix(vm): fix generating wrong statistic by @yaroslavborbat in #414
- fix(vmop): set uid vm label by @yaroslavborbat in #537
- fix(vm): do not attach VirtualDisk if it already attached to another VirtualMachine by @eofff in #540
- fix(vm): unsupported guest agent reason wrap by @danilrwx in #541
- fix(api): do not update condition transition time if status not changed by @eofff in #544
- fix(vmiplease): fix deletion after time of not claimed by @eofff in #543
- fix(vd): patch cdi to convert image format by @Isteb4k in #494
- fix(vi): update CEL by @yaroslavborbat in #549
- fix(vmclass, vm): proper affinity and tolerations merging by @yaroslavborbat in #547
- fix(vd): fix create vd from vi on pvc by @LopatinDmitr in #552
- fix(core): fix scheme for cdi servicemonitor by @nevermarine in #554
- fix(vm): unfreeze fs after snapshot by @danilrwx in #561
- fix(template): add missing fields to kube-rbac-proxy by @nevermarine in #575
- fix(cvi,vi): unlock pending vi/cvi from vd ref by @LopatinDmitr in #416
- fix(vm): fix pod start error check by @eofff in #579
- fix(cdi): change clone strategy fot sds provisioners by @Isteb4k in #573
- fix(kubevirt, core): inject-placement-anynode by @yaroslavborbat in #595
- fix(ci): print ginkgo output for nightly e2e tests to stderr by @nevermarine in #596
- fix(vi): nil recorder by @danilrwx in #612
- fix(kube-api-rewriter): respond with correct error by @danilrwx in #611
- fix(core, kubevirt): manage labels or annotations with virtualization.deckhouse.io by @yaroslavborbat in #584
- fix(core, kubevirt): virt-launcher with efi and cpu >= 12 not starting by @yaroslavborbat in #610
- fix(vmop): improve webhook configuration by @yaroslavborbat in #621
- fix(core): hide target pod during migration via cilium label by @Isteb4k in #609
- fix(vi): add warning for create virtual image with storage type 'Kube… by @LopatinDmitr in #619
- fix(vm): use generic model with explicit features for Discovery cpu type by @diafour in #580
- fix(vd): fix condition status updates in VirtualDisk by @LopatinDmitr in #625
- fix(hooks): fix module-config hook by @yaroslavborbat in #631
- fix(vm): fix restart VM after delete pod for run policy AlwaysOnUnles… by @LopatinDmitr in #632
- fix(vm): show real resources in brief by @fl64 in #637
- fix(vm): fix toleration dupe by @yaroslavborbat in #638
- fix(vi): fix viewing field 'CDROM' in Status VirtualImage on PVC by @LopatinDmitr in #644
- fix(vd): add owner ref for tmp pvc created in cdi by @Isteb4k in #646
Documentation:
- docs(vi,vd): add storage management class info by @fl64 in #469
- docs: move sc annotations info to dev docs by @fl64 in #491
- docs: update docs for v0.15 by @fl64 in #620
Other:
- chore(test): performance test updates by @universal-itengineer in #436
- test(api): add e2e sizing policy test by @hardcoretime in #428
- test(api): refactor e2e tests by @hardcoretime in #445
- refactor(lint): add helm templates validation by @diafour in #452
- chore(module): helm templates cleanup by @diafour in #454
- chore(ci): Add SOURCE_REPO env by @universal-itengineer in #433
- chore(module): remove obsolete release.yaml by @diafour in #457
- refactor(ci): switch from merge commit to head sha commit in builds by @universal-itengineer in #446
- chore(ci): add missing environment variable SOURCE_REPO to workflows by @universal-itengineer in #458
- chore(core): add comments to prevent accidental adding status subresource by @diafour in #364
- chore(ci): build from source registry2 by @universal-itengineer in #455
- refactor(vmop): change vm label from name to uid by @diafour in #460
- refactor(e2e): unix-like loader for Kubernetes connection parameters by @diafour in #459
- chore(lint): add doc-ru linter by @fl64 in #366
- test(ci): add e2e github workflow by @hardcoretime in #478
- Revert "feat(api): hide unknown conditions (#471)" by @yaroslavborbat in #486
- test(api): add force interrupting flag to perfomance test tool by @eofff in #484
- chore(module): fix doc-ru linter output by @fl64 in #490
- refactor(ci): run helm-templates validation on related changes only by @diafour in #456
- refactor(e2e): support stopping on failure by @diafour in #482
- chore(ci): fix git stageDependencies to install in virt-artifact by @universal-itengineer in #497
- refactor(core): add replace expressions for validating admission policy patch by @yaroslavborbat in #489
- refactor(kube-api-rewriter): rename kube-api-proxy to kube-api-rewriter by @diafour in #451
- refactor(api): unified deletion message when removing cleanup finalizer by @diafour in #453
- refactor(kube-api-rewriter): add rewriter for Event resources by @diafour in #496
- chore(dev): run dlv build task on m1 mac by @danilrwx in #503
- test(api): improve e2e tests logging and fix ci workflow by @hardcoretime in #501
- chore(crds): fix backup.deckhouse.io/cluster-config label by @nevermarine in #500
- refactor(cvi): use condition builder as condition api in cvi controller by @eofff in #493
- test(ci): fix ginkgo version template in e2e tests by @hardcoretime in #509
- chore(core): mitigation cve dvcr-importer, vm-route-forge and bundle by @universal-itengineer in #506
- chore(ci): fix octokit variable to process.env.GITHUB_TOKEN by @universal-itengineer in #521
- refactor(vi): use condition builder as condition api in VirtualImage controller by @eofff in #513
- refactor(vd): use condition builder as condition api in VirtualDisk controller by @eofff in #511
- chore(logger): replace to Deckhouse logger by @danilrwx in #520
- refactor(api): use conditionBuilder as main api for conditions by @eofff in #525
- chore(ci): remove bashible step ensure-dhcp-daemon.sh by @universal-itengineer in #527
- chore(logger): different loggers for controllers by @danilrwx in #523
- refactor(cdi): Remove categories from cluster scoped CRD InternalVirtualizationCDI by @diafour in #535
- chore(ci): build editions by @universal-itengineer in #529
- refactor(api): move common consts by @danilrwx in #531
- test(api): add resource deletion step in e2e test cases by @hardcoretime in #512
- chore(observability): update dashboard for perfomance tests by @universal-itengineer in #179
- chore(ci): fix PR labels detection by @universal-itengineer in #542
- chore(ci): fix run on main by @universal-itengineer in #545
- test(api): refactor e2e label and annotation test case by @hardcoretime in #515
- test(api): add e2e affinity and toleration test case by @hardcoretime in #519
- refactor(dev): add dlv debuger for virt-handler by @yaroslavborbat in #538
- Revert "fix(vi): update CEL" by @universal-itengineer in #551
- refactor(api): split common package by @danilrwx in #534
- refactor(vm): wrap KVMI ready reasons by @danilrwx in #565
- chore(vmsnapshot): resizing unit tests by @danilrwx in #578
- refactor(vm): split sync internal vm and power state on different handlers by @LopatinDmitr in #558
- test(api): add e2e virtual disk snapshots test case by @hardcoretime in #550
- chore(ci): add se-plus edition by @universal-itengineer in #581
- chore(ci): fix workflow Deploy Prod by @universal-itengineer in #583
- chore(core): mitigation cve 2 by @universal-itengineer in #582
- chore(ci): fix build cdi-artifact by @universal-itengineer in #589
- chore(ci): update build and deploy prod for login to prod and dev repos by @universal-itengineer in #585
- chore: fix prettier yaml by @yaroslavborbat in #591
- refactor(vmop): events by @danilrwx in #604
- refactor(vi): add events by @danilrwx in #599
- refactor(vd): events by @danilrwx in #577
- refactor(cvi): add events by @danilrwx in #598
- chore(ci): add unconditional send to loop by @nevermarine in #607
- refactor(module): fix internal metrics for kv v1.3.1 by @fl64 in #615
- fix(module) fix register module issue by @fl64 in #614
- refactor(docs): add components placement table by @diafour in #555
- test(api): remove non updated e2e test cases from workflow by @hardcoretime in #616
- test(api): increase
kubectl apply
timeout by @hardcoretime in #624 - test(api): disable e2e affinity test by @hardcoretime in #628
- feat(vd) add InUse condition to brief output by @fl64 in #635
- chore(ci): change github runner for test job by @universal-itengineer in #639
Full Changelog: v0.14.1...v0.15.0