Calendar databases can be automatically populated by setting local.autoprovision="yes" in the ics.conf file. In addition, domains must be calendar enabled (have calendar service), meaning the domain LDAP entry must contain the icsCalendar object class.
There are two ways for default calendars to be created automatically:
When a user logs in for the first time, if the user's LDAP entry is found, the system enables it for calendar services and creates a default calendar.
When an LDAP user, group or resource is invited to an event before the default calendar has been created, the system creates a default calendar for that entity.
For example, suppose tchang exists in the directory server but is not yet enabled for calendaring (that is, does not have a default calendar). With autoprovisioning turned on, and with the domain calendar enabled:
When tchang logs into Calendar Server for the first time, the system automatically enables tchang for calendaring and creates a default calendar with the calid email@example.com.
Alternately, if someone invites tchang to an event before the default calendar has been created, the system will automatically create a default calendar for him, if user.invite.autprovision="yes" in the ics.conf file.
For groups invited, the default group calendar is created if the following ics.conf parameter is set: groupAutoprovisioning="yes".
For resources, likewise, the default resource calendar is created if the following ics.conf parameter is set: resource.invite.autoprovision="yes".
For more information about the configuration file parameters necessary for users, resources and groups, see 4.3 Configuring Calendar for LDAP Users, Groups and Resources.