1. 29
  1. 8

    I might be wrong, but I think internal tooling at Google predates all this (Mondrian etc). Mondrian is an ancestor of Gerrit, which is the software used by OpenStack to manage that process.

    More recently, Julien Danjou, a lontime OpenStack core member (you might know him for his other Open Source projects: the Awesome WM, Hy, various Python / Debian / Emacs related things…) founded Mergify based on those ideas.

    1. 3

      I was at Microsoft in ’08 and heaps of projects were doing it to then too. I assumed this article was focusing on open source projects.

      1. 2

        Not to pile on, but the bazaar project itself was experimenting with this model in the mid-zeros also. I forget its goofy name, but there was a bot that owned the primary repo, and you sent your patch to it for code review approval before it would merge.

        1. 2

          I can’t edit anymore but I realized today that Julien Danjou didn’t create Hy, he was just a contributor.

        2. 7

          Interesting, that’s a name I’d forgotten. I can’t say why, but my bubble of mostly PHP developers with strong ties to the MySQL folks had absolutely heard about it and were (eagerly or not) awaiting the release. I’d also forgotten that this was right around the time Oracle bought Sun.

          Also maybe misreading it, but the reason most open source projects back then not having CI wasn’t for lack of trying, mostly that Hudson/Jenkins were a complete mess and security nightmare to run on the open internet, also there were hardly (or none) free offerings, so you had to ask someone to sponsor a dev server. In that time we absolutely had CI for everything at work and so those of us who also did open source work would’ve done that there as well.

          The one completely new thing I learned from this post is that the Drizzle team made OpenStack, but for all the functionality it provided I was not very happy with it. I guess it was less the tech itself, but running OpenStack as a small team was hell, especially with their 6 month? release cycles and very painful upgrades.

          1. 2

            so you had to ask someone to sponsor a dev server.

            This 100%. This was all pre-AWS. I remember those days well. Servers were expensive and hard!

            IMHO EC2 was what changed the game.

            1. 1

              Out fo curiosity, What CI did you have at work back then? You criticism of OpenStack is a common thread. I never tried it but what was it that developers didn’t like about it?

              1. 1

                We started with CruiseControl I think, then Hudson and Jenkins, sometimes Bamboo at customers. Here are some slides from a talk I gave in late 2011, that should cover most of the tech.

                The problem with OpenStack for us (not the company mentioned in the talk) was that it was like 90% stable, but if you found an edge case it was really hard to get help. Because most of the users were bigger orgs where they’d probably just tell someone to take a week to fix something and contribute upstream. We ended up with quite a few 3 liner local workaround patches in our deployment. But mostly, the upgrade process wa very tedious and we could never really replicate our issues in a small lab environment, so we could never be sure that upgrading prod would actually work without bigger interruptions. Again, small startup that didn’t just have a second set of identical machines as staging. All the success stories I heard were from people who either had a very boring single-datacenter setup (think proxmox, just on 5 hosts) or people who had dedicated “operations” teams - whereas we were 6 people doing software, hardware, datacenters, ops, oncall for the company. Everything else was kinda manageable, but OpenStack maintenance just leeched off so much time… Also this was a) before containers were really widespread and b) we needed to be local in data centers, so anything cloud wasn’t really helping.

            2. 4

              Pending Head was published in 2007.

              1. 4

                “Not Rocket Science” from Graydon Hoare describes a system from 2001 doing commit gating (the post is published in 2014, but places the system in that year).


                1. 3

                  I thought CruiseControl was the first one. 2010.

                  1. 4

                    CruiseControl came out in 2001. I don’t remember it having native support for gated commits.

                    Regardless, even in open source, projects were doing “gated commits” before Drizzle.

                2. 1

                  As the article gets into the end of the story where the team inspires great new CI best practices, I found myself thinking- wait, can we still refactor MySQL?

                  1. 1

                    I do, but it’s not the same project: http://myst.dustbird.net/drizzle/

                    1. 0

                      You do what?

                      1. 2

                        Drizzle: the most influential software project you’ve (probably) never heard of

                        I did hear of it and linked the relevant project.