Welcome to torero!
torero is a simple to use, single binary tool to create, manage, deploy, maintain, and serve automations as services.
Using torero helps the network or devops engineer move executing automations from a single user experience to a team usable framework.
Automations built with many of the popular tools normally require detailed knowledge of how they work and in what environment they work in. With torero, they are transitioned into immutable services with common inputs, allowing operators and external teams to easily view and run them.
This, in turn, lets the engineer focus on writing and managing automations instead of managing and maintaining servers, environments, and creating tooling for others to use the automations.
Currently supported tools include:
torero Environment
torero services pull code from a git repository, run the code in a virtual environment, then package that as a service to be run by users. The following picture depicts a single service in torero.
torero Principles
Transitioning from a simple, single user automation model to a team or business oriented model requires a large shift and increased workload on the engineer. NetDevOps teams must account for and manage new infrastructure and processes based around providing production grade tools for operators who may or may not understand the underlying tools.
torero aims to remove this barrier by providing ephemeral automation containers and a prescriptive process to provide user accessible services.
That's a lot of words. Essentially, torero's goal is to provide:
Managed Run-time Environments
torero provides well-defined, ephemeral run-time environments. This allows the automation to correctly run every time, no matter where and when it's run. Each automation has its own environment and is guaranteed to be the same no matter where the service is deployed.
Service Based Structure
torero creates a framework that puts automations into a service model. By classifying automations into a service, other teams can access and use these automations in a well-defined and structured manner. This allows the NetDevOps to continue to develop the automation as they have been while providing team oriented mechanics. Teams can then access and use the automations without having to understand the underlying requirements to execute the Python/Ansible/OpenTofu instructions.
Scalable Automation
torero is designed for one or one million users. Run torero as a single user to manage automations cleanly, or deploy torero in a client/server model where each server is able to easily replicate services and scale out. As a single binary, torero does not dictate the underlying infrastructure or server size. Easily scale.