Comments (7)
I'd like us to keep to a .vvv
folder, this is already supported in site provisioners and it avoids us having issues if we do things without vagrant
or if vagrant
changes the folder layout. Same if someone tries to debug by nuking the VM and removing the .vagrant
folder
from vvv.
An example of OO or at least abstracting away duplication is the shared/mapped folders. All our mappings have the same settings yet we define them for every single provider, so a wrapper function or class representing each folder might be a more optimal way of doing it. I know other Vagrant projects have done this.
Chassis does this via configuration and an array:
https://github.com/Chassis/Chassis/blob/main/Vagrantfile#L104-L109
https://github.com/Chassis/Chassis/blob/main/Vagrantfile#L225-L232
📦 Chassis is a virtual server for your WordPress site, built using Vagrant. - Chassis/Vagrantfile at main · Chassis/Chassis
📦 Chassis is a virtual server for your WordPress site, built using Vagrant. - Chassis/Vagrantfile at main · Chassis/Chassis
from vvv.
Likewise, data collection and splash screens could be a function in a file, as could all the various big warning screens
from vvv.
I'm with you. I also think that starting off by creating a Ruby module called ``VVV` as a root namespace and then use that to namespace classes that we use, with each class in a separate file to make it easy to deal with.
I guess something like .vvv/lib/[class_name].rb
would be a good idea that keeps us within needs and conventions.
I also think that scoping this so that we keep the current intended functionality and then branch into adding further functionality. I.e. starting off with some sort of MVP and going from there.
from vvv.
Looking on how we are looking to evolve the project for pure docker support and not just Vagrant a path can be .vvv/vagrant/lib[class_name].rb
in this way we can use that folder for the internals things.
About the rest I agree about everything.
from vvv.
@Mte90 - That's exactly how I'm doing this currently. Maintainability and portability are the two biggest concerns that I've been having.
from vvv.
The first PR for this is ready at #2641.
from vvv.
Related Issues (20)
- Show the PHP version in the CLI prompt HOT 12
- Warn when site names contain dots HOT 1
- getting error as-- Destroying VM and associated drives... after running vagrant up HOT 7
- Bug: Connecctivity issue on ubuntu repositories HOT 5
- Bug: Contribute template doesn't work HOT 6
- Bug: different PHP versions HOT 7
- Allow custom DNS
- Q: How can I do a clean install and provision with PHP8.0? HOT 3
- Investigate swapping mailhog for mailpit HOT 1
- Apple M2 chip compatibility HOT 7
- Bug: core dev site template failing HOT 3
- Bug: Keep running into echo; printf $SSH_AUTH_SOCK error HOT 15
- Syntax Error while installing Virtual box in Vagrantfile HOT 3
- Task: Update bitbucket ssh known hosts
- Q: Vagrant up failure HOT 3
- Bug: Failed Fetching PHP 7.4 packages Resource temporarily unavailable HOT 8
- Bug: Non-blocking MariaDB connection error during docker provision
- Q: .htaccess HOT 10
- Q: PHP version HOT 2
- Bug: MongoDB error when attempting to use Tideways on fresh install HOT 17
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vvv.