howardjones / network-weathermap

Network Weathermap draws diagrams from data
http://www.network-weathermap.com/
MIT License
426 stars 95 forks source link

Vagrant with mounted project #146

Closed RutgerLubbers closed 6 years ago

RutgerLubbers commented 6 years ago

Changed the vagrant setup.

Setup now incudes the weathermap files in the cacti plugins folder. Not via rsync or git but mounted in the vagrant. So the files on the host machine are directly available in the guest machine.

So changes are directly visible in cacti.

howardjones commented 6 years ago

Thanks for the PR, Rutger!

I can't accept this PR as it stands, though, for two main reasons:

1) It modifies 1122 files! I suspect you are running on Windows and something has changed all the line-endings on every file, or something like that. Please could you limit the PR to the actually-changed files?

2) This is actually how the Vagrant setup used to work, however it has some drawbacks: if you are running different (linux) OS on the host and the guest, or different PHP versions, then running composer update in the guest can break the host (or alternatively, not running composer update can leave you with incompatible modules). This is why there are options for the source of weathermap (which you have disabled).

I'm not super-excited about setting the whole of Cacti world-writable and making mysql with no security accessible externally either, especially on 3306 where it would clash with any other mysql installation.

The privileged provisioning script definitely makes it clearer what is going on though, removing all the sudo.

Not totally sure why you'd need spine to test Weathermap. I think that should also be optional.

RutgerLubbers commented 6 years ago

Thanks for the quick reply!

The massive number of changed files is because of changed file permissions (on all cacti / weathermap files). The idea behind this setup would be that composer update must be run inside the vagrant guest, and editting outside.

I can try to create a new vagrant without changing a lot of file permissions. Having spine as an option would be easy. Exposing the MySQL port by default should be commented out.

Admitted, I did not understand all options (the 'rsync' and 'git' options). Is there some more information for these? Perhaps I can have a look at them and come-up with an alternative solution? (Or use the existing solution properly :-))

We're currently trying to get some basic functions working in the cacti 1.0 plugin. Perhaps we can isolate these changes from the vagrant (permissions) stuff so we could create PRs for those separately.

We're working on:

Can you help me with the way you would like to work with the code & vagrant?

RutgerLubbers commented 6 years ago

Closed, redid some of this work and created a new PR.