Skip to content

andresnacimiento/teuton

 
 

Repository files navigation

TEUTON

Gem Version GitHub

Test your infrastructure as code.

logo

The infrastructure test is useful for:

  • Sysadmin teachers who want to evaluate students remote machines.
  • Students who want to evaluate their learning process.
  • Professionals who want to monitor their remote machines.

Installation

Install Ruby and then:

gem install teuton

Quickstart

Create your test file:

# File: examples/02-target/start.rb 
group "Learn about targets" do
  target "Create user obiwan", weight: 2
  run "id obiwan"
  expect ["uid=", "(obiwan)", "gid="]

  target "Delete user vader"
  run "id vader"
  expect_fail
end

start do
  show
  export
end

Usage: Run test with teuton run TESTPATH.

$ teuton run examples/02-target
------------------------------------
Started at 2025-12-01 18:14:44 +0000
F.
Finished in 0.005 seconds
------------------------------------
 
CASE RESULTS
+------+-----------+-------+-------+
| CASE | MEMBERS   | GRADE | STATE |
| 01   | anonymous | 33.0  | ?     |
+------+-----------+-------+-------+

Output: reports saved into var/TESTNAME folder.

$ tree var 
var
└── 02-target
    ├── case-01.txt
    ├── moodle.csv
    └── resume.txt

Consult the generated output files

Features

  • Use simple DSL to define your tests: target, run,expect and more.
  • Remote devices only require SSH or Telnet service installed.
  • Output format: txt, html, json, yaml, markdown, etc.
  • Multiplatform.
  • Free Software License.

Documentation

Contact

Contributing

  1. Make sure you have Ruby installed
  2. Fork it
  3. Create your feature branch (git checkout -b my-new-feature)
  4. Commit your changes (git commit -am 'Add some feature')
  5. Push to the branch (git push origin my-new-feature)
  6. Create new Pull Request.

You can also create issues with your requests, incidences or suggestions.

About

Infrastructure test, mainly useful for sysadmin teachers and making contests

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Ruby 84.4%
  • HTML 9.1%
  • Shell 4.5%
  • PowerShell 1.9%
  • Other 0.1%