Common migrations look for all models with *_file_name attributes but I
found that unreliable in our code base. It finds too many model classes
and doesn't allow us to be more selective in the migration. So I used
our own migration declaration to migrate exactly those attachments
specified.
We removed some Spree magic a while back and that broke our sample data
script. This is now corrected.
I also added a spec so that we will notice broken seed data earlier.
It does so by updating a user's enterprise_limit attribute to the
maximum integer the database supports.
This is used at least in Katuma to remove the limitation of the number
of enterprises a user can create. This is the agreement the community
reached for the pricing plans.
Eventually, this logic could be triggered with a button from the UI but
for now this is for internal usage only.
Note this task is still rather naive and only covers the simple case
where an enterprise was created but never used and thus, does not have
any associated entities like orders.
This is enough for the case I have at hand where a hub's manager created
an enterprise while he wanted to create a user account #ux. He ended up
with an enterprise named after him and now he asked us to clean that up.