I’ve been a Debian user since 2002 and got my first package into Debian in 2006. Though I continued to maintain a couple packages through the years, my open source interests (and career) have expanded significantly so that I now spend much more time with Ubuntu and OpenStack than anything else. Still, I do still host Bay Area Debian events in San Francisco and when I learned that DebConf14 would only be quick plane flight away from home I was eager for the opportunity to attend.
Given my other obligations, I decided to come in halfway through the conference, arriving Wednesday evening. Thursday was particularly interesting to me because they were doing most of the Debian Validation & CI discussions then. Given my day job on the OpenStack Infrastructure team, it seemed to be a great place to meet other folks who are interested in CI and see where our team could support Debian’s initiatives.
First up was the Validation and Continuous Integration BoF led by Neil Williams.
It was interesting to learn the current validation methods being used in Debian, including:
From there talk moved into what kinds of integration tests people wanted, where various ideas were covered, including package sets (collections of related packages) and how to inject “dirty” data into systems to test in more real world like situations. Someone also mentioned doing tests on more real systems rather than in chrooted environments.
Discussion touched upon having a Gerrit-like workflow that had packages submitted for review and testing prior to landing in the archive. This led to my having some interesting conversations with the drivers of Gerrit efforts in Debian after the session (nice to meet you, mika!). There was also discussion about notification to developers when their packages run afoul of the testing infrastructure, either themselves or as part of a dependency chain (who wants notifications? how to make them useful and not overwhelming?).
I’ve uploaded the gobby notes from the session here: validation-bof and the video of the session is available on the meetings-archive.
Next up on the schedule was debci and the Debian Continuous Integration project presented by Antonio Terceiro. He gave a tour of the Debian Continuous Integration system and talked about how packages can take advantage of the system by having their own test suites. He also discussed some about the current architecture for handling tests and optimizations they want to make in the future. Documentation for debci can be found here: ci.debian.net/doc/. Video of the session is also available on the meetings-archive.
The final CI talk I went to of the day was Automated Validation in Debian using LAVA where Neil Williams gave a tour of the expanded LAVA (Linaro Automated Validation Architecture). I heard about it back when it was a more simple ARM-only testing infrastructure, but it’s grown beyond that to now test distribution kernel images, package combinations and installer images and has been encouraging folks to write tests. He also talked about some of the work they’re doing to bring along LAVA demo stations to conferences, nice! Slides from this talk are available on the debconf annex site, here: http://annex.debconf.org/debconf-share/debconf14/slides/lava/
On Friday I also bumped into a testing-related talk by Paul Wise during a series of Live Demos, he showed off check-all-the-things which runs a pile of tools against your project to check… all the things, detecting what it needs to do automatically. Check out the README for rationale, and for a taste of things it checks and future plans, have a peek at some of the data files, like this one.
It’s really exciting to see more effort being spent on testing in Debian, and open source projects in general. This has long been the space of companies doing private, internal testing of open source products they use and reporting results back to projects in the form of patches and bug reports. Having the projects themselves provide QA is a huge step for the maturity of open source, and I believe will lead to even more success for projects as we move into the future.
The rest of DebConf for me was following my more personal interests in Debian. I also have to admit that my lack of involvement lately made me feel like a bit of an outsider and I’m quite shy anyway, so I was thankful to know a few Debian folks who I could hang out with and join for meals.
On Thursday evening I attended A glimpse into a systemd future by Josh Triplett. I haven’t really been keeping up with systemd news or features, so I learned a lot. I have to say, it would be great to see things like session management, screen brightness and other user settings be controlled by something lower level than the desktop environment. Friday I attended Thomas Goirand’s OpenStack update & packaging experience sharing. I’ve been loosely tracking this, but it was good to learn that Jessie will come with Icehouse and that install docs exist for Wheezy (here).
I also attended Outsourcing your webapp maintenance to Debian with Francois Marier. The rationale for his talk was that one should build their application with the mature versions of web frameworks included with Debian in mind, making it so you don’t have the burden of, say, managing Django along with your Django-based app, since Debian handles that. I continue to have mixed feelings when it comes to webapps in the main Debian repository, while some developers who are interested in reducing maintenance burden are ok with using older versions shipped with Debian, most developers I’ve worked with are very much not in this camp and I’m better off trying to support what they want than fighting with them about versions. Then it was off to Docker + Debian = ♥ with Paul Tagliamonte where he talked about some of his best practices for using Docker on Debian and ideas for leveraging it more in development (having multiple versions of services running on one host, exporting docker images to help with replication of tests and development environments).
Friday night Linus Torvalds joined us for a Q&A session. As someone who has put a lot of work into making friendly environments for new open source contributors, I can’t say I’m thrilled with his abrasive conduct in the Linux kernel project. I do worry that he sets a tone that impressionable kernel hackers then go on to emulate, perpetuating the caustic environment that spills out beyond just the kernel, but he has no interest in changing. That aside, it was interesting to hear him talk about other aspects of his work, his thoughts on systemd, a rant about compiling against specific libraries for every distro and versions (companies won’t do it, they’ll just ship their own statically linked ones) and his continued comments in support of Google Chrome.
DebConf wrapped up on Sunday. I spent the morning in one of the HackLabs catching up on some work, and at 1:30 headed up to the Plenary room for the last few talks of the event, starting with a series of lightning talks. A few of the talks stood out for me, including Geoffrey Thomas’ talk on being a bit of an outsider at DebConf and how difficult it is to be running a non-Debian/Linux system at the event. I’ve long been disappointed when people bring along their proprietary OSes to Linux events, but he made good points about people being able to contribute without fully “buying in” to having free software everywhere, including their laptop. He’s right. Margarita Manterola shared some stats from the Mini-DebConf Barcelona which focused on having only female speakers, it was great to hear such positive statistics, particularly since DebConf14 itself had a pretty poor ratio, there were several talks I attended (particularly around CI) where I was the only woman in the room. It was also interesting to learn about safe-rm to save us from ourselves and non-free.org to help make a distinction between what is Debian and what is not.
There was also a great talk by Vagrant Cascadian about his work on packages that he saw needed help but he didn’t necessarily know everything about, and encouraged others to take the same leap to work on things that may be outside their comfort zone. To help he listed several resources people could use to find work in Debian:
- how-can-i-help package
- packaging-tutorial package
- https://wiki.debian.org/Teams
Next up for the afternoon was the Bits from the Release Team where they fleshed out what the next few months leading up to the freeze would look like and sharing the Jessie Freeze Policy.
DebConf wrapped up with a thank you to the volunteers (thank you!) and peek at the next DebConf, to be held in Heidelberg, Germany the 15th-22nd of August 2015.
Then it was off to the airport for me!
The rest of my photos from DebConf14 here: https://www.flickr.com/photos/pleia2/sets/72157646626186269/