Deployment pipeline

Buddy lets you build a pipeline that will deploy your application to the selected server or cloud platform. The configuration is straightforward and takes only a couple of minutes.

First, you need to add a new project and synchronize it with your repository. You can select from GitHub, Bitbucket or GitLab, or hook up any custom Git repo:

Project configurationProject configuration

The next step is adding a pipeline and specifying which branch should be deployed and when. Each pipeline can be triggered in 3 different ways:

  • Manually – if you choose this option, the deployment will be made on demand by clicking the Run button in Buddy. This mode is most frequently used for deploying to production servers.
  • On events – selecting this option will cause the pipeline to run whenever a commit is pushed to the chosen branch, or a branch is created/deleted. You can use this mode, for example, when you want to deploy changes to your development server after making a push to the dev branch.
  • On schedule – this mode allows you to deploy changes to your server at a certain time of the day. For example, you can schedule the pipeline to deploy changes to the staging server every afternoon, so you can run integration tests:

Pipeline configurationPipeline configuration

A deployment pipeline is usually assigned to a specific branch. Here you can see 3 pipelines for different types of servers, each run in a different mode:

Pipelines with different trigger modesPipelines with different trigger modes

Deployment actions

With the pipeline details configured, you can add actions to your pipeline to define the deployment process. For example, you can upload the files to the server first and then run an SSH action that will migrate your databases and restart the application:

Pipeline examplePipeline example

Buddy lets you test your application just before the deployment to ensure its flawless release to the server:

Test and deploy pipelineTest and deploy pipeline

The service covers all popular deployment protocols and destinations: from FTP/SFTP to Amazon, Google, Azure, to Kubernetes clusters and serverless deployments. It is very fast, too – most of the delivery actions are based on changesets, which means only changed files are deployed (there's no need to upload the whole repository on every execution).

Warning
If you didn't find an action that covers your deployment workflow, you can use a custom script and run it with the 'Custom build' action, or request a new integration at support@buddy.works.

Deployment rollback

If something goes wrong during the deployment, or you accidentally deploy a wrong instance of your application, Buddy lets you easily restore the previous version on the server.

To do that, click Run and select the revision that you want to deploy. Buddy will automatically remove incorrect files from the server and re-upload the proper version of your app from the repository:

Commit rollbackCommit rollback

Another way is to open pipeline's executions history and click the last execution with the correct version – you will find the Rollback to this revision option in the hamburger menu:

Revision rollbackRevision rollback

Recommended
Last update:
Sep 17, 2024