The Trento runner is responsible of running the Trento configuration health checks among the installed Trento Agents. It is yet another component in the
Trento project stack, and in order to work, it needs to talk with the Trento Web component. So, this seconds component must be available before starting using the Runner.
In order to start using the Trento Runner, follow the next instructions.
In order to run the Trento Runner, some requirements must be installed. Here the most important ones.
- Golang == 1.16
- Python ~=3.7
- Ansible ~=2.26.0
In order to install all the Python dependencies, run:
pip install -r requirements.dev.txt
How to run
Once all the dependencies are installed and the binary is present (more instructions about how to build a development binary in the next chapters), this is how the Trento Runner works.
First of all, identify the address and port where the Trento Web component is running, as the Runner needs to communicate with him. After that, simply start the runner like:
./trento-runner start --api-host $trento-web-server --api-port $trento-web-server-port # Run ./trento-runner -h to find additional options
The Trento Runner configuration health checks are written in Ansible, and all of them follow a similar approach. Find in this documentation page how to understand and write new checks.
We use GNU Make as a task manager; here are some common targets:
make # clean, test and build everything make clean # removes any build artifact make test # executes all the tests make fmt # fixes code formatting make generate # refresh automatically generated code (e.g. static Go mocks)
Feel free to peek at the Makefile to know more.
Additionally, for the development we use
mockery for the
generate target, which in turn is required for the
You can install it with
go install github.com/vektra/mockery/v2.
Be sure to add the
mockerybinary to your
$PATHenvironment variable so that
makecan find it. That usually comes with configuring
$GOBIN, and adding the latter to your
The Dockerfile will automatically fetch all the required compile-time dependencies to build the binary and finally a container image with the fresh binary in it.
You can build the component like follows:
docker build -t trento-runner .
Copyright 2022 SUSE LLC
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.