freenas-iocage-nextcloud
freenas-iocage-nextcloud copied to clipboard
Add update procedure in README
Hi, first off I can't thank you enough for this script it saved me a ton of headaches. In issue #88 I understand a script would require more maintenance. How about procedures instead?
I used this work as my basis for jailmanager/jailman. Actually updating this work as one of my reasons to start JailMan to begin with:
Updating can as be easy as:
pkg update- update caddy
- update nextcloud
Or it can be very involved because the dependencies changed etc.
With JailMan I seperated the personal config (For example: your jail IP, admin password etc), from the blueprint config (such as the PKGS to install) and made the blueprint (install script) user agnostic. Simply put: It doesn't contain any user specific config. This way we can push an update and users don't have to do anything except run it.
But even then I can't guarantee users don't need to update their personal config files once in a while. Making update and install scripts (certainly those that are user agnostic) becomes increasingly more difficult the larger they become.
But above all: People expect that you support what you publish.
If Dan would do this he would need to keep it up-to-date and people would expect it to "just work". If we take into account how much work it already is to keep the install script working.
How about a procedure? An sh script is already a "procedure", in its basic form it only says: "Download this", "Run this". A procedure really isn't much different from a support point of view (just the syntax is). The only difference is that errors are less clear and usererror is even more likely.
Also: Documentation is a HUGE burden. I'm guilty of that. It's that much of a burden, that I even skipped creating a tracker for documentation todo's. Writing good documentation can be as much work or more than creating and maintaining scripts.
My current documentation backlog is (I guess) about 40 manhours.
I hope this give your some insight in the choices made by a script-developer that has included updating and why one wouldn't do it.