Example #1
0
def ploneselfcontainedbuildout(self, source, target):
    if not source.stereotype('buildout:plone_self_contained'):
        return

    root = target.anchor
    root.factories['buildout.cfg'] = JinjaTemplate
    root.factories['bootstrap.py'] = JinjaTemplate

    if 'buildout.cfg' in root:
        return # dont overwrite the .cfg
    else:
        buildout = root['buildout.cfg'] = JinjaTemplate()
    buildout.template = templatepath('buildout.cfg.jinja')
    buildout.params['package'] = source.name

    if 'bootstrap.py' in root:
        bootstrap = root['bootstrap.py']
    else:
        bootstrap = root['bootstrap.py'] = JinjaTemplate()
    bootstrap.template = templatepath('bootstrap.py.jinja')
    bootstrap.params = {}
Example #2
0
def gsprofilesetuphandlers(self, source, target):
    """Create jsregistry.xml
    """
    package = target.anchor
    default = package['profiles']['default']
    egg = egg_source(source)
    egg_name = egg.name
    path = dotted_path(egg) + '.setuphandlers.install'

    markerfilename = '%s_marker.txt' % dotted_path(egg)

    #create setuphandlers.py
    setupname = 'setuphandlers.py'
    if setupname not in package.keys():
        setup = JinjaTemplate()
        package[setupname] = setup
        setup.template = 'agx.generator.plone:templates/setuphandlers.py.jinja'
        setup.params = {'egg': path, 'markerfilename': markerfilename}

    #create the markerfile
    if not markerfilename in default.keys():
        markerfile = default[markerfilename] = DTMLTemplate()
        markerfile.template = \
            'agx.generator.plone:templates/productname_marker.txt'

    # read or create import_steps.xml
    if 'import_steps.xml' in default:
        xml = default['import_steps.xml']
    else:
        xml = default['import_steps.xml'] = DTMLTemplate()

    # set template used for import_steps.xml
    xml.template = 'agx.generator.plone:templates/import_steps.xml'

    # set template params
    xml.params = {
        'eggid': path,
        'handler': path,
        'handlertitle': 'Installer for ' + dotted_path(egg),
        'version': '1',  # XXX: extend profile with import step version.
        'description': '',  # XXX: extend profile with import step version.
    }