An environment exists as a child to an application. An environment is a collection of like servers for application deployments. When you deploy an application, you deploy it to an environment which contains 1 or more servers. An environment is specific to an application.
Environments fit into the Software Development Life Cycle (SDLC) process.
Environments belong to applications. Before you can create an environment you must have an application.
To create an Environment, you must first select the application.
This will take you to the application environments, if any exist.
This will take you to the newly created environment where you can adjust environment variables and environment settings.
Note: To rename an environment, delete the existing environment and create a new one with the new name.
Remember, an environment is a child to an application so you must first navigate to the application.
Login to the Pipelines web UI at https://pipelines.puppet.com/login.
In the application list, click the Application name that contains the environment you wish to navigate to.
Click the Environments link.
Click the Environment name.
You have navigated to the environment.
To add a server to an environment the server must first have the Pipelines agent installed.
To add a server to an environment:
You will see a list of servers you installed the Pipelines Agent on.
You have added server(s) to your application environment.
You can also automate the Pipelines agent install, including logging the agent into a specific Pipelines account, automatically joining environment(s), and initiating an automatic initial deploy.
For more information see Pipelines distelli.yml Usage.
Application environments have configurable settings. To get to an application environment settings:
This is the application environment description.
Automatically deploy the active release when a new Server joins this environment
If this feature is checked (enabled), when adding servers to environments via a Pipelines distelli.yml file, Pipelines will initiate a deploy of the latest successful release to the server. This is checked (enabled) by default.
For more information see Pipelines distelli.yml Usage.
Default Stagger Settings
This defines the default stagger settings, on deploy, for this application environment.
- Stagger servers on deployment
This sets the default stagger settings for deployments to this application environment.
- Stagger #N servers at a time with a #T second delay
This will batch deploy to #N servers at a time and wait #T seconds between batch deploys.
- Do not stagger servers on deployment
All servers will be deployed to at the same time. This does not work with Default Terminate Conditions (below).
Default Terminate Conditions
- Automatically abort the deployment if #N servers in the deployment fail.
The full deployment will stop and fail if #N servers fail. This works with stagger settings.
Environment notifications can send notifications for:
If this feature is checked (enabled), when a deployment begins, a notification will be sent to all the notification types that have been added. This is unchecked (disabled) by default.
If this feature is checked (enabled), when a deployment completes, a notification will be sent to all the notification types that have been added. This is unchecked (disabled) by default.
Note:: For more information on notifications, see Notifications.
Note: For more information on webhooks, see Intro to Webhooks.
Applications are deployed to environments. You can see information on the deployments made to a specific environment.
You you will find a list of deployments to the environment. This list will include:
Approvals are environment specific. To enable approvals:
Any deployments to this environment will now require approval before the deployment is executed.
An active release is specific to an application environment.
When a release is successfully deployed to server(s) in an environment, that release becomes the active release.
Note: The active release can also be set with the SetEnvActiveRelease API command.
Each application environment that has a successful deploy will have an active release. If no release has been successfully deployed, an environment will not have an active release.
When new servers join the environment they can be configured to automatically deploy the active release. This is enabled by default. This option can be found in the environment settings.
Here you will find the option:
[x] Automatically deploy the active release when a new Server joins this environment
As noted, this is enabled by default.
Auto deploy to new servers joining this environment will not occur if this option is unchecked.
The App Pipeline automated deployments is unaffected by this setting. This setting is specific to new servers joining environments.
Adding a server to the environment via the Pipelines web UI will prompt you to deploy the active release.
New EC2 instances added to environments during the creation process will auto-deploy the active release.
New servers that use a
distelli.yml file to authenticate and join environments will auto-deploy the active release. For more information on using the distelli.yml, see Automated Install of the Pipelines agent.
You can delete an environment only if it has no servers in it. You should terminate any running apps deployed to the environment before deleting it.
For the environment you wish to delete, click the delete trash can icon on the far right.
Warning: If there are servers still in the environment, you will be given a warning. You must remove all servers in the environment before deleting.
You will be prompted “Are you sure you want to delete environment ENV_NAME?”
You can remove servers from an environment. This will not remove the server from your Pipelines account and you can add it to the same or different environment.
In the list find the server(s) you want to remove and click the checkbox on the right.
Note: You can select multiple servers across multiple pages.