Skip to content

Satori CI Logo

Intro

Satori CI is an automated testing platform designed to validate the behavior of command executions through assertions. It allows to perform testing on software applications, binaries, and live systems using pre-built playbooks or creating own custom playbooks. Satori CI is a versatile tool for in-depth project testing.

Install

Satori offers flexible execution options for your tests, allowing them to run either synchronously or asynchronously.

  • Use our CLI tool, which will allow you to execute tests directly from your terminal installed with pip install satori-ci.
  • Using the Web Interface, you can use our web interface to manage and execute your tests without any installation required.

CI

You can integrate Satori with various CI/CD tools:

Playbook's language

Our YAML-based language allows you to define executions, specify their inputs, and assert whether their behavior aligns with your expectations. Tests are encapsulated within files called playbooks, with different settings depending on the execution mode: Run, CI, Scan, and/or Monitor.

All our tests are stored in what we call playbooks. You can check our online playbooks in our Github repository for our public marketplace.

Repositories

We provide a comprehensive approach to testing code repositories on Github. Whether your repositories are attached to our CI process or not, you can perform tests on one or all of your repositories to assert their correctness (e.g., ensuring no passwords are stored, that software is being built and executed correctly, and that secure coding standards are followed). You can visualize the results using our Web interface or with our CLI (satori repos).

Monitor

Monitors allow you to automate scheduled checks on systems, ensuring they function correctly over time. You can set your playbooks to run at regular intervals, defined by a time rate (e.g., '5 minutes') Monitors can be viewed via the Web interface, the CLI (satori monitors), or Grafana.

Notifications

We offer a flexible notification system to keep your team updated about the satatus of your projects. We support a variety of communication methods:

  • Slack
  • Discord
  • Email
  • Telegram

You can define these notifications within your dashboard settings and set notification preferences in your project’s satori.yml file. Specify the conditions under which you want to be notified, whether on a failure or a success.

Reports

We process the output to generate reports based on the files that were produced. To help you track changes over time, we can highlight differences between consecutive reports. This feature is useful for identifying whether you are fixing existing bugs or introducing new ones. You can access your reports using on the reports section of the Web or with the CLI: satori reports.

Support

If you need any help, please reach out to us on Discord or via Email