Skip to content

skyvafnir/skyvafnir-network-tester

Repository files navigation

Skývafnir Network Tester

The Skývafnir Network Tester is a simple FastAPI service which makes HTTP requests to configured endpoints.

The purpose of the Skývafnir Network is to validate and report on networking assumptions, such as Network Policy enforcement.

Configuration

The Skývafnir Network Tester reacts to the following Environment Variable:

  • URLS: A comma-separated list of URL's to test. This variable is exposed through the Helm chart's values.yaml

Developing

The repository contains a Makefile with some useful targets. Highlights include:

  1. Build docker image:

    $ make build
  2. Run docker locally:

    $ make run
  3. Apply k8s manifests to working kube context:

    $ make up
    # -- OR - for a namespace other than the default (skyvafnir-network-test)  
    $ make up NAMESPACE=skyvafnir-other-namespace

Releasing

The Skývafnir Network Tester is released via Github Releases / Tags

To release a new version, push a tag - a new version of the service will be built and pushed to Docker Hub via Github Actions - tagged as skyvafnir/skyvafnir-network-tester:[your new tag]

TODO

  • Add support for configuring an EXPECTED result alongside each URL and a message?
  • Database?