def get_mime_encoded_user_data(volume_id, setup_disks, in_user_data, now): """ AWS allows for a multipart m """ user_data = MIMEMultipart() user_data.attach(get_cloud_init()) data_formatted = in_user_data.format(volume_id, now, PIP_PACKAGES) LOGGER.info(data_formatted) user_data.attach(MIMEText(setup_disks + data_formatted)) return user_data.as_string()
def get_mime_encoded_user_data(self, volume_id): """ AWS allows for a multipart m """ user_data = MIMEMultipart() user_data.attach(get_cloud_init()) # Build the strings we need cvel_pipeline = self.build_cvel_pipeline() data_formatted = self._user_data.format(cvel_pipeline, self._obs_id, volume_id, self._now, self._counter, PIP_PACKAGES) LOGGER.info(data_formatted) user_data.attach(MIMEText(self._setup_disks + data_formatted)) return user_data.as_string()
def get_mime_encoded_user_data(data, observation_id, setup_disks, bottom_frequency, frequency_range, swap_size): """ AWS allows for a multipart m """ # Build the mime message user_data = MIMEMultipart() user_data.attach(get_cloud_init()) data_formatted = data.format( observation_id, PIP_PACKAGES, bottom_frequency if bottom_frequency is not None else '', frequency_range if frequency_range is not None else '', swap_size) user_data.attach(MIMEText(setup_disks + data_formatted)) return user_data.as_string()
def get_mime_encoded_user_data(instance_details, setup_disks, user_data): """ AWS allows for a multipart m """ # Split the frequencies min_freq = 940 max_freq = 1424 LOGGER.info("min_freq: {0}, max_freq: {1}".format(min_freq, max_freq)) # Build the mime message mime_data = MIMEMultipart() mime_data.attach(get_cloud_init()) swap_size = get_swap_size(instance_details) data_formatted = user_data.format("TODO", min_freq, max_freq, swap_size, PIP_PACKAGES) mime_data.attach(MIMEText(setup_disks + data_formatted)) return mime_data.as_string()
def get_mime_encoded_user_data(self): """ AWS allows for a multipart m """ # Split the frequencies index_underscore = find(self._frequency_id, '_') index_tilde = find(self._frequency_id, '~') min_freq = self._frequency_id[index_underscore + 1:index_tilde] max_freq = self._frequency_id[index_tilde + 1:] LOGGER.info('min_freq: {0}, max_freq: {1}'.format(min_freq, max_freq)) # Build the mime message user_data = MIMEMultipart() user_data.attach(get_cloud_init()) swap_size = self.get_swap_size() data_formatted = self._user_data.format(self._frequency_id, swap_size, PIP_PACKAGES) user_data.attach(MIMEText(self._setup_disks + data_formatted)) return user_data.as_string()
# License along with this library; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, # MA 02111-1307 USA # """ """ from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from common import get_cloud_init, get_script from ec2_helper import EC2Helper from settings_file import AWS_INSTANCES, AWS_AMI_ID, BASH_SCRIPT_SETUP_DISKS # Setup the MIME user_data = MIMEMultipart() user_data.attach(get_cloud_init()) user_data.attach(MIMEText(get_script(BASH_SCRIPT_SETUP_DISKS))) data_as_string = user_data.as_string() # Start the EC2 instance ec2_helper = EC2Helper() ec2_helper.run_spot_instance(AWS_AMI_ID, 0.1, data_as_string, 'm3.medium', None, 'Kevin', 'Cloud-Init-Test', AWS_INSTANCES['m3.medium'], ephemeral=True)