Current

This document is valid for the current version of Plone.

Registering a profile

by Plone Documentation Team last modified Dec 27, 2009 05:44 PM
Contributors: Mikko Ohtamma, Martin Aspeli, Kamon Ayeva, Israel Saeta Pérez
Learn how to register a profile

GenericSetup profiles are registered via ZCML. The registration is typically done in the configure.zcml of your package. Let's register a default profile for our example my.package

<configure
    xmlns="http://namespaces.zope.org/zope"
    xmlns:genericsetup="http://namespaces.zope.org/genericsetup"
    i18n_domain="my.package">

  <genericsetup:registerProfile
      name="default"
      title="My Package"
      directory="profiles/default"
      description="Default profile for My Package"
      provides="Products.GenericSetup.interfaces.EXTENSION"
      />

</configure>

This is what we would see in the configure.zcml of my.package.  Let's examine what each of the attributes of the registerProfile directive mean.

name
The name is how GenericSetup will identify your profile.  The full profile id is "profile-<package_name>:<profile_name>", in our case profile-my.package:default
title
The title of the profile will show up in the portal_setup tool when you select what profile you want to import. The title may also be used in the portal_quickinstaller if it picks up the profile as the install profile for your package.
directory
The directory attribute is the relative path to the folder containing the profile information.  The directory name is conventionally the same as the profile name.
description
The description gives a brief summary of what the profile is used for.
provides
The provides attribute tells GenericSetup what kind of profile you are registering. For almost all cases you will be registering an extension profile to extend Plone's base profile.