best practis; copy model with associated models

Dear list,
For a customer I am building a collaboration environment, including a
wiki/forum/file sharing etc. Now they want to 'template' a
collaboration environment by adding some default files, prefilling the
wiki, inviting a default set of users.
As you can see this involves quite some models. And I trying to figure
out what would be the best way to implement this. Use YML files?
Create a 'template' flag in my database and copying everything to a
live instance?
I am a bit at a loss here.
Any help would be greatly appreciated!

With kind regards,

The template flag works for us. Doing something very similar. Depending on how much data you’re moving it could take a while to create all the associated objects when you do a copy. Be mindful of that.