Knowledge Base: Deployment and Releases

This is probably the number one requested feature in Beanstalk, and it’s here for all paid accounts! Right now deployment tools are available to account admins and owners only.

What is it?

Releases allow you to specify S/FTP servers for your repository where you can manually or automatically upload your repository files to a server. This way, you can make some changes and Beanstalk will take care of the annoying details of getting it out to the public or your team.

How does it work?

The deployment tool is more like a synchronization rather than an upload. To maintain bandwidth and speed, Beanstalk will sync your files based on the revision that you choose to deploy. Deployments are published in several ways.

  1. Automatically on each commit (if specified)
  2. By going to the Releases tab (paid accounts only) and clicking deploy (all files in your repo from that revision are included)
  3. By using the tags [deploy:development], [deploy:staging], or [deploy:production] in your commit message.

Getting started

To deploy your files, you first need to setup the FTP servers. You will see a new “Releases” tab in the repository where you can setup your deployment servers. The first step is to choose the type of server.

  1. Development: Usually the place where it is okay to break things and have unstable versions.
  2. Staging: The test server where you test new releases before it goes live.
  3. Production: The live site. This should be the most stable version of your site or app.

For each server, you can setup either manual (requires your action) or automatic (changes are deployed on each commit). You will also set the source directory in your repository, which tells Beanstalk which files to deploy.

2565125900_784cd36600.jpg

Next, you need to specify where the files will be deployed. You can insert an s/FTP server, the destination directory, and the username/password pair. Additionally, you can specify custom ports by clicking on “more options” below.

2564300989_0f0349f4b4.jpg

Tracking releases

Each deployment will create a set of release notes. These release notes will display what has changed since the last release to keep your team or clients in the loop. A special print style sheet was created for printing the release notes.

release-notes.png

Troubleshooting and tips

  • If you have a firewall setup, please allow access for the IPs 204.232.182.88, 207.97.198.76, 207.97.198.68, 207.97.198.69, 207.97.198.70, 207.97.198.7, 207.97.198.72, 207.97.198.73.
  • To diagnose issues, any failed connections will trigger our “Incidents” tool to explain the problem.