Add an option to not create/drop a table in a given environment

I’m trying to get some issues either closed or some hard TODO’s attached. I’m looking at this issue and wanted to bring it up to the group:

https://github.com/rails/rails/issues/2899#issuecomment-7257057

Problem:

Production database differs from test environment.

Workaround:

Add conditionals to migrations, something like:

if Rails.env.test?

Problem with the workaround:

Now the schema we save is different for different environments.

The suggested fix in the issue would be to let our create and drop table commands be aware of the environment. I’ve not worked with the schema writing code before, so I’m not sure the scope involved in such a request.

If you have an opinion about this issue, or care to look into it. Please reply: https://github.com/rails/rails/issues/2899#issuecomment-7257057