* fix displaying false vsphere errors
* rename variables
* fix default values not being set when a new pool is added in edit mode
* minor refactor
---------
Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
* add option of 'none' for Container Network select in Basics tab of RKE2 provisioning + add e2e test to check that option is available and can be selected
* add correct logic to include none as a CNI option
* address pr comments
* fix small bug with missing optional chaining
* add banner to Basics component when CNI option selected is 'none' to warn user about the need of additional configuration
* update e2e to test banner
* fix issue
---------
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
* fix registry host not being synced with its secret
* lint
* refactor landing on Create Custom page
* refactor creating cluster name in e2e test
* pass index to selectors
* reuse clickTabWithSelector
* lint
* refactor registries e2e po
* lint
---------
Co-authored-by: Mo Mesgin <mmesgin@Mos-M2-MacBook-Pro.local>
This reverts changes made by Aws In-tree support (#9643). While testing, it appears that the intent of this PR (to handle upgrade cases and display a banner) can never be triggered.
fixes#10426
Adds a built-in AKS provisioning extension to replace the embedded ember pages, as well as modifications to the provisioning UI to support other non-rke2 provisioning extensions
* update rke2 node drain default value
* set machine pool drain before delete to true by default; do not set upgrade strategy drain before delete to true
There are certain scenarios where we want to apply hooks, but it might not make sense to apply all of them. For instance, we have `_beforeSaveHooks` hooks that we want to apply when the "Edit as YAML" button is clicked on a form, but it doesn't make sense to apply the `save-machine-pools` hook at this point; we are only changing the mode of editing so we should not be saving changes at this point. However, we still would want to apply the `set-registry-config` hook.
Co-authored-by: Richard Cox <richard-cox@users.noreply.github.com>
Signed-off-by: Phillip Rak <rak.phillip@gmail.com>
Overview
- Addons are helm charts installed into the provisioned cluster
- Addons to install are determined by kube version and cloud provider
- Addons have values/config that can be provided when provisioning
Bug
- Previously we were looking for the helm chart associated with the addon in the chart cache
- The cached charts are specific to the kube version of the host. Is the chart is invalid due to kube version of host, it's not supplied to us thus not in cache
- If a user wants to install a valid chart in the provisioned cluster which was invalid for the local cluster, we would fail to find the chart
Fix
- In all worlds, regardless of cache, we would fetch the full chart (which includes the readme and importantly default values)
- Fix is to ensure we fetch these given the original set of addon names, rather than addons which appear in the local cache (which we don't use anyway)
* Cleanup code
* Prevent to JSON clone agent config if undefined
* Add clean-tooltip directive to jest configuration
* Remove agent cleanup from the before hook
* Split fetch methods in parts
* Move condition to parent
* Add tests for agent configuration
* SKip test till resolved extra setup
* Updated code comment based on changes
* Extension support for custom provisioning
* FIx lint issues
* Discovery / Tweaks
- fix issue where namespacesOverride was lost
- tidy up PROVIDER
- try to handle missing provider=type url param (could be missing extension-params)
- added a few comments to comments to come back to
* Names and typings
- change param --> customParam to make it clearer it's not url params
- add labels-annotations to shell types
* Wire in provider detailTabs
- as per original readme this should be made generic (extension point working directly with ResourceTabs)
* Update IClusterProvisioner & docs
* Improvements / Changes to support proving out DO extension
- cluster hooks optional
- buff up save hook (and pass in cluster when calling apply fn)
- move normalizeName into generic place
- bring back async create machine config
- hack for do extension (map example provider to do provider)
* updates, add optional saveCluster, add missing kube file
- saveCluster complements hooks, doesn't skip handling of addons, etc
- ensure register hooks take the `this` context in all worlds
* Adding docs
* Updates
- location config based changes
- change customParams to context
- add query param
- add new extention point to add tabs to cluster create cluster config section
- fixed some typing
- fixed issue where cluster was not passed to before / after hooks (only important if 'this' changes
* Changes following review, fix `t` in plugins
* Fix linting
* Docs updates, pass through more edit/view things
* Conditionally show the namespace grouping in the cluster list
- means users can differentiate between clusters with same name in different namespaces
- useful when clusters created via extension provisioner where ns can be selected
* docs tweaks, actually include the provisioning page in docs
---------
Co-authored-by: Richard Cox <richard.cox@suse.com>
* Changes to support custom node driver UI extensions
* Fix bad merge
* Fix merge
* Fix bad merge
* Revert changes that are more impactful for now
* Add mock for $plugin
* Fix lint issue
* Address PR feedback
* Fix bad rebase
* Fix merge issues
* Removed unused import
* Fix merge issue
* Add back in missing validation for roles
* Fix unit test
* porting Neils poc work
* add all namespaces to pod affinity ui + add banners to for windows warning and no defaults for limits area + set namespaces as input as default for agent configuration + add node selector to agent configuration
* update banner copy in affinity section for windows + add visual separator between node and pod affinity
* added weight input for node affinity - preferred + made weight input for pod affinity appear only for preferred + changed MatchExpressions component to cover matchFields and matchExpressions in node affinityupdate banner copy in affinity section for windows + add visual separator between node and pod affinity
* fix lint errors
* working on e2e tests for agent configuration on rke2
* e2e tests work in progress
* working on e2e tests
* fix issue with Tolerations component where data wasnt being propagated because some inputs were missing a connection with the update method
* finish missing bits of e2e tests + fix height of inputs + revert back default affinity fetch
* disable no arbitrary waits in cypress
* fix broken e2e and unit tests
* fix e2e tests again
* fix lint issue
* set timeout for intercepting request to 10 seconds
* update path for default setting in agent configuration
* fix issue in dark mode in group panel + update strings to match rke1 interface + remove label from namespace input on pod affinity + clean up agent config data on save and restore it if it fails + change order of ui blocks in agent config interface
* address low hanging fruit PR comments
* remove console log
* move agent config po to components folder
* remove select.po in favour of labeledselect.po + fix data-testid in arrayList component and also its unit tests + make unit-input po leverage the use of LabeledInputPo + fix title assertion
* address final comments on e2e tests
* fix issues with PodAffinity component + update e2e test payload check
* final PR fixes
* addressing PR comments
* remove log
* reverting changes to ClusterManagerCreateRke2CustomPagePo as it was impacting other tests + add a method to go to custom cluster creation page
* e2e test updates
* updating banners copy
---------
Co-authored-by: Alexandre Alves <aalves@Alexandres-MacBook-Pro.local>
Co-authored-by: Alexandre Alves <aalves@Alexandres-MBP.lan>
* Move hardcoded wording to i18n
* Replace repeated string values for CSS classes used in logic with constants values
* Prevent to create clusters without required node pools
* Prevent view to break if no Machine Pool is present
* Replace computed property with method
* Prevent to require nodes if no machine pool is not set