Vespene is Released: A Late Blog Post
Vespene was released last Monday, and I somehow noticed that in all of my work in setting up the website, I never published a blog post. In the off chance you haven’t heard me post about it, but *DO* read my blog, here is a copy of the original release announcement, for archival purposes, as well as some quick updates. I’ll post more as interesting things happen, but will mostly share news on the forum. Expect some occasional technical topics here as well.
Today Vespene is released!
Vespene is a build (CI/CD) and task execution system, whose code is currently about 3 months old. There’s a bit less than 5000 lines of code, but due to some solid architecture choices, great frameworks like Django, and a lack of legacy requirements, a lot of heavy lifting is done from those lines!
What can it do?
Vespene supports manual builds, webhooks, and scheduled builds. Vespene can enable self-service deployment through custom
GUI launch pages for particular jobs. It has deployment pipelines. There’s build status and history. Access control is logical by default but also highly customizable. You can get going quickly too, as Vespene can import projects from github organizations through .vespene files (or even without them!).
Adding to the list of features, there’s SSH integration and secret management, and an awesome Jinja2-based templating engine to help encourage build reuse in the era of massively drifting microservices environments. If you want a secure environment, Vespene can lock down builds with sudo or docker containers.
Vespene is fully distributed and horizontally scalable, both at the worker (builder) level and front end web nodes. Upgrades and backups are trivial. Nearly everything in Vespene is also exceptionally pluggable. There’s also a clean and organized UI. A REST API and CLI will likely come in the very near future.
I hope you find Vespene interesting, but more so, I want your feedback and to see where we can take it together.
Let’s work together to design and build the system we all want to use. It may not be 100% there today, but we’ll incorporate ideas from everywhere
and things will continue to evolve quickly. All ideas are welcome and the sky should be the limit. Where we disagree, we can make things pluggable
to enable lots of interesting surprises.
Vespene is usable today and always aims to always be usable right from a checkout, though we’ll aim for a first major release in early January.
To learn more check out the following resources:
Hop over to the documentation for install instructions, including Mac developer setups, and scripts for CentOS 7 and Ubuntu Bionic Beaver.
Thanks for waiting and I hope you enjoy Vespene!
So, it’s about a week later….
I’ve been amazingly happy with everything that has happened so far. We’ve had about 20 people get a pull request in, and the installer has been expanded to include openSUSE and Arch Linux beyond the initial support for CentOS and Ubuntu LTS distros, with strong interest in also seeing FreeBSD and Debian (and maybe those will come soon!)
There’s been some great feedback about wanting the already declarative import process for .vespene files to be more declarative, and I’ve built that. There was a great discussion about dynamic workers — and there’s now an autoscaler!
People have expressed interest in UI improvements, and there’s even been a few UI patches already.
I’ve fixed a few minor things I left out that I shouldn’t — like support for git submodules. So far the whole ORM model has been really easy to extend.
Lots of people submitted some documentation topics, and there have been a lot of improvements made to the installer with more to come.
In other news, this has been my first project trying out Discourse instead of using a regular mailing list, and so far, it’s been a great forum with a really nice mobile view.
Naturally, a project that is a full web stack is going to be a bit harder to contribute to than one that is mostly a collection of scripts (ansible), but I’m really happy with where it is going so far and there seems to be a lot of interest in it.
Things have been international from the outset — Once again Europe (and particularly Russia and the Ukraine this time, as it’s normally Belgium and The Netherlands and Germany for me) takes the lead with early interest in projects! There’s also been good interest from France and Brazil. It’s been really fun to watch all the google maps traffic.
Anyway, we have a lot of neat things to do, and I suspect by the time January rolls around (the planned release date) Vespene will have even more kinds of amazing stuff.
If you are interested, check out the docs and stop by the forum. We’d be glad to have you!