Sambot

Sambot is our internal Platform Engineering toolchain to help standardize and simplify our DevOps workflow.

It provides an executable with a variety of commands, grouped in various areas of functionality such as session management, DNS changes and cookbook management.

Usage

To install the gem, simply run chef gem install sambot. This will install the gem in your ChefDK installation. If you want to use it outside Chef, run gem install sambot.

Run chef exec sambot to be shown the help menu. For help on specific commands, i.e. cookbook management and specific cookbook management commands, run chef exec sambot help cookbook or chef exec sambot cookbook help generate for example.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.exacttarget.com/ads-devops/sambot.

Installation

Make sure you have ruby >= 2.4.0 installed.

Install bundler >= 1.15.1 by running gem install bundler

Run bundle install from the root of the project to install the required Ruby gems.

Running Sambot

If you want to test your changes locally, you can run bundle exec bin/sambot.

Running Tests

Run bundle exec rspec spec to execute the unit tests.

Run cd integration_tests && bundle exec rspec . to execute the integration tests. These require that you have Docker Compose available.

Linting

There is nothing here yet