Ejemplo n.º 1
0
    def render_template(file_names, path, contexts):
        # Check for template file
        template = None

        for file_name in ['%s.jinja' % name for name in file_names]:
            file_path = os.path.join(path, file_name)
            if os.path.exists(file_path):
                template = file_path
                break

        if not template:
            raise NameError('No template for %s found.' % file_names)

        # Render template
        dest_file = os.path.splitext(template)[0]
        utils.render_template_to_file(template, dest=dest_file,
                                      contexts=contexts)

        return dest_file
Ejemplo n.º 2
0
    def compile_template(self, rel_path, src, dest, node):
        src_path = os.path.join(src, rel_path)
        dest_path, ext = os.path.splitext(os.path.join(dest, rel_path))

        # Remove .jinja extension
        ext = ext.lower()
        if ext != '.jinja':
            dest_path += ext

        # Ensure container folder exists
        utils.makedirs(os.path.split(dest_path)[0])

        context = {
            'env_name': self.node.data['env_name'],
            'host_name': self.data['host_name'],
            'instance_id': self.data['_id'],
            'release': self.node.data['sha']
        }

        utils.render_template_to_file(src_path, dest_path, [context])
Ejemplo n.º 3
0
    def render_template(file_names, path, contexts):
        # Check for template file
        template = None

        for file_name in ['%s.jinja' % name for name in file_names]:
            file_path = os.path.join(path, file_name)
            if os.path.exists(file_path):
                template = file_path
                break

        if not template:
            raise NameError('No template for %s found.' % file_names)

        # Render template
        dest_file = os.path.splitext(template)[0]
        utils.render_template_to_file(template,
                                      dest=dest_file,
                                      contexts=contexts)

        return dest_file
Ejemplo n.º 4
0
    def compile_template(self, rel_path, src, dest, node):
        src_path = os.path.join(src, rel_path)
        dest_path, ext = os.path.splitext(os.path.join(dest, rel_path))

        # Remove .jinja extension
        ext = ext.lower()
        if ext != '.jinja':
            dest_path += ext

        # Ensure container folder exists
        utils.makedirs(os.path.split(dest_path)[0])

        context = {
            'env_name': self.node.data['env_name'],
            'host_name': self.data['host_name'],
            'instance_id': self.data['_id'],
            'release': self.node.data['sha']
        }

        utils.render_template_to_file(src_path, dest_path, [context])