Go Module Cheat Sheet

I've recently had occasion to do a fair amount of work with Go modules and vendoring, and I've had trouble finding simple how-tos for doing some (to me) basic things. It turns out they aren't that complicated, but they do involve multiple systems working together which may not be obvious to Go newbies (like me!). I'm writing this down both for my own reference and in the hopes that maybe it will help someone else get started with this stuff. I make no promises as to the accuracy of these steps, but they did what I needed.

2019 Sucked

Fair warning: This post is a bunch of self-indulgent complaining. I've debated whether to even write it, but I'm hoping maybe it will be cathartic to put in words all of the godawful stuff that happened to me and - more importantly - my loved ones this year. I'm not in a glass-half-full kind of mood though, so I'm not holding my breath.

Oslo in Shanghai

Despite my trepidation about the trip (some of it well-founded!), I made it to Shanghai and back for the Open Infrastructure Summit and Project Teams Gathering. I even managed to get some work done while I was there. :-)

First, I recommend reading the opening of Colleen Murphy's blog post about the event (and the rest of it too, if you have any interest in what Keystone is up to). It does an excellent job of describing the week at a high level. To summarize in my own words, the energy of this event was a little off. Many regular contributors were not present because of the travel situation and there was less engagement from local contributors than I would have hoped for. However, that doesn't mean nothing good came out of it!

In fact, it was a surprisingly active week for Oslo, especially given that only myself and two other cores were there and we had limited discussion within the team. It turns out Oslo was a popular topic of conversation in various Forum sessions, particularly oslo.messaging. This led to some good conversation at the PTG and a proposal for a new Oslo library. Not only were both Oslo summit sessions well attended, but good questions were asked in both so people weren't just there waiting for the next talk. ;-) In fact, I went 10 minutes over time on the project update (oops!), in part because I hadn't really planned time for questions since I've never gotten any in the past. Not complaining though.

Read on for more detail about all of this.

Podman Image Prune Fails on In-Use Image

This is a problem I ran into recently and found only one other discussion of, which turned out to be unrelated to my situation. In short, running podman image prune on my system was failing with the following error message:

Error: failed to prune image: Image used by bbe74e76b2e3850ea27f2498ca4e504d271ac230a00c496a37291f3ee8d8b49c: image is in use by a container

Thing is, I had no containers on the system when this error happened. It seems that the actual problem was that I had built an image using buildah, and podman couldn't handle that.

Excluding Multiple Channels from Custom Highlights in Quassel

One of the things that came out of the PTL tips and tricks discussion in Denver was that some people are not in favor of courtesy ping lists for meeting reminders. The recommended method was to add a custom highlight to your client for "#startmeeting [name]". I did that, but I also decided to take the opportunity to add a custom highlight for "oslo" so I get notified when people are talking about Oslo-related things in other channels.

Denver Summit Recap

Just back from the Denver Summit and PTG, so here are my thoughts about the Summit. I expect to post my PTG wrapup to the openstack-discuss mailing list since it's more developer-specific.

Re-triggering Jenkins Jobs from Github Webhooks

Edit: It turns out this doesn't help as much as I thought. Jenkins ignores duplicate webhook calls, so this is only helpful if your Jenkins missed a call. I'm still searching for a decent way to re-run jobs on a Github repo. :-( I'm leaving the rest of the post in place because it still has some useful information in it.

OpenStack Virtual Baremetal Imported to OpenStack Infra

As foretold in a previous post, OVB has been imported to OpenStack Infra. The repo can now be found at https://git.openstack.org/cgit/openstack/openstack-virtual-baremetal. All future development will happen there so you should update any existing references you may have. In addition, changes will now be proposed via Gerrit instead of Github pull requests. \o/

Debugging a Segfault in oslo.privsep

I recently helped track down a bug exposed by a recent oslo.privsep release that added threading to allow parallel privileged calls. It was a segfault happening in the privsep daemon that was caused by a C call in a privileged Neutron module. This, as you might expect, was a little tricky to debug so I thought I'd document the process for posterity.

OpenStack Virtual Baremetal Master is Now 2.0-dev

As promised in my previous update on OVB, the 2.0-dev branch has been merged to master. If this breaks you, switch to the stable/1.0 branch, which is the same as master was prior to the 2.0-dev merge. Note that this does not mean OVB is officially 2.0 yet. I've found a couple more deprecated things that need to be removed before we declare 2.0. That will likely happen soon though.


Subscribe to BLOG.info(self) RSS