Code Monkey home page Code Monkey logo

busser-rspec's Introduction

Test Kitchen

Gem Version Build Status

Website https://kitchen.ci/
Source Code https://kitchen.ci/docs/getting-started/introduction/
Slack #test-kitchen channel on Chef Community Slack

Test Kitchen is an integration tool for developing and testing infrastructure code and software on isolated target platforms.

Getting Started Guide

To learn how to install and setup Test Kitchen for developing infrastructure code, check out the Getting Started Guide.

If you want to get going super fast, then try the Quick Start next...

Quick Start

Test Kitchen is a RubyGem and can be installed with:

gem install test-kitchen

If you use Bundler, you can add gem "test-kitchen" to your Gemfile and make sure to run bundle install.

Next add support to your library, Chef cookbook, or empty project with kitchen init:

kitchen init

A kitchen.yml file will be created in your project base directory. This file describes your testing configuration; what you want to test and on which target platforms. Each of these suite and platform combinations are called instances. By default your instances will be converged with Chef Solo and run in Vagrant virtual machines.

Get a listing of your instances with:

kitchen list

Run Chef Infra Client on an instance, in this case default-ubuntu-2004, with:

kitchen converge default-ubuntu-2004

Destroy all instances with:

kitchen destroy

You can clone a Chef Infra cookbook project that contains Test Kitchen support and run through all the instances in serial by running:

kitchen test

Usage

There is help included with the kitchen help subcommand which will list all subcommands and their usage:

kitchen help test

More verbose logging for test-kitchen can be specified when running test-kitchen from the command line using:

kitchen test -l debug

For the provisioner (e.g. chef-solo or chef-infra) add a log_level item to the provisioner section of the .kitchen.yml For more information on setting log_level see the configuration documentation.

Documentation

Documentation is being added on the Test Kitchen website. Please read and contribute to improve them!

Versioning

Test Kitchen aims to adhere to Semantic Versioning 2.0.0.

Community and Ecosystem

If you would like to see a few of the plugins or ecosystem helpers, please look at ECOSYSTEM.md.

Development

Pull requests are very welcome! Make sure your patches are well tested. Ideally create a topic branch for every separate change you make. For example:

  1. Fork the repo
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Authors

Created by Fletcher Nichol ([email protected]).

Maintained by Chef Software and a growing community of contributors.

License

Apache License, Version 2.0 (see LICENSE)

busser-rspec's People

Contributors

adamhjk avatar d-higuchi avatar databus23 avatar dependabot-preview[bot] avatar hyone avatar jordansissel avatar schisamo avatar smith avatar tas50 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

busser-rspec's Issues

Dependabot can't resolve your Ruby dependency files

Dependabot can't resolve your Ruby dependency files.

As a result, Dependabot couldn't update your dependencies.

The error Dependabot encountered was:

Bundler::VersionConflict with message: Bundler could not find compatible versions for gem "bundler":
  In Gemfile:
    bundler (~> 1.3)

  Current Bundler version:
    bundler (2.2.15)

Your bundle requires a different version of Bundler than the one you're running.
Install the necessary version with `gem install bundler:1.17.3` and rerun bundler using `run.rb _1.17.3_`

If you think the above is an error on Dependabot's side please don't hesitate to get in touch - we'll do whatever we can to fix it.

View the update logs.

How to specify gem dependancies

I would like to use some of the functionality of the 'mixlib-shellout' gem in my rspec cases, but cannot now, as the busser gem environment is completely isolated from the Chef gem environment. Is there a way to specify a Gemfile, or something nicer than making a system call?

Windows fails to install gems

The test-kitchen rspec for selenium_test is successful on ubuntu, centos, and mac, but not windows. I tried ffi 1.9.8, 1.9.9, and 1.9.10 and all get the same results. Any ideas on how I can get past this point?
Thanks in advance.

https://github.com/dhoer/chef-selenium/tree/master/test/integration/selenium_test/rspec

selenium$ kitchen verify windows
-----> Starting Kitchen (v1.4.2)
-----> Verifying <selenium-test-windows-2012r2>...
       Preparing files for transfer
-----> Busser installation detected (busser)
       Installing Busser plugins: busser-rspec busser-serverspec
       Plugin rspec already installed
       Plugin serverspec already installed
       Removing C:/Users/vagrant/AppData/Local/Temp/verifier/suites/rspec
       Removing C:/Users/vagrant/AppData/Local/Temp/verifier/suites/serverspec
       Transferring files to <selenium-test-windows-2012r2>
-----> Running rspec test suite
         run  PATH=C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\OpenSSH\bin;C:\opscode\chef\bin:C:/Users/vagrant/AppData/Local/Temp/verifier/gems/bin; bundle install --local || bundle install from "."
$$$$$$ C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/bundler-1.10.6/lib/bundler/spec_set.rb:92:in `block in materialize': Could not find ffi-1.9.9 in any of the sources (Bundler::GemNotFound)
$$$$$$  from C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/bundler-1.10.6/lib/bundler/spec_set.rb:85:in `map!'
$$$$$$  from C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/bundler-1.10.6/lib/bundler/spec_set.rb:85:in `materialize'
$$$$$$  from C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/bundler-1.10.6/lib/bundler/definition.rb:140:in `specs'
$$$$$$  from C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/bundler-1.10.6/lib/bundler/definition.rb:185:in `specs_for'
$$$$$$  from C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/bundler-1.10.6/lib/bundler/definition.rb:174:in `requested_specs'
$$$$$$  from C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/bundler-1.10.6/lib/bundler/environment.rb:18:in `requested_specs'
$$$$$$  from C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/bundler-1.10.6/lib/bundler/runtime.rb:13:in `setup'
$$$$$$  from C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/bundler-1.10.6/lib/bundler.rb:127:in `setup'
$$$$$$  from C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/bundler-1.10.6/lib/bundler/setup.rb:18:in `<top (required)>'
$$$$$$  from C:/opscode/chef/embedded/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:135:in `require'
$$$$$$  from C:/opscode/chef/embedded/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
$$$$$$  from C:/opscode/chef/embedded/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_require.rb:144:in `require'
$$$$$$  from C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/busser-rspec-0.7.4/lib/busser/rspec/runner.rb:20:in `<main>'
$$$$$$ !!!!!! Ruby Script [C:/Users/vagrant/AppData/Local/Temp/verifier/gems/gems/busser-rspec-0.7.4/lib/busser/rspec/runner.rb -I C:/Users/vagrant/AppData/Local/Temp/verifier/suites/rspec -I C:/Users/vagrant/AppData/Local/Temp/verifier/suites/rspec/lib C:/Users/vagrant/AppData/Local/Temp/verifier/suites/rspec] exit code was 1
>>>>>> Verify failed on instance <selenium-test-windows-2012r2>.
>>>>>> Please see .kitchen/logs/selenium-test-windows-2012r2.log for more details
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::ActionFailed
>>>>>> Message: WinRM exited (1) for command: [
$env:BUSSER_ROOT = "$env:TEMP\verifier"
$env:GEM_HOME = "$env:TEMP\verifier\gems"
$env:GEM_PATH = "$env:TEMP\verifier\gems"
$env:GEM_CACHE = "$env:TEMP\verifier\gems\cache"

& $env:TEMP\verifier\bin\busser.bat test
]
>>>>>> ----------------------

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.