Wave Workflow - Migrating development changes to production

nate-johnson

Aug 2nd, 2019 10:33 AM

Hi all,

I've only just started playing with Wave and am looking for best practices on how people do their development work locally and then deploy things to a production server when they are fully baked. I am not talking code changes, but rather database (and media) changes. Wave and Voyager seem really powerful, but it seems closer to WordPress than a standard Laravel app. For the code changes, I'd typically use Laravel Forge and Laravel Envoyer to provision servers and do zero time deployments - database and media changes would be done via custom migrations and new seeders. But since this is a WordPress-like system, meaning there is so much "configuration" stored in your database, is there a convenient way to bring all new things, like new users or roles created and tested locally, into the production data, as well as any new media that has been built locally, like a logo change. Or is this environment not suited for this type of development? Do you make your code changes (theme-y type things, new notifications, etc) locally, push them to production and then re-do all your setup in the live application?

Thanks for any advice you all can provide!

-n

cookie

Aug 2nd, 2019 04:11 PM

I really dont understand your question/problem. 類

In Laravel Forge you can configure your Deploy Script .. So I think you can write a Seeder for all of your Changes and Updates, after that you can simply deploy it.

When your pictures are not updatet, you have to change your .gitignore

nate-johnson

Aug 2nd, 2019 04:44 PM

It seems like one of the benefits of using Wave is the integration with Voyager. But Voyager doesn't appear to create migrations or seeders when it modifies your database. So if you use Voyager to develop a site on a local workstation, do you have to run through all those same steps on your production server? You could export your local database and overwrite prod, but that seems bad. My current plan is to not use Voyager and to do everything with migrations and seeders and let my deploy scripts run them (as you mentioned).

There is also configuration that seems to only be configurable inside of Voyager. Things like google analystics, logos, and more. I could write a seeder to populate my local environment and then run it in prod, but again, that feels like a lot of extra work.

Maybe I am just used to not having access to make live changes in a production environment - that does not feel safe to me. I don't use things like WordPress where you can do this. I picked up Wave because I liked the Laravel Spark like features it brings combined with a nicer user experience, imo.

I get that Voyager and Wave might be for people that don't have a lot of development experience and if the above is the case, that is fine. Just wanted to ask and try to get a better understand of how this software is supposed to be used.