Re: Request for suggestions on a rails-apps-common package
On Thu, Sep 24, 2015 at 8:36 AM, Pirate Praveen
<praveen@onenetbeyond.org> wrote:
> Hi,
>
> Currently diaspora-common has adduser.sh (creates system user),
> grantpriv.sh (setup database permissions) and set-env-nginx.sh (creates
> nginx configuration) and is used by diaspora and diaspora-installer
> packages.
>
> Now I need to do exactly same tasks for gitlab. Does it make sense to
> create a rails-apps-common package? Or is it too small a change that I
> can just copy the files and adapt?
Will it be exactly similar for gitlab (and other rails apps)? Is it possible
that there will be a need for small customizations anyway?
Some notes on the shell scripting style used
* It is better to use $(...) instead of backtick operator `...` for subshells,
a lot better readability.
* Don't mix tabs and spaces in source code files (unless strapped for
space, like in embedded systems).
* It is ok to space code blocks. Actually I encourage it. This is also for
readability.
* It is good practice to set errexit option (commonly, set -e) in order to
stop script execution if something went wrong (exit code !=, broken pipe
etc).
* Strings are good to enclose in citation marks, especially if they are
user input. E.g. [ "x$1" = "x"] and export SERVERNAME="$1".
* Any reason why $SERVERNAME isn't used in set-env-nginx.sh in
favour of $1? (Which needs a full reading of the script to understand
what is actually going on.)
* It is possible to use another delimiter char in sed substitions then
slash, e.g. s#input#output#. Use it and there is no need to escape
slashes.
--
Per
Reply to: