Using logrotate::file without explicit inclusion of logrotate class fails with the error:
warning: Scope(Class[Logrotate::Base]): Could not look up qualified variable 'logrotate::olddir_group'; class logrotate has not been evaluated at /tmp/vagrant-puppet-3/modules-0/logrotate/manifests/base.pp:50
Changing the include at the top of file define from logrotate::base to logrotate make it works.