Using user-specific settings with Vagrant and shared playbooks

I’m using Ansible with Vagrant. I’m planning to store the playbooks and Vagrantfiles in version control, so everyone on my team can all create similar virtual machines for testing.

But some Ansible variables and tasks should be user-specific. For example, I want each user to provide their own SVN username, and their own email login for SMTP forwarding. Also, the user might want to configure some custom tasks, like setting up their own .profile file. None of this seems to belong in the shared repository.

I know they can configure “ansible.extra_vars” in the Vagrantfile, but that doesn’t help with custom tasks. Is there a common way to handle this? Maybe have people create a playbook at a specific path on their machines, and have our shared playbooks include it if it exists?

Thanks,

Jacob