We're planning to move to a self hosted instance of retool, and in the process of beta testing the stack on our servers.
Once we get up and running, we'd like to migrate our existing apps, modules, data etc. from our current cloud organization to the on-prem organization.
Can this be done? If so, how?
At the moment migrations from cloud to on-prem need to largely be done manually and should be done in the following order:
1. Manually recreate all resources. It's very important that resources have the same display name as they do in your cloud org. This ensures that, when migrating your apps, they will connect to the correct resources when imported. Make sure you also test the connections on your duplicated resources once you've moved them over to make sure calling your resources from a different location is working properly.
2. Manually recreate query library queries. This can be tedious and it's possible to convert query library queries to regular queries once you've imported an app and the query does not exist in your query library. However, with that method, you lose the reusability of the query library so if you'd like to maintain its functionality you'll need to recreate the queries yourself.
3. Export/Import your apps. You can export JSON files of your apps (see docs here if you haven't already). As mentioned above, when importing your apps, as long as you have existing resources and query library queries that are appropriately named, your apps will automatically connect to them.
4. QA! Since this process is largely manual it can be easy to make small mistakes (e.g. typos in resource names) so be sure to go through all of your apps to make sure they're functioning properly.
This can be quite a process and it's good to freeze development on your apps before migrating to avoid any potential issues caused by changes made.
Hopefully helps but please let us know if you have any further questions!
Thank you very much for the detailed explanation.