Rank 2: Process
I've seen some posts about this already but I'm not satisfied with the answers as they basically say "not possible".
It's absolutely crucial to be able to manage your database structures without losing data. This should preferably be done without user involvement, during a CI operation.
This is the flow I would expect to be able to run:
- Update my Staging server's buckets, teams, collections
- Develop my features locally, using the Staging server for development data
- Push my feature in a Pull Request, test it in a staging production environment, run e2e tests, etc
- Merge my changes to
main, CI runs, updates the production Appwrite databases, buckets, etc, using theappwrite.json - Frontend is deployed to production, everything works in harmony 🌟
From what I can tell, the documentation says that this should work https://appwrite.io/docs/command-line-deployment#deployCollections, however official word from people here is that this command is not usable on production, as it wipes all data?
Do we need to write custom migration scripts using the API's whenever our Appwrite structure changes?