What is DevOps?
An introduction to DevOps in the FileMaker world
At its core, DevOps is about making the process of building, testing, and releasing software safer, faster, and more reliable. The goal of DevOps is to automate as many of the phases in your software's lifecycle, from development (Dev) to operations (Ops), as possible.
With these practices in place, it's easy to implement short, fast and documented development iterations and You'll have peace of mind when rolling out changes to your clients. And if a bug fix or new feature breaks existing functionality, you have a standard, safe and automated workflow for rolling back to a previous version of your software.
Think of it like cooking a complex dish. DevOps is your master recipe and a well-organized kitchen workflow.
Before you add a new ingredient or try a new technique (making a change to your app), you first jot it down on your recipe card (version control). Then, you taste that small change separately to make sure it complements the dish without ruining it (testing). Once you're sure it works, you stir it into the main pot (deployment).
This process ensures you know exactly what's in your dish at all times. If an ingredient tastes off, you can easily trace it back and remove it, reverting to the last delicious version (rollbacks). This structured, quality-focused approach is what DevOps brings to software development, making the process more reliable and less risky.
For many FileMaker developers, this way of working has been out of reach.
The DevOps Challenge in FileMaker
Implementing DevOps in FileMaker is a little more challenging than in other development ecosystems and programming languages. Even though there exists tons of great DevOps tools for version control, testing and deployment automation (for instance, GitHub), they all rely on the software files being easily readable (code stored as text). Because the fmp12 file format is binary and unreadable, these common tools cannot interpret and manage our FileMaker software for us.
This gap often leads to less ideal development workflows that carry unnecessary risk:
Live Development: Making changes directly on a live, production system introduces risks of breaking things with no way of reverting back if things break.
Manual Deployments: Moving files by hand and manually using the Claris FileMaker Data Migration Tool often relies on checklists and memory to make sure you didn't miss a step.
Unclear History: Having no definitive record of who changed what, when, or why makes troubleshooting difficult and rollback impossible.
However, as Claris provides more and better developer tools (APIs and CLIs) it allows the community to build special DevOps tools that understands FileMaker's proprietary format.
If you're interested in learning more about this, this Developing a DevOps Tool for FileMaker, using FileMaker thesis provides in-depth research into implementing DevOps in FileMaker.
Last updated