£199.99 £139.99 for one year of Unlimited learning. Offer ends on 28 February 2023 at 23:59 (UTC). T&Cs apply

# Configuring Octopus – Machine Role and Lifecycle

.

In the previous step, you were introduced to the first building block of configuring Octopus, the environment. In this step, you will learn about the concepts of machine role and lifecycle in Octopus.

## Machine Role

A machine role is a tag on a machine. It allows you to group deployment targets with a common tag. You can have more than one tag per target.

Roles are free form, which means you can use whatever values you choose. It is typical to use tags such as WebServer, Database or any other categorisation type to classify machines.

## Lifecycle

Lifecycles define how code can flow between environments. They can be used to define scenarios such as:

• Force a release to be promoted to a given environment after it has been deployed to the previous environment.
• Enable auto-deploy for a given environment; for example, automatically deploy to development after a release is created.

A lifecycle is defined by phases. A phase can have one or more environments, where each environment can be configured to be either an automatic deployment environment or a manual deployment environment. A phase can define the number of environments that must have a release before deployment is allowed for the next phase.

A lifecycle also has an associated retention policy, in which you can set how long or how many releases are kept. Policies can also be defined per phase.

In the following step, you will learn about project in Octopus.