Multiple Environments in Same Client

Discussion created by laura_albrecht_automic on Aug 15, 2016
Latest reply on Aug 16, 2016 by laura_albrecht_automic
So, I have a dilemma - and not sure the best way to handle it.  Hopefully some of you have some experience / ideas on this.

I have 3 different systems - DEV, QA and PROD.  Within each system I have a single client - 9100, 8100, 1100.

The intent was that people would start developing in DEV and then migrate to QA and then to PROD.

Of course, a wrench has been thrown into this whole thing because 1 team apparently has "4" environments - PERFORMANCE, DEV, QA, PROD.

Since I am not going to build a 4th system just for them, we've decided that we will have PERFORMANCE and DEV within our DEV system.  However, to further complicate things - we are REALLY trying to remain using a single client only.  I know there are 9,998 other clients I could use, and if that is the only way to go - I'll do it, but it has been strongly suggested to me not to allow that for maintenance reasons, etc.  I can go into the details, but I don't think that's important for the moment.

This means I need to figure out a way to have the PERF and DEV environments within the same client - 9100.  Since another goal I have is to be able to have the same objects in PROD that I have in QA that I have in DEV (everything is being set dynamically with includes / variables, etc. so that there is no environment specific hard coding going on) I'm not quite sure how to do this.

I obviously can't have object A pointing to the PERF environment / variables and object A pointing to the DEV environment / variables since we have to have unique object names on the db.

Only way I can really see to do this is to (shudder) make the PERF environment somehow in the object name identify itself as PERF.  I did NOT want to do that and this would obviously require the users to make modifications to their objects when they migrate their stuff from PERF to DEV.  Because DEV, QA and PROD object names do not have the environment in the name.  Since PERF is the lowest / least used environment - I'm hoping that this isn't too big of a deal for the users, but I'm just wondering if there is a better way for me to do this.

Does anyone else have this issue?  How else can I have 2 environments within the same client without changing the object name?