Source code for troposphere.helpers.userdata

#!/usr/bin/python

from troposphere import Base64, Join, Sub


[docs]def from_file(filepath, delimiter="", blanklines=False): """Imports userdata from a file. :type filepath: string :param filepath The absolute path to the file. :type delimiter: string :param: delimiter Delimiter to use with the troposphere.Join(). :type blanklines: boolean :param blanklines If blank lines should be ignored rtype: troposphere.Base64 :return The base64 representation of the file. """ data = [] try: with open(filepath, "r") as f: for line in f: if blanklines and line.strip("\n\r ") == "": continue data.append(line) except IOError: raise IOError("Error opening or reading file: {}".format(filepath)) return Base64(Join(delimiter, data))
[docs]def from_file_sub(filepath): """Imports userdata from a file, using Sub for replacing inline variables such as ${AWS::Region} :type filepath: string :param filepath The absolute path to the file. rtype: troposphere.Base64 :return The base64 representation of the file. """ try: with open(filepath, "rt") as f: data = f.read() return Base64(Sub(data)) except IOError: raise IOError("Error opening or reading file: {}".format(filepath))