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