6320b06950
This allows users to create tags (or properties in the case of OpenStack) on instances using string interpolation values. The use case is to be able to add information about the tenant* which requested the instance to cloud-provider tags. * Note that ultimately Nodepool may not end up using a given node for the request which originally prompted its creation, so care should be taken when using information like this. The documentation notes that. This feature uses a new configuration attribute on the provider-label rather than the existing "tags" or "instance-properties" because existing values may not be safe for use as Python format strings (e.g., an existing value might be a JSON blob). This could be solved with YAML tags (like !unsafe) but the most sensible default for that would be to assume format strings and use a YAML tag to disable formatting, which doesn't help with our backwards-compatibility problem. Additionally, Nodepool configuration does not use YAML anchors (yet), so this would be a significant change that might affect people's use of external tools on the config file. Testing this was beyond the ability of the AWS test framework as written, so some redesign for how we handle patching boto-related methods is included. The new approach is simpler, more readable, and flexible in that it can better accomodate future changes. Change-Id: I5f1befa6e2f2625431523d8d94685f79426b6ae5 |
||
---|---|---|
.. | ||
_static | ||
_templates | ||
aws.rst | ||
azure.rst | ||
conf.py | ||
configuration.rst | ||
devguide.rst | ||
gce.rst | ||
ibmvpc.rst | ||
index.rst | ||
installation.rst | ||
kubernetes.rst | ||
metastatic.rst | ||
openshift-pods.rst | ||
openshift.rst | ||
openstack.rst | ||
operation.rst | ||
releasenotes.rst | ||
static.rst |