saltstack / kitchen-salt

SaltStack provisioner for test-kitchen
MIT License
199 stars 111 forks source link

Avoiding the Chef install? #35

Closed cmarzullo closed 8 years ago

cmarzullo commented 8 years ago

Anyway we can avoid the omnibus installer? We haven't gotten to actually writing tests yet, but use kitchen for the development. Kind of annoying that we have to wait for chef when we don't use it. Plus it confuses the issue for newbros when they see chef getting installed.

PatOShea commented 8 years ago

This might work in the .kitchen.yml file:

driver_config:
  require_chef_omnibus: false

I found that here.

cmarzullo commented 8 years ago

yeah no luck. Well it does break the chef install. but probably not what we want.

ssplatt commented 8 years ago

i think the issue is outlined here: https://github.com/simonmcc/kitchen-salt/blob/master/provisioner_options.md

chef_bootstrap_url "https://www.getchef.com/chef/install.sh" the chef bootstrap installer, used to provide Ruby for the serverspec test runner on the guest OS

I'd think all that would be needed is ruby, gem, and then 'gem install serverspec' as a bootstrap step.

ssplatt commented 8 years ago

I quickly threw this together as a replacement for chef_bootstrap_url: https://gist.githubusercontent.com/ssplatt/4df4942523dea4a9c5bb/raw/5eda0aa6ccb3a304b984b023d4292cd32e19e7ba/install.sh

all that is needed is ruby and gem to be linked or placed in /opt/chef dir:

  mkdir -p /opt/chef/embedded/bin/
  ln -s `which gem` /opt/chef/embedded/bin/
  ln -s `which ruby` /opt/chef/embedded/bin/

i haven't tested that modified install.sh on anything other than bento/debian-8.2. kitchen test works.

ssplatt commented 8 years ago

i made a PR to resolve this issue. https://github.com/simonmcc/kitchen-salt/pull/42

neillturner commented 8 years ago

I have added pull request make chef install for busser optionally #49 to address this in the same way as kitchen-puppet and kitchen-ansible