# Path: conjureup/consts.py
# class spell_types:
#     JUJU = 'juju'
#     SNAP = 'snap'


from collections import Mapping
from itertools import chain
from conjureup.consts import spell_types
import yaml
        self.update(result)

    @property
    def applications(self):
        """ Returns list of applications/services
        """
        _applications = []
        for app in self['applications'].keys():
            _applications.append(self._get_application_fragment(app))
        return _applications

    @property
    def machines(self):
        """ Returns defined machines
        """
        return self.get('machines', [])

    @property
    def relations(self):
        """ Returns application relations
        """
        return self.get('relations', [])

    def _get_application_fragment(self, app_name):
        """ Returns bundle fragment
        """
        if app_name not in self['applications']:
            raise BundleInvalidApplication(
                "Unable find a bundle fragment for: {}".format(app_name))
        _fragment = self['applications'][app_name]

# Path: conjureup/consts.py
# class spell_types:
#     JUJU = 'juju'
#     SNAP = 'snap'


# Path: conjureup/bundle.py
from collections import Mapping
from itertools import chain
from conjureup.consts import spell_types
import yaml

        self.update(result)

    @property
    def applications(self):
        """ Returns list of applications/services
        """
        _applications = []
        for app in self['applications'].keys():
            _applications.append(self._get_application_fragment(app))
        return _applications

    @property
    def machines(self):
        """ Returns defined machines
        """
        return self.get('machines', [])

    @property
    def relations(self):
        """ Returns application relations
        """
        return self.get('relations', [])

    def _get_application_fragment(self, app_name):
        """ Returns bundle fragment
        """
        if app_name not in self['applications']:
            raise BundleInvalidApplication(
                "Unable find a bundle fragment for: {}".format(app_name))
        _fragment = self['applications'][app_name]

        if self.spell_type == spell_types.SNAP: