So the bad news first. We are currently working on the configuration as code functionality. With it you can save your project in Git repo instead of the database.
We don’t have a set date when this will be production-ready. We are thinking sometime in November, but there are a lot of kinks to iron out.
The good news, we do have some tooling available to help out.
Option #1 - The migrator command-line tool.
With this you can export everything for a project, the process, the step templates, script modules, accounts, etc. as JSON files to be saved in source control. It will encrypt all sensitive items to be imported as well.
The downside is this tool is very heavy-handed. It will do it’s very best to ensure what has been exported matches what is imported. Which is a great thing, until you get to lifecycles and environments and variables.
Please read the linked documentation to see the pros and cons to that tool.
Option #2 - The space cloner script
This script does not export JSON, rather it reads from the test server’s API and clones the process over to the production server using its API. Because it is using the API, it won’t have access to your sensitive variables or accounts. You’d have to rekey them on the production server.
It was designed from the ground up to support the use case of wanting to clone a process from one server to another. You can exclude specific environments or include all of them. You can elect to overwrite existing variables or leave them as is. Please see the how it works page for more details.
I hope that helps!