Update gitlab and ci recipes

In order to ensure we actually checkout the ref specified by node
attributes, this commit switches the git resources to use :sync instead
of :checkout. This will pull down the code if there is any difference
between the refs whereas :checkout would only pull code down if no code
was already present. It also changes the descriptions for the rvm_shell
resources used in both ci and gitlab. This is to better describe what
the command is doing when viewing the logs from a chef run. And finally,
it changes the gitlab app host to use the server name attribute instead
of the fully qualified domain name. This ensures that the url shown in
the web ui can be controlled via the gitlab server name node attribute.