DDEV Provider integrations allow you to pull and push databases and user-generated files from an upstream location. This may be a prepackaged configuration as for Platform/Pantheon/Acquia/Lagoon or a customized situation using rsync or git or local files from Dropbox or whatever.

Provided items are in .ddev/providers directory of every project, and in the codebase. Docs at https://ddev.readthedocs.io/en/latest/users/providers/

A Hosting Provider Integration is just little bash scripts wrapped in yaml for each of the functions they want to do.

Although push is provided in integrations, it’s inappropriate for most production uses, as you generally not push databases or user-generated files to an upstream production host. You might, though push to a PR environment on Platform.sh or similar situation.

Integrations can be called whatever you want. For example, if you create a live.yaml file then you can ddev pull live. If you create a prod.yaml you can ddev pull prod.

You can change any of the provided integrations by just removing the #ddev-generated or copying to another yaml file.

Develop your provider technique by running the commands one-by-one inside the web container.

For debugging, use set -x in a stanza.

DDEV does live automated tests on every PR for the explicitly supported hosting environments like Acquia, Platform.sh, Pantheon, Lagoon, and it also has automated tests for the variety of other examples.