This repository has been archived by the owner on Jan 11, 2023. It is now read-only.
Fix instance metadata + vmss default behavior for k8s 1.10.0 to 1.10.2 #3275
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it: Instance metadata + VMSS + k8s version < 1.10.2 doesn't work. So far there was validation to ensure that a user explicitly specifies AvailabilitySet or instance meta data = false with k8s 1.10.0 and 1.10.1. This PR makes it easier by assigning the default according to those rules. New default behavior is:
k8s version < 1.10.0: AvailabilitySet, useInstanceMetadata: true
k8s version == 1.10.0 or 1.10.1: AvailabilitySet, useInstanceMetadata: true, unless useInstanceMetadata is set to false, then VMSS is default
k8s version >= 1.10.2: VMSS, useInstanceMetadata: true
To summarize, useInstanceMetadata is always set to true by default if the value is empty. The availabilityProfile depends on whether VMSS is supported with the other options.
Which issue this PR fixes (optional, in
fixes #<issue number>(, fixes #<issue_number>, ...)
format, will close that issue when PR gets merged): fixes #Special notes for your reviewer:
If applicable:
Release note: