From 5fcbb18a0638c2dc29c770e87c2cf4cc679611c2 Mon Sep 17 00:00:00 2001 From: JakeP Date: Fri, 15 Mar 2019 21:15:34 -0400 Subject: [PATCH 1/2] check if launch_config has attribute AssociatePublicIpAddress if yes then send request with attribute, if no then do not send request with attribute --- cloud_provider/aws/aws_minion_manager.py | 95 ++++++++++++++++-------- 1 file changed, 64 insertions(+), 31 deletions(-) diff --git a/cloud_provider/aws/aws_minion_manager.py b/cloud_provider/aws/aws_minion_manager.py index 57f15b8..920b598 100644 --- a/cloud_provider/aws/aws_minion_manager.py +++ b/cloud_provider/aws/aws_minion_manager.py @@ -196,22 +196,38 @@ def are_bids_equal(self, cur_bid_info, new_bid_info): def create_lc_with_spot(self, new_lc_name, launch_config, spot_price): """ Creates a launch-config for using spot-instances. """ try: - response = self._ac_client.create_launch_configuration( - LaunchConfigurationName=new_lc_name, - ImageId=launch_config.ImageId, - KeyName=launch_config.KeyName, - SecurityGroups=launch_config.SecurityGroups, - ClassicLinkVPCSecurityGroups=launch_config. - ClassicLinkVPCSecurityGroups, - UserData=base64.b64decode(launch_config.UserData), - InstanceType=launch_config.InstanceType, - BlockDeviceMappings=launch_config.BlockDeviceMappings, - InstanceMonitoring=launch_config.InstanceMonitoring, - SpotPrice=spot_price, - IamInstanceProfile=launch_config.IamInstanceProfile, - EbsOptimized=launch_config.EbsOptimized, - AssociatePublicIpAddress=launch_config. - AssociatePublicIpAddress) + if hasattr(launch_config, "AssociatePublicIpAddress"): + response = self._ac_client.create_launch_configuration( + LaunchConfigurationName=new_lc_name, + ImageId=launch_config.ImageId, + KeyName=launch_config.KeyName, + SecurityGroups=launch_config.SecurityGroups, + ClassicLinkVPCSecurityGroups=launch_config. + ClassicLinkVPCSecurityGroups, + UserData=base64.b64decode(launch_config.UserData), + InstanceType=launch_config.InstanceType, + BlockDeviceMappings=launch_config.BlockDeviceMappings, + InstanceMonitoring=launch_config.InstanceMonitoring, + SpotPrice=spot_price, + IamInstanceProfile=launch_config.IamInstanceProfile, + EbsOptimized=launch_config.EbsOptimized, + AssociatePublicIpAddress=launch_config. + AssociatePublicIpAddress) + else: + response = self._ac_client.create_launch_configuration( + LaunchConfigurationName=new_lc_name, + ImageId=launch_config.ImageId, + KeyName=launch_config.KeyName, + SecurityGroups=launch_config.SecurityGroups, + ClassicLinkVPCSecurityGroups=launch_config. + ClassicLinkVPCSecurityGroups, + UserData=base64.b64decode(launch_config.UserData), + InstanceType=launch_config.InstanceType, + BlockDeviceMappings=launch_config.BlockDeviceMappings, + InstanceMonitoring=launch_config.InstanceMonitoring, + SpotPrice=spot_price, + IamInstanceProfile=launch_config.IamInstanceProfile, + EbsOptimized=launch_config.EbsOptimized) assert response is not None, \ "Failed to create launch-config {}".format(new_lc_name) assert response["HTTPStatusCode"] == 200, \ @@ -229,21 +245,38 @@ def create_lc_with_spot(self, new_lc_name, launch_config, spot_price): def create_lc_on_demand(self, new_lc_name, launch_config): """ Creates a launch-config for using on-demand instances. """ try: - response = self._ac_client.create_launch_configuration( - LaunchConfigurationName=new_lc_name, - ImageId=launch_config.ImageId, - KeyName=launch_config.KeyName, - SecurityGroups=launch_config.SecurityGroups, - ClassicLinkVPCSecurityGroups=launch_config. - ClassicLinkVPCSecurityGroups, - UserData=base64.b64decode(launch_config.UserData), - InstanceType=launch_config.InstanceType, - BlockDeviceMappings=launch_config.BlockDeviceMappings, - InstanceMonitoring=launch_config.InstanceMonitoring, - IamInstanceProfile=launch_config.IamInstanceProfile, - EbsOptimized=launch_config.EbsOptimized, - AssociatePublicIpAddress=launch_config. - AssociatePublicIpAddress) + if hasattr(launch_config, "AssociatePublicIpAddress"): + response = self._ac_client.create_launch_configuration( + LaunchConfigurationName=new_lc_name, + ImageId=launch_config.ImageId, + KeyName=launch_config.KeyName, + SecurityGroups=launch_config.SecurityGroups, + ClassicLinkVPCSecurityGroups=launch_config. + ClassicLinkVPCSecurityGroups, + UserData=base64.b64decode(launch_config.UserData), + InstanceType=launch_config.InstanceType, + BlockDeviceMappings=launch_config.BlockDeviceMappings, + InstanceMonitoring=launch_config.InstanceMonitoring, + SpotPrice=spot_price, + IamInstanceProfile=launch_config.IamInstanceProfile, + EbsOptimized=launch_config.EbsOptimized, + AssociatePublicIpAddress=launch_config. + AssociatePublicIpAddress) + else: + response = self._ac_client.create_launch_configuration( + LaunchConfigurationName=new_lc_name, + ImageId=launch_config.ImageId, + KeyName=launch_config.KeyName, + SecurityGroups=launch_config.SecurityGroups, + ClassicLinkVPCSecurityGroups=launch_config. + ClassicLinkVPCSecurityGroups, + UserData=base64.b64decode(launch_config.UserData), + InstanceType=launch_config.InstanceType, + BlockDeviceMappings=launch_config.BlockDeviceMappings, + InstanceMonitoring=launch_config.InstanceMonitoring, + SpotPrice=spot_price, + IamInstanceProfile=launch_config.IamInstanceProfile, + EbsOptimized=launch_config.EbsOptimized) assert response is not None, \ "Failed to create launch-config {}".format(new_lc_name) assert response["HTTPStatusCode"] == 200, \ From 773e376ce373e6524349281e7c7bed108961193e Mon Sep 17 00:00:00 2001 From: JakeP Date: Fri, 15 Mar 2019 21:21:51 -0400 Subject: [PATCH 2/2] tabs into spaces lol --- cloud_provider/aws/aws_minion_manager.py | 124 +++++++++++------------ 1 file changed, 62 insertions(+), 62 deletions(-) diff --git a/cloud_provider/aws/aws_minion_manager.py b/cloud_provider/aws/aws_minion_manager.py index 920b598..936fbf5 100644 --- a/cloud_provider/aws/aws_minion_manager.py +++ b/cloud_provider/aws/aws_minion_manager.py @@ -197,37 +197,37 @@ def create_lc_with_spot(self, new_lc_name, launch_config, spot_price): """ Creates a launch-config for using spot-instances. """ try: if hasattr(launch_config, "AssociatePublicIpAddress"): - response = self._ac_client.create_launch_configuration( - LaunchConfigurationName=new_lc_name, - ImageId=launch_config.ImageId, - KeyName=launch_config.KeyName, - SecurityGroups=launch_config.SecurityGroups, - ClassicLinkVPCSecurityGroups=launch_config. - ClassicLinkVPCSecurityGroups, - UserData=base64.b64decode(launch_config.UserData), - InstanceType=launch_config.InstanceType, - BlockDeviceMappings=launch_config.BlockDeviceMappings, - InstanceMonitoring=launch_config.InstanceMonitoring, - SpotPrice=spot_price, - IamInstanceProfile=launch_config.IamInstanceProfile, - EbsOptimized=launch_config.EbsOptimized, - AssociatePublicIpAddress=launch_config. - AssociatePublicIpAddress) - else: - response = self._ac_client.create_launch_configuration( - LaunchConfigurationName=new_lc_name, - ImageId=launch_config.ImageId, - KeyName=launch_config.KeyName, - SecurityGroups=launch_config.SecurityGroups, - ClassicLinkVPCSecurityGroups=launch_config. - ClassicLinkVPCSecurityGroups, - UserData=base64.b64decode(launch_config.UserData), - InstanceType=launch_config.InstanceType, - BlockDeviceMappings=launch_config.BlockDeviceMappings, - InstanceMonitoring=launch_config.InstanceMonitoring, - SpotPrice=spot_price, - IamInstanceProfile=launch_config.IamInstanceProfile, - EbsOptimized=launch_config.EbsOptimized) + response = self._ac_client.create_launch_configuration( + LaunchConfigurationName=new_lc_name, + ImageId=launch_config.ImageId, + KeyName=launch_config.KeyName, + SecurityGroups=launch_config.SecurityGroups, + ClassicLinkVPCSecurityGroups=launch_config. + ClassicLinkVPCSecurityGroups, + UserData=base64.b64decode(launch_config.UserData), + InstanceType=launch_config.InstanceType, + BlockDeviceMappings=launch_config.BlockDeviceMappings, + InstanceMonitoring=launch_config.InstanceMonitoring, + SpotPrice=spot_price, + IamInstanceProfile=launch_config.IamInstanceProfile, + EbsOptimized=launch_config.EbsOptimized, + AssociatePublicIpAddress=launch_config. + AssociatePublicIpAddress) + else: + response = self._ac_client.create_launch_configuration( + LaunchConfigurationName=new_lc_name, + ImageId=launch_config.ImageId, + KeyName=launch_config.KeyName, + SecurityGroups=launch_config.SecurityGroups, + ClassicLinkVPCSecurityGroups=launch_config. + ClassicLinkVPCSecurityGroups, + UserData=base64.b64decode(launch_config.UserData), + InstanceType=launch_config.InstanceType, + BlockDeviceMappings=launch_config.BlockDeviceMappings, + InstanceMonitoring=launch_config.InstanceMonitoring, + SpotPrice=spot_price, + IamInstanceProfile=launch_config.IamInstanceProfile, + EbsOptimized=launch_config.EbsOptimized) assert response is not None, \ "Failed to create launch-config {}".format(new_lc_name) assert response["HTTPStatusCode"] == 200, \ @@ -246,37 +246,37 @@ def create_lc_on_demand(self, new_lc_name, launch_config): """ Creates a launch-config for using on-demand instances. """ try: if hasattr(launch_config, "AssociatePublicIpAddress"): - response = self._ac_client.create_launch_configuration( - LaunchConfigurationName=new_lc_name, - ImageId=launch_config.ImageId, - KeyName=launch_config.KeyName, - SecurityGroups=launch_config.SecurityGroups, - ClassicLinkVPCSecurityGroups=launch_config. - ClassicLinkVPCSecurityGroups, - UserData=base64.b64decode(launch_config.UserData), - InstanceType=launch_config.InstanceType, - BlockDeviceMappings=launch_config.BlockDeviceMappings, - InstanceMonitoring=launch_config.InstanceMonitoring, - SpotPrice=spot_price, - IamInstanceProfile=launch_config.IamInstanceProfile, - EbsOptimized=launch_config.EbsOptimized, - AssociatePublicIpAddress=launch_config. - AssociatePublicIpAddress) - else: - response = self._ac_client.create_launch_configuration( - LaunchConfigurationName=new_lc_name, - ImageId=launch_config.ImageId, - KeyName=launch_config.KeyName, - SecurityGroups=launch_config.SecurityGroups, - ClassicLinkVPCSecurityGroups=launch_config. - ClassicLinkVPCSecurityGroups, - UserData=base64.b64decode(launch_config.UserData), - InstanceType=launch_config.InstanceType, - BlockDeviceMappings=launch_config.BlockDeviceMappings, - InstanceMonitoring=launch_config.InstanceMonitoring, - SpotPrice=spot_price, - IamInstanceProfile=launch_config.IamInstanceProfile, - EbsOptimized=launch_config.EbsOptimized) + response = self._ac_client.create_launch_configuration( + LaunchConfigurationName=new_lc_name, + ImageId=launch_config.ImageId, + KeyName=launch_config.KeyName, + SecurityGroups=launch_config.SecurityGroups, + ClassicLinkVPCSecurityGroups=launch_config. + ClassicLinkVPCSecurityGroups, + UserData=base64.b64decode(launch_config.UserData), + InstanceType=launch_config.InstanceType, + BlockDeviceMappings=launch_config.BlockDeviceMappings, + InstanceMonitoring=launch_config.InstanceMonitoring, + SpotPrice=spot_price, + IamInstanceProfile=launch_config.IamInstanceProfile, + EbsOptimized=launch_config.EbsOptimized, + AssociatePublicIpAddress=launch_config. + AssociatePublicIpAddress) + else: + response = self._ac_client.create_launch_configuration( + LaunchConfigurationName=new_lc_name, + ImageId=launch_config.ImageId, + KeyName=launch_config.KeyName, + SecurityGroups=launch_config.SecurityGroups, + ClassicLinkVPCSecurityGroups=launch_config. + ClassicLinkVPCSecurityGroups, + UserData=base64.b64decode(launch_config.UserData), + InstanceType=launch_config.InstanceType, + BlockDeviceMappings=launch_config.BlockDeviceMappings, + InstanceMonitoring=launch_config.InstanceMonitoring, + SpotPrice=spot_price, + IamInstanceProfile=launch_config.IamInstanceProfile, + EbsOptimized=launch_config.EbsOptimized) assert response is not None, \ "Failed to create launch-config {}".format(new_lc_name) assert response["HTTPStatusCode"] == 200, \