Using deployment profiles
What are deployment profiles?
Deployment profiles enable you to customise the deployment process depending on the situation. For example, you may only want to deploy your front-end servers, and leave your databases undisturbed. Rather than manually setting this up each time you need it, you can save it as a profile.
Creating a deployment profile
To create a new deployment profile:
- Log into your Cloud Dashboard and open any of your apps
- Click on the green Deploy button (top right) and select Create New Profile
- Name your Deployment Profile
- Configure it as needed
- Click Save Profile
Using a deployment profile
You can use a deployment profile:
- Via the Dashboard by clicking on Deploy and selecting the profile name
- Via redeployment hooks (see below)
Option for deployments
Build / Publish Services
Under this section, you can see all your services are listed. You can choose one or both of the following operations for each service.
- Build: Builds the code into a docker image.
- Publish: Push the built image to servers.
Deployment strategy
- Parallel Deployment: Complete deployment of all services
- Fast Deployment: Deploys only changes to code and/or images.
Pause Jobs
You can choose to pause all your server and application jobs while you’re deploying. The jobs will be automatically resumed once the deployment is completed.
Upgrades
- Apply Kubernetes upgrades: Apply the latest Kubernetes version - you can choose to specify a version in your Manifest and/or to run a clean installation.
- Apply Security Upgrades: Install the latest Ubuntu security packages immediately (they are applied once a day by default).
- Reboot My Servers If Required - this option will allow your servers to reboot if an upgrade or update process requests it. This will obviously cause downtime during the deployment.
Calling a deployment profile via a redeployment hook
Redeployment hooks allow you to initiate a deployment simply by calling a URI. These hooks can be combined with deployment profiles to completely automate the deployment pipeline. Read our how-to guide on redeployment hooks for details on how to achieve this.