build-essential packages are not installed for webapp

After upgrading to greyhound, vagrant broke and i needed to re-bootstrapping our citest_develop nodes.

With this, i changed the way how nodes were initialized before snapshotted: Before, we applied a subset of platform classes like site_apt::dist_upgrade and others, but those pulled in too much dependencies, so i decided to take them out and just provision nodes on bootstrap with a little shell script (/home/testbot/vagrant/bootstrap_only.sh on greyhound). With this, we have cleaner nodes that have nothing on them before deploy.

h1. Effects on singlenode

node is failing to build gems needed for the webapp, happened locally when testing pixelated

turns out that build-essential is uninstalled:

root@node1:/srv/leap/webapp# dpkg -l build-essential ruby-dev gcc
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                      Version                   Architecture              Description
+++-=========================================-=========================-=========================-========================================================================================
un  build-essential                                                                   (no description available)
un  gcc                                                                               (no description available)
ii  ruby-dev                                  1:2.1.5+deb8u1            all                       Header files for compiling extension modules for Ruby (default version)

h2. Effect on multinode setup

the webapp node is failing to build gems needed for the webapp, see see https://jenkins.leap.se/view/Platform%20Builds/job/platform_develop/190/consoleFull

root@rewdevweb1:~# dpkg -l build-essential ruby-dev gcc
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                      Version                   Architecture              Description
+++-=========================================-=========================-=========================-========================================================================================
ii  build-essential                           11.7                      amd64                     Informational list of build-essential packages
ii  gcc                                       4:4.9.2-2                 amd64                     GNU C compiler
un  ruby-dev                                                                          (no description available)

All needed packages look like they were installed during deploy, but removed on the same deploy. I'll verify if this is the case.

(from redmine: created on 2016-01-20, closed on 2016-01-22, relates #5426 (closed), relates #7619 (closed), relates #7838 (closed))