We coded / migrated / bugfixed a few drupal modules as part of CiviCamp (blog reports here and here). We also decided to ship these modules with our 2.1 release. You can get the current version of these modules here. CiviCRM v2.1.2 will include the following drupal integration modules:
- Views2 integration. We've exposed the Contact / Email / Address / Contribution / Activity tables to Views2. We will add a few more tables over the next few releases and hope the community will step up and submit the needed code for the other tables. At some point, we hope to automate the generation of some of those files (from our xml schema definition).
- civimember_roles. We migrated that module into two modules: civicrm_member_roles which adds/removes a role from a drupal user based on their membership status. This is a one way synchronization only, and can be used to restrict content (and other CMS data) based on a valid membership. The other modules civicrm_group_roles does something similar with static groups. A user has a role added/removed whenever the user is added/removed from a CiviCRM group. This is a 2 way sync, so changes in a user role is reflected in the CiviCRM group, and changes to a CiviCRM group is reflected in the users role.
- civicrm_og_sync module. This module syncs the member of an OG groups with a corresponding CiviCRM group. It also has support to sync the "administrators" of an OG group with another CiviCRM group for permissioning purposes. This module was developed in 1.9 (for Democrats Abroad), but not officially supported. This is also a one way sync (from OG to CiviCRM). We will explore the possibility of adding the reverse sync in a later version
Another integration that would be nice to have is with CCK. Would be cool for someone in the community to step up and play a lead role in making this happen