Basic terms and concepts

API URL

The API URL is created by BiFrost to expose the endpoints from all of your app’s modules under a single URL. If you include BiFrost in your app, then BiFrost will run a discovery process to combine the endpoints from all of your modules into a single API.

App

In the context of Walhall, an app is a microservice architecture that has been deployed to an environment in Kubernetes. The microservices are derived from modules, or repositories that have been linked to Walhall from your GitHub organization. The core feature of Walhall is creating and deploying apps based on your modules.

BiFrost

BiFrost is an open-source API gateway and core authentication layer. Walhall integrates BiFrost to allow you to combine your modules into a single API and handle authentication out of the box; however, there are a few requirements that your modules must fulfill in order to use it. Click here for instructions on how to incorporate it into your app.

Blueprint

A blueprint is a boilerplate module that is pre-configured to deploy via Walhall. You can add blueprints to your app during the creation process and customize the code to do whatever you need—no extra configuration is necessary.

Deploy ready

“Deploy ready” refers to whether or not a given module can be deployed with your app. In order to be “deploy ready,” a module must satisfy these conditions:

  • It must implement the Walhall CI/CD pipeline in the form of a .drone.yml file. You can find a template here.
  • It must include a Dockerfile.
  • Its GitHub repository must include a version tag that uses the following syntax: X.X.X

Deployment environment

A deployment environment is a designated space on Walhall’s Kubernetes infrastructure where your app runs. You can create and deploy multiple environments to run multiple versions of your app at the same time. At this time, you can create up to three environments per app.

Module

A module is a code repository that has been linked to Walhall from your GitHub organization. Modules can be added to apps and deployed together to form microservice architectures.

Org admin

An org admin is a GitHub user with administrative privileges to a given organization that’s been linked with Walhall.

Org user

An org user is a GitHub user that is part of an organization that’s been linked with Walhall.