Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/whummer/toaster
Automated testing and debugging of automation scripts (e.g., Chef)
https://github.com/whummer/toaster
Last synced: 4 months ago
JSON representation
Automated testing and debugging of automation scripts (e.g., Chef)
- Host: GitHub
- URL: https://github.com/whummer/toaster
- Owner: whummer
- License: apache-2.0
- Created: 2014-01-14T12:46:12.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2018-01-01T01:15:53.000Z (about 7 years ago)
- Last Synced: 2024-09-22T14:39:08.733Z (5 months ago)
- Language: JavaScript
- Size: 8.46 MB
- Stars: 55
- Watchers: 11
- Forks: 5
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ToASTER
Automated testing of Infrastructure as Code automation scripts (e.g., Chef).
(ToASTER is an acronym for "Testing of Automation Scripts via Twisted Execution Runs")
## Building and Installing
* Important note: We highly recommend to install ToASTER only on dedicated machines,
e.g., a clean virtual machine from Amazon EC2. Do not install toaster on any
production servers or your own development machine! The reasons are twofold: first,
toaster requires a high amount of disk space for creating LXC containers, storing
test data etc; second, toaster relies on a comprehensive third-party software stack
(docker.io, LXC, Squid, MySQL, Ruby, Ruby gems, etc), which might interfere with
and pollute the working environment of production machines.* Target platform: Ubuntu 13.04
```
# become root user
sudo su -# prerequisites:
apt-get -y install wget make bzip2 curl patch screen libgdbm-dev libyaml-dev libxml2-dev libxslt-dev libmysqlclient-dev libsqlite3-dev g++
gpg --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3
curl -L https://get.rvm.io | bash -s stable --ruby
# (OR: install stable ruby versions from repo: apt-get install -y ruby ruby-dev)
source /usr/local/rvm/scripts/rvm# install toaster gem:
gem build cloud-toaster.gemspec
gem install --no-ri --no-rdoc cloud-toaster-*version*.gem# (OR: install directly using rubygems.org: gem install cloud-toaster)
# toaster setup:
toaster setup # (setup testing host / utility host. Enter 192.168.100.2 as "db.host" parameter)
toaster proto ubuntu1 ubuntu # (initialize prototype container)
```The code listing above illustrates the single-node installation. For multiple testing hosts,
set the db.host configuration to the public IP/hostname of a central MySQL DB server to be
shared among all hosts.## User Commands
```
toaster web -d # (run the Web UI in a screen session in the background; web port 8080)
toaster agent # (start test agent in the background; web port 8385)
toaster spawn lxc1 ubuntu1 # (create container)
toaster clean # (clean containers)
```## License
ToASTER is published under the Apache License version 2.0. See LICENSE file for details.