Configuration file
All the app specific configuration you need to run your app with automated deployments for testing.
There needs to be one file in your repo called valist.yml that specifies how to run your application. You can also include Dockerfiles for building static websites or for running your own web server.
valist.yml
The configuration file has a structure that is very similar to that of docker-compose.yml. However, it is more simplified and has more functionality to run and automate the setup of your staging environments efficiently.
The file must be in the root of the code repository's directory.
Here is an example of the configuration of a Nodejs backend using MongoDB. It also includes steps to load data to use for the staging environment. All these configuration options will be described later.
Here is an example of the configuration of a web application that is built with Angular that is build using a custom Dockerfile. The runtime "static" is used so you don't need to worry about including your own web server.
Configuration options
The configuration file has the following sections.
Services – A map of services used to run your application. This may include several backends, databases, etc. The key is the name of the service which is used to identify it and to refer to it.
Steps – An ordered list of steps to run to setup your staging environment. This is often used to fill the database with some data. The output of a step can be stored in a directory which can be used by other steps. Steps provide other steps with data that can be cached so they don't need to be run for every commit.
Service options
Step options
A step executes a command either on an existing service or using its own container. To execute the command on an existing container, use the "service" option. The step can have its own container which is done by either specifying an image or by building a new image using code at the specified path with the specified Dockerfile.
Last updated