Web Development

You Should Be Using BitBucket Pipelines

August 30, 2017

Commonly, developer workflows include pushing code to BitBucket. From there, you run processes like testing, updating a staging server, and generating documentation. All of these processes can become very repetitive. Thankfully, they can also be automated. That’s where Bitbucket Pipelines comes in.

It’s simple – you only have to create a set of scripts that run right after you make a push to Bitbucket.

How Does a BitBucket Pipeline Work?

Here’s a quick summary:

1) A Linux virtual machine is created with a Docker configuration

2) Your source code is copied to the virtual machine

3) Your scripts are run from a bitbucket-pipelines.yml file

Here is a very basic example of the bitbucket-pipelines.yml file located in the root of the repository:

Pipelines displays the result of running those scripts, which is particularly great because of how easy it is to monitor success.

Here is an example of a successful end-to-end test process:

And, here is a failure:

Easy-to-read visual displays help us make sure that our processes are on the right track. Delivery progress can be monitored at a glance, so that we can quickly address errors as they pop up.

Any Command Line Can Be Used in Pipelines

Here at Fresh, we use Pipelines to automate processes like:

  • Push build to Staging and Production Servers
  • Notify Slack or Email about test results

You can also run processes that require authentication against third-party services. For those cases, environmental variables are stored securely on BitBucket settings, keeping your repository free of hard-coded usernames and passwords.

Is it Worth the Effort?

Definitely!!!

Using Pipelines will save you hundreds of hours of time. It keeps developers synchronized about test results, documentation, and latest builds. Plus, you can integrate it with many other command line tools to improve productivity.

We highly recommend using BitBucket Pipelines in your workflow.

Xavier Reyes

Full-Stack Developer

You might also like...

25

Apr.

How to Create a Fuzzy Search-as-You-Type Feature with Elasticsearch and Django

Tutorial: How to Create a Fuzzy Search-as-you-type Feature with Elasticsearch and Django Recently, I had to figure out how to implement a fuzzy search-as-you-type feature for one of our Django web APIs. I couldn’t find any comprehensive tutorial on how to build this specific feature, so I decided to combine multiple sources and document the … Continued

12

Apr.

6 Things to Look For in a Web Hosting Provider

People often ask us who we recommend for web hosting. Different needs dictate different solutions but there are some universal requirements which almost always need to be met. We have client sites running on many different hosting providers but rather than discuss specific companies let’s go over what we recommend looking for in a web … Continued

26

Mar.

Why HTTPS Matters

What’s HTTPS? Hypertext Transfer Protocol (HTTP) is the underlying data communication system for the Internet. A simple example of the protocol is when you landed on this page, your browser (e.g. Chrome, Safari, etc.) made an HTTP request to the computer that’s hosting this website, and then the hosting computer sent back an HTTP response … Continued