Application Deployment

Application Deployments represent the process of updating your application code. Currently, Bunnyshell only allows deployment from git repositories.

Running an Application Deployment

After you created your Custom Application, go to your Application view, specify the branch or tag you want to deploy and hit the Deploy button. You will be redirected to the Logs page where you can see all actions in real time.

Application Deployment Process

When you deploy an Application on your Server, the following actions are executed:

  1. The Application code is cloned and packaged on Bunnyshell Servers

  2. The Server downloads the application package into a Release Directory

  3. All Application Secrets are retrieved from Key Vault

  4. Shared Directories are copied or linked

  5. Application Configuration Files are created from Secrets

  6. Pre Symlink Deploy Actions are executed

  7. Release directory becomes live

  8. Post Symlink Deploy Actions are executed

  9. Application Deployment Snapshot is created

Deploy finished

In order to fully understand how Application Deployments can be used to build your Application, take a look at the following resources:

Application Deployment Snapshots

When you perform an Application Deployment on Load Balanced or Cluster Servers, a Snapshot is created after the Deployment (when Quick Deployment is not enabled), so that if a Horizontal Scale is performed, the new servers will be created starting from that Snapshot.

Bunnyshell keeps only the last Snapshot created after a Deployment. Snapshots created after Deployments are not visible in the Snapshot View.

Quick Deployments

(Only for Load Balanced and Cluster servers)

Because Application Deployment Snapshots can take several minutes to create, you can enable the Quick Deployment property on the Deployment page. By enabling this feature, the deployment will not create a Deployment Snapshot. This allows you to do consecutive deployments faster when setting up your Application Deploy Steps.

Quick Deployments are only meant for testing. Future Horizontal scalings will not contain the last deployed application version as new servers are created only from Application Deployment Snapshots.

Deployment Strategies

Bunnyshell offers different Deployment Strategies that you can use with your application. Check the documentation for more info: