summaryrefslogtreecommitdiffstats
path: root/roles/lib_utils
diff options
context:
space:
mode:
authorJoel Diaz <jdiaz@redhat.com>2018-01-04 13:55:23 +0000
committerJoel Diaz <jdiaz@redhat.com>2018-01-22 16:53:38 +0000
commitcd381ae7f8716a1dccce78d08f5776ec94cd31b7 (patch)
treec03a40348dbd954f6d802be0e330539ecf79c421 /roles/lib_utils
parentaa1c22ddba413d18b5b1c674a512568d18368eae (diff)
downloadopenshift-cd381ae7f8716a1dccce78d08f5776ec94cd31b7.tar.gz
openshift-cd381ae7f8716a1dccce78d08f5776ec94cd31b7.tar.bz2
openshift-cd381ae7f8716a1dccce78d08f5776ec94cd31b7.tar.xz
openshift-cd381ae7f8716a1dccce78d08f5776ec94cd31b7.zip
un-hardcode default subnet az
allow defining 'default_az' for one of the subnets in the vpc structure, and pull that default_az and set it to openshift_aws_subnet_az. this should allow one less variable to have to be defined/overridded (openshift_aws_subnet_az) when using non-default (us-east-1) regions update provisioning_vars.yml.example to show an example VPC structure
Diffstat (limited to 'roles/lib_utils')
-rw-r--r--roles/lib_utils/filter_plugins/openshift_aws_filters.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/roles/lib_utils/filter_plugins/openshift_aws_filters.py b/roles/lib_utils/filter_plugins/openshift_aws_filters.py
index dfcb11da3..f16048056 100644
--- a/roles/lib_utils/filter_plugins/openshift_aws_filters.py
+++ b/roles/lib_utils/filter_plugins/openshift_aws_filters.py
@@ -67,8 +67,24 @@ class FilterModule(object):
return tags
+ @staticmethod
+ def get_default_az(subnets):
+ ''' From a list of subnets/AZs in a specific region (from the VPC
+ structure), return the AZ that has the key/value
+ 'default_az=True.' '''
+
+ for subnet in subnets:
+ if subnet.get('default_az'):
+ return subnet['az']
+
+ # if there was none marked with default_az=True, just return the first
+ # one. (this does mean we could possible return an item that has
+ # default_az=False set
+ return subnets[0]['az']
+
def filters(self):
''' returns a mapping of filters to methods '''
return {'build_instance_tags': self.build_instance_tags,
+ 'get_default_az': self.get_default_az,
'scale_groups_match_capacity': self.scale_groups_match_capacity,
'scale_groups_serial': self.scale_groups_serial}