System Wide Environment Variables in Bamboo

January 29, 2015

We use Atlassian Bamboo as our build system of choice due to the convenient integration with the rest of our tools. Bamboo works great but has a few quirks. One that we recently ran in to while setting up some unit tests was that the tests were working locally but failing on the build server (a Mac Mini). The failing test was one relating to the ability to properly handle UTF characters in a push notification and was failing with

UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-13: ordinal not in range(128)

Playing around, we were able to find that there was an environment variable being set during interactive login (LANG) that was not being set by the build server’s test runner. A simple method to work around this would be to add it to the configuration for that specific job but since we normally work in UTF, we tried looking for a better way to make the build server look like a normal system.

To add the environment variable system wide, we ended up having to add to the $BAMBOO_HOME/bamboo-agent.sh startup file. This start file sets up the environment that the build slave runs in so we can use it to help standardize our environments across multiple operating systems and user configurations and now we’re back to making sure that users can use all their UTF-enabled Emoji to keep

Joshua Hulst
Joshua Hulst
Co-founder & Managing Partner

Looking for more like this?

Sign up for our monthly newsletter to receive helpful articles, case studies, and stories from our team.

A Study of Human-Centered Design Off Screen - Burning Man Festival
Design

A Study of Human-Centered Design Off Screen - Burning Man Festival

February 13, 2023

Kourtney examines the Burning Man Festival and its fascinating history of human-centered design

Read more
Quickly Prototyping a Ktor HTTP API
Development Web

Quickly Prototyping a Ktor HTTP API

August 18, 2022

Whether it’s needing a quick REST API for a personal project, or quickly prototyping a mockup for a client, I like to look for web server frameworks that help me get up and running with minimal configuration and are easy to use. I recently converted a personal project’s API from an Express web server to a Ktor web server and it felt like a breeze. I’ll share below an example of what I found and how easy it is to get a Ktor server up and running.

Read more
3 tips for navigating tech anxiety as an executive
Business

3 tips for navigating tech anxiety as an executive

March 13, 2024

C-suite leaders feel the pressure to increase the tempo of their digital transformations, but feel anxiety from cybersecurity, artificial intelligence, and challenging economic, global, and political conditions. Discover how to work through this.

Read more
View more articles