Archives for Peter Leschev

Announcing an open source Puppet Module for Sonatype Nexus

TL;DR We've open-sourced a Puppet module to help manage the configuration of Sonatype Nexus instances. Check it out! The Build Engineering team at Atlassian has been running Sonatype Nexus instances for a few years now. We use Nexus for storing our public and private artifacts on https://maven.atlassian.com/ (which receives 2.6 million requests/day), publishing to maven central and the various proxies that we have spread out across the world to support our build grid, and our global development

Continue reading »

In the process of digging around investigating a performance issue with our internal build agents, I discovered rogue fluxbox processes taking 100% CPU on a large number of our build agents, here's a write up of how I found them. On a particular host you can get a vague idea of how busy a host is by the load average, for example: This doesn't tell you much. How has the value changed over time? We use collectd to collect system statistics from all our Build Engineering systems (physical and

Continue reading »

I'm excited! Back when I talked about Satisfying the Customers of BuildEng team I talked about ensuring that we communicate to our customers that we've seen the issues that they have created by Triaging those issues quickly. This is really important, it provides our customers quick feedback on the issue that they have raised so they don't feel that it has fallen into a dark hole that no one is watching. During the triage process we set their expectations on whether the team has committed to

Continue reading »

As an internal service group, Build Engineering, we support many different products with numerous agile development teams. We have a large set of requests that come through from infrastructure to releasing our products. It difficult to communicate to our 'customers' the priority of their issue and when their issue will be worked on. Satisfying our customers means that we needed to manage expectations, provide clear communication, and show the flow of progress from creation to completion. How can

Continue reading »

Faster Bamboo builds with the Agent Smith Wallboard

With the JIRA Bugfix effort using Kanban, we track a metric called Lead Time, which in our case is the period of time between the moment Atlassian decides to implement a fix (or feature) to the time it is made available to the customer. Adapting Kaizen, the culture of continous improvement, we look for waste and strive to eliminate it with the goal of reducing this Lead Time. One area that was highlighted for improvement was the Continuous Integration feedback loop. A metric that we found useful

Continue reading »

Printing Post-it notes of JIRA Issues

I previously blogged about how I used a personal Kanban board to keep track of issues that could potentially be fixed during bugfix iterations. My bugfix tour of duty is coming to a close with the release of JIRA 4.3.4, here's how the board of issues looked at the end of my final release:                         I originally started by using Post-it notes with a handwritten issue key:           These

Continue reading »