Environment

An Environment is a group of applications and databases running within the same namespace. A Project can have multiple Environments.

Create an environment

You can create a new environment by clicking on the Create environment button of the Project page. A modal will appear that will allow you to specify following parameters

  • name: Give a name to your environment that is easily recognizable by anyone from your team. It is good practice to name your environment production, main or master, staging, dev, fix/xxx, feat/xxx, depending on the purpose of your environment.
  • mode: Specify environment mode. See Types of environment section.
  • cluster : Specify the organization cluster on which this new environment will be deployed.

Create an environment

Deployment rules and automatic option.

By default, mode and cluster parameters are set as "automatic".

If Automatic option is specified for one or both of these parameters, deployment rules will automatically select the cluster and the mode you specified in it.

If you chose to specify a cluster and/or a mode during the environment creation, the deploymment rules will also be applied, but the cluster and the mode will be overwritten by the one you just specified.

If you let Automatic option and that no deployment rule catch this new environment, the default mode and cluster will be applied.

Create an environment

When you start using Qovery heavily, your environment list can look like this

List of environments

Edit environment general settings

General settings of an environment can be updated in the settings panel. Your can access to it by clicking on the SETTINGS button.

Environment settings button

On the General tab, you will be able to update your environment name. It will also display the environment mode and the cluster assigned to your environment.

Environment settings button

Preview environment

Use Preview Environment to get early feedback on your application changes.

The purpose of an Environment is to manage a bunch of applications that are working all together. Your production environment runs 24/7, where your other environments may not need to run all day long. E.g. you may need to run Environments to get early feedback on your application changes before the changes are merged into production. This is what we call Preview Environment.

Creating a Preview Environment is similar to create a casual Environment.

Build and Deployment logs

Sometimes, you need to have a closer look on what is going on while an operation (see statuses below) is in progress.

Click on the show logs button to watch your deployment logs in real-time.

Environment deployment logs

Clone environment

Cloning an environment is possible if you want to create an Environment from another one.

Environment actions dropdown

Environment clone is convenient for those use cases:

  • Make a demo without impacting the original Environment.
  • Validating a feature that needs to reflect the original Environment.

Update an Environment

Qovery can detect when a running application is not using the latest version of the code available in its Git repository. To solve this, you can update your applications at environment level:

  1. In the Qovery Console, access your environment.

  2. In the environment overview, click Actions:

    Application

    The Actions menu unfolds.

  3. Select Update All:

    Application

    The Update environment window opens.

  4. Select the application(s) you want to update and click Update:

    Application

    The selected applications are updated based on the latest version of the code available in their Git repositories.

Types of environment

You can define a specific mode for an environment, to label it and share with others in the organization how to use it. Here is the mode you should set depending of the use of your Environment.

environment moderecommended modewhy
productionProduction environment should not be stopped or deleted by anyone.
StagingStaging environment reflects how things work and is sometimes as critical as production for companies.
DevelopmentDeveloment environment is a working environment that could be used to develop and test new features and fixes.

Moreover, Preview environment mode will be automatically set as Preview.

Advanced features

It is possible to go beyond than the basic configuration for an Environment. Here is a list of advanced features available for your environments.

Auto-Deploy environment

Auto-Deploy environment feature allows you to control if your applications should be, by default, automatically updated after receiving new commits. This feature is part of the Environment deployment rules feature.

Auto-delete environment

Auto-delete environment feature allows you to control if your applications should be, by default, automatically deleted after branch merging or deletion. This feature is part of the Environment deployment rules feature.

Environment statuses

An Environment is a machine-state. Here is a list of the different statuses that your Environment can get.

statedescription
READYYour environment has been initialized and is ready to received its first applications
QUEUEDA deployment task has been received and your environment is about deploying it. The task has been queued and can take some times to be processed.
BUILDINGThe build of one or several application(s) of your environment is in progress
BUILD_ERRORSomething goes wrong during the build of your applications or databases
BUILTOne or several application(s) of your environment are built
DEPLOYINGThe deployment of one or several application(s) of your environment is in progress
DEPLOYMENT_ERRORSomething goes wrong during the deployment of your applications or databases
DEPLOYEDOne or several application(s) of your environment are deployed
STOPPINGThe shutdown of one or several application(s) of your environment is in progress
STOP_ERRORSomething goes wrong during the shutdown of your applications or databases
STOPPEDOne or several application(s) of your environment are stopped
DELETINGThe deletion of one or several application(s) of your environment is in progress
DELETE_ERRORSomething goes wrong during the deletion of your applications or databases
DELETEDOne or several application(s) of your environment are deleted
RUNNINGYour applications and databases are running
RUNNING_ERRORSomething goes wrong during the run of your applications

Deployment rules

The Deployment Rules lets you configure the lifecycle of your Environments.

Refer to the Deployment Rule documentation to know more.

Deployments history

You can easily access to the deployments history of your environment by clicking on deployment history button in Action menu.

Deployment history button access

This page allows you to view the history of all previous deployments of your environment and their status. By clicking on the extension button, you will also be able to view the services deployed in the environment and their deployment status.

Deployment history list

Cancel an environment deployment

It may happen that you launch an unwanted deployment (setting error, wrong commit deployed, etc.) and you want to cancel the deployment, rather than waiting for the action to be completed and then performing a rollback, which can be time consuming.

To cancel a deployment, click on Cancel deployment in the Action menu of your environment.

Cancel deployment Action button

Delete an environment

To delete your environment, you must go in the settings > Danger zone and delete your Environment.

Environment danger zone