Ddev: Feature request: ddev config global --nfs-mount-enabled

Created on 28 Nov 2019  路  9Comments  路  Source: drud/ddev

It is not related to a problem, it is about to make life easier for developers when we have the frustrating to enable the NFS mount to each project from a company. Since these projects have NFS disabled as default.

I would like to have the ability to add nfs-mount-enabled in ddev global, like ddev config global --nfs-mount-enabled. Then we mac users or whoever who using NFS doesn't need to worry to do manually to each project.

Will that be a possible to add it in global without need to add directly to the web projects?

Prioritized

Most helpful comment

+1 for this issue.

Along the same lines would it be possible (or wise) to have all the default settings that appear after a new ddev config available in global? There are obviously some values you want the local configuration to trump global, but some (like NFS mount) where you want global to win over local values.

A couple examples:

  1. Set global webserver_type to "apache-fpm". This would cause all future non-updating ddev config runs to start the project with the apache webserver, similar to how the global omit_containers value works.

  2. Set global nfs_mount_enabled to "true" This would override local ddev configuration so that regardless of the value there, NFS mount is enabled. xdebug_enabled, router options, and anything else that doesn't need to match across all environments

All 9 comments

It's a reasonable request.

As far as making things easy for your team... Do you check in the config.yaml? Do you check it in with nfs enabled? Also, I'm sure you know that you can ddev config --nfs-mount-enabled --project-type=... etc so if everybody is doing the config themselves instead of checking it in, that would also work.

Right now, there is already DDEV config committed with disabled NFS in the repos. So it would be nice if it could be possible to have NFS enabled for all projects on the global level without the need to touch the project's config and see them in git status.

For this case, I am thinking, especially for those who are Mac/Windows users or need faster performance. So we do not need to override each project because of the OS we are using.

Yes please!
I love this feature as it's more about the local computer configuration and not a change in the project itself.
It's all possible now with additional manual steps, but having DDEV achieve this automatically, will be awesome!

Do you have some workaround today and do you mind to share with us, @shaal?

Unfortunately not :(
The only way I can do it now, is commit DDEV config with nfs-mount-enabled: true.
(so Mac users can enjoy the increased speed advantage).

And on linux I would turn it off locally, or just run it with NFS anyway.

I'd like this new feature to be added to DDEV, so I don't need to manually change it according to the computer I run it on.

+1 for this issue.

Along the same lines would it be possible (or wise) to have all the default settings that appear after a new ddev config available in global? There are obviously some values you want the local configuration to trump global, but some (like NFS mount) where you want global to win over local values.

A couple examples:

  1. Set global webserver_type to "apache-fpm". This would cause all future non-updating ddev config runs to start the project with the apache webserver, similar to how the global omit_containers value works.

  2. Set global nfs_mount_enabled to "true" This would override local ddev configuration so that regardless of the value there, NFS mount is enabled. xdebug_enabled, router options, and anything else that doesn't need to match across all environments

I think this should not be too complicated. At the moment, it is already possible to add config.*.yaml files that get read by ddev. The idea here would be to also parse the files in ~/.ddev/config.yaml in the same way. Clearly, the project specific settings should have higher priority, but if you specify a post-start hook in global, this would apply to everything.

I don't see the need to artificially limit what config could be in global. It would only serve to restrict our options, and to increase the complexity of the configuration parsing.

That's an interesting strategy, thanks @jcnventura

This is in ddev edge release v1.14.0-rc1, and I'd love it if all interested parties could upgrade to that and get some miles on it before full release. Use ddev describe to see that nfs_mount_enabled is true - it's near the top, just under PHP version. https://github.com/drud/ddev/releases/tag/v1.14.0-rc1

Was this page helpful?
0 / 5 - 0 ratings