We’ve recently implemented OttoFMS for our FileMaker deployment workflow, and I’m still getting familiar with its best practices.
Our setup has three environments on the same server:
Test – used by interns for experiments
DevOps – used by me for development
Main – live production
Here’s the current challenge:
The intern added several new layouts, tables, and scripts in the Test file.
I’ve made different changes in the DevOps file.
I now need to migrate only the specific updates (selected tables, layouts, or scripts) from Test → DevOps, and then deploy DevOps → Main using OttoFMS.
Question:
Is there any way in OttoFMS to migrate or deploy only selected elements (tables, layouts, or scripts) between environments — instead of replacing the entire file?
If not, what’s the best recommended approach or workflow for merging partial changes between environments when using OttoFMS?
We’re still new to OttoFMS, so any practical guidance, examples, or lessons learned from others who’ve done similar migrations would be really appreciated.
The short answer is that is this not currently possible with FileMaker, and therefore not possible with OttoFMS or any other FileMaker “deployment” tool as we all rely on the Claris-provided Data Migration tool behind the scenes.
As for best practices, we recommend the “feature flags” technique, which I did a presentation on at Engage 2024. Basically the idea is that you always develop in such a way that you could deploy to production at any moment, and use feature flags to hide work that isn’t actually ready yet. If you use the environment tagging feature of OttoFMS, you can easily use custom function to check if the file is running on a certain server, and then hide the feature or redirect to a stable layout conditionally.
This would mean that your intern would need to make real changes in the same dev file that you work on, so as not to get 2 files out of sync with each other. If you’re nervous about this, you may also want to look into Ottomatic Projects which allows you to keep versions of your file as changes happen and with each “snapshot” that you make, can see a simplified overview that shows which layouts/tables/fields were changed and by who.
In your current situation, merging changes from 2 different files must be done manually and we don’t currently have a way from Claris automate that process. But we do also provide a tool called FMComparison where you can do a “Save as XML” for both of the FileMaker files that you want to merge and get a nice user interface to catch all the little changes.
I hope this helps! I know it’s just a quick overview of many things, do let me know if you need more details on anything
Thank you for sharing your knowledge.
I tested a small file, and the migration was successful. However, when I tried with our main file (the larger one), it failed. I have attached the screenshots for your reference.
Thank you for your response. I’ve downloaded a debug logs file
, but I’m not sure if this is the correct file related to the error you mentioned. Could you please confirm if this is the right one, or let me know if I need to provide any other specific logs?