Closed milky-milk closed 8 years ago
Hello!
When I'm trying to define more than one pattern for serverspec, kitchen fails: for expample:
suites: - name: Common provisioner: name: ansible_playbook playbook: test/integration/default.yml verifier: patterns: - roles/common/spec/common_spec.rb - roles/nginx/spec/nginx_spec.rb
fail message:
Installing ruby, bundler and serverspec remotely on server Running Serverspec invalid option: -E Please use --help for a listing of valid options >>>>>> ------Exception------- >>>>>> Class: Kitchen::ActionFailed >>>>>> Message: Failed to complete #verify action: [SSH exited (1) for command: [ source $HOME/.rvm/scripts/rvm if [ -d /tmp/kitchen ]; then cd /tmp/kitchen sudo -E rspec -c -f documentation --default-path /tmp/kitchen -P roles/common/spec/common_spec.rb\n sudo -E rspec -c -f documentation --default-path /tmp/kitchen -P roles/nginx/spec/nginx_spec.rb else echo "ERROR: Default path '/tmp/kitchen' does not exist" exit 1 fi ]] >>>>>> ---------------------- >>>>>> Please see .kitchen/logs/kitchen.log for more details >>>>>> Also try running `kitchen diagnose --all` for configuration
It seems, the error causes #{s}" }.join('\n').
#{s}" }.join('\n')
def rspec_commands info('Running Serverspec') if config[:require_runner] "#{env_vars} #{sudo_env(rspec_cmd)} #{color} -f #{config[:format]} --default-path #{config[:default_path]} #{rspec_path_option} #{config[:extra_flags]}" else config[:patterns].map { |s| "#{env_vars} #{sudo_env(rspec_cmd)} #{color} -f #{config[:format]} --default-path #{config[:default_path]} #{config[:extra_flags]} -P #{s}" }.join('\n') end end
Maybe it should be more correct to use #{s}" }.join(';') to separate commands?
#{s}" }.join(';')
when you change to #{s}" }.join(';') does it work ok? if so submit a pull request or else let me know and i will change it and release.
Yep.
Closing https://github.com/neillturner/kitchen-verifier-serverspec/pull/4
Hello!
When I'm trying to define more than one pattern for serverspec, kitchen fails: for expample:
fail message:
It seems, the error causes
#{s}" }.join('\n')
.Maybe it should be more correct to use
#{s}" }.join(';')
to separate commands?