Testground
GitHubGo SDKInfra
master
master
  • README
  • Table of contents
    • What is Testground?
      • Community
    • Concepts and architecture
      • Test plans and test cases
      • Daemon and client
      • Synchronization service
      • Networking
      • Sidecar
      • Builders
      • Runners
      • Runtime environment (runenv)
      • Client-Server communication
    • Getting started
    • Writing test plans
      • Quick start
      • Understanding the test plan manifest
      • Parameters and test cases
      • Keeping instances in sync
      • Communication between instances
      • Observability, assets and metrics
    • Managing test plans
    • Running test plans
    • Traffic shaping
    • Analyzing test run results
      • Capturing profiles
    • Debugging test plans
    • Docker Settings
    • Featured projects
  • Runner library
    • local:exec
    • local:docker
      • System overview
      • Runner flags
      • Troubleshooting
    • cluster:k8s
      • System overview
      • How to create a Kubernetes cluster for Testground
      • Monitoring and Observability
      • Understanding Testground performance on Kubernetes
      • Troubleshooting
  • Builder Library
    • docker:go
    • exec:go
    • docker:generic
Powered by GitBook
On this page
  • Background
  • Dependencies
  • Testground-supplied containers
  • Troubleshooting
  1. Runner library

local:exec

Background

Using the local:exec runner enables you to test distributed/p2p software as quickly as possible. When using this runner, plans are compiled and executed as a standard process.

This runner is the only one which does not use a sidecar to modify the networking. Processes run un-contained. Any files created or network calls performed during the test will be visible on the host system.

Dependencies

Although the plan binaries are compiled for the host system, all the auxiliary infrastructure is provided by Docker. This configuration enables easy installation of the sync service and monitoring infrastructure while maintaining quick build-execute iteration cycle which is the advantage of this runner.

  • A laptop or desktop with reasonable hardware specs. If your computer is newer than 5 or 6 years old, it will probably be just fine. To be able run simulations of a reasonable size, we recommend at least the following:

    • 8GB memory

    • 50GB available storage

  • The following software setup is required

    • docker daemon

    • a non-root account with write access to the docker socket.

Testground-supplied containers

When Testground runs its first plan, several additional containers will be started. Here is an overview of everything Testground adds to your system

  • Docker containers:

    • redis

      • This is the backend database of the Testground sync service.

    • grafana

      • Visualisation software that Testground uses for its dashboards.

    • influxdb

      • Time-series database that Testground uses for various diagnostics and events.

Troubleshooting

Many of the infrastructure pieces provided by Testground are common with the local:docker runner, therefore the troubleshooting steps of the local:docker runner are applicable here as well.

PreviousRunner libraryNextlocal:docker

Last updated 5 years ago