Flock report 2019

25. 08. 2019 | Jakub Kadlčík | EN copr fedora flock report modularity

This year’s Flock is inevitably over, so the right thing to do now is to capture its best moments. This time, the conference took place in the unbelievably beautiful city of Budapest, starting from Thursday 8th of August and carried on till the end of the week. I would like to thank all organizers, sponsors, volunteers and the community for putting the effort and resources into hosting such a great conference and also my employer for giving me an opportunity to attend. It was a wild ride!

First-class entertainment

I traveled with the majority of Red Hatters from Brno by a private bus and that was where all the fun began. Our four-hour ride was thoroughly supervised by Miroslav Suchý as a bus captain. And by that, I mean entertaining us with his witty standup comedy.

I was in charge of ordering the autobus.

For the whole time, it was perfectly taken care of us. On Wednesday, there was no official program so we could rest after the drive and explore the city by ourselves, but on the following evenings, we cruised the river on a boat, had a city tour with a guide, candy swap, board games, non-English events, and slideshow karaoke.

For me, this was the first time of staying in a hotel right in the venue and it was incredibly comfortable. As a hefty guy involved in strength sports, I need to eat a lot. And the food situation was fantastic. Breakfast and lunch were served in the form of all you can eat buffet, and we also had countless coffee breaks with an endless supply of snacks and a diet coke.

Now, it sounds like a sightseeing trip full of fine dining, but in fact, this was Flock To Fedora 2019! I just wanted to start this blog post with all the extras. Now, let’s dive into the important things.

This year, we had multiple panels focused mainly on packaging, automation, containers, python, modularity and more. Talks were probably evenly distributed throughout more areas, it’s just that I am mostly interested in these.

Packaging and Automation

The packaging (and automation) panel started with Neal Gompa and Igor Gnatenko talking about saving packagers’ time by automating the rebuild of packages when their dependency changes, and also not requiring them to write changelog and manage release number manually, but rather generate them from git. The talk was called Improving Packaging Experience with Automation.

Then I’ve attended the Bring your upstream releases to Fedora Rawhide in one step led by Tomáš Tomeček. This talk was about the packit tool and the packit service. He presented how to automatically build an RPM package in Copr for every pull request in your Git Hub project.

Then Michal Novotný shared his vision of the rpkg being the go-to tool for working with DistGit, unified across the whole realm of the RPM distributions. He named his talk rpkg, the next generation packaging utility — call for feedback.

There were many more, but unfortunately, I couldn’t be at ten places at the same time.

Containers

My next primary focus was on containers because there is a lot of containers-related work ahead of me in the upcoming months. One of the technologies that I barely knew about was podman. However, thanks to the Valentin Rothberg who deputized Dan Walsh in a talk Replacing Docker with Podman and then workshop Containers Birds-of-a-Feather where I got answered my specific questions about migrating from docker-compose, I am now pretty confident about migrating to podman.

Another very interesting and lifesaving lecture was shortly named communishift: A OpenShift cluster for Fedora community managed applications and led by Kevin Fenzi. The fedora infrastructure has launched a community OpenShift for hosting and self-managing Fedora-related services. The point is to reduce the overload of the infra team.

I didn’t know very much about Fedora CoreOS and its goal sounded very promising, so I’ve attended a lecture from lovely Sinny Kumari and Jakub Cajka to discover more.

The containers panel was probably the most beneficial for me, too bad I couldn’t catch more talks.

Dan Walsh giving his talk from across the world

Modularity

The last year I went to literally everything modularity-related, so this time I picked just one workshop - Modularity & packager experience birds-of-a-feather. And I couldn’t pick better as this was one of the most constructive discussions I’ve ever been part of (on such event). I believe that this was thanks to Adam Šamalík’s moderation of the whole workshop. In the beginning, the audience shouted every possible topic that they wanted to discuss, then all of us voted to figure out what were the most interesting topics for most of us. We split the workshop into several fifteen minutes blocks dedicated one for each topic. We strictly complied this rule and it paid off.

Experts in this area such as Stephen Gallagher, Langdon White, Petr Šabata and Adam Samalik underwent a trial by fire, and in my eyes, succeeded. Personally, I spent too much time on modularity support for Copr and it turned out, that Neal Gompa did the same for OBS. Basically, Vít Ondruch captured all of our issues with a simple quote - “MBS is a blackbox”. Which is accurate because nobody of us really knows what actions and in what order the MBS does during the build process. We demanded reverse engineering of the MBS build process and properly documenting it. Furthermore, I’ve expressed the fact, that running an own MBS instance for each third-party build system is a bullsh*t and proposed to extract its functionality into a reusable library or a series of smaller tools.

We have discussed many more topics, but I didn’t really take many notes about those, that didn’t concern me.

Missed talks

Since the conference proceeded in three to four panels in parallel and we haven’t discovered time travel yet, there is an imminent probability of missing some lectures. Personally, I regret missing NeuroFedora: FOSS and open (neuro)science, State of Fedora Security, Silverblue: On the way to the future of Fedora Workstation, and Future of release-monitoring.org.

I am looking forward to seeing the recordings.

Awesome people

Matthew Miller stated this powerful message “Fedora is not an operating system. We are Fedora”. And I think the community is the main reason to attend a conference like Flock. It was great to see all the familiar faces and meet Kevin Fenzi, Langdon White, Neal Gompa, Adam Samalik, Matthew Miller again, and make new friendships with Luis Enrique Bazán De León, Renata Gegaj, Aniket Pradhan (aka MeWj0r) and many others. Hopefully, we will meet again.

Both the group photo and video were created by talented Maria Leandro. See her photo gallery from Flock 2019

Next steps

During the conference, we settled on many things regarding Copr and its following development. We would like to establish a new CI to periodically deploy containers with the latest versions of Copr packages in the communishift and automatically run our sanity tests suite against it, to make sure that our development version works as expected.

Also, we would like to migrate Copr production instances from Fedora OpenStack to OpenShift. To do that, we need to improve our development stack to be production-ready. That will involve separating it into more smaller containers providing just one service per container (i.e. getting rid of supervisord), and replacing docker-compose with something suitable for both the local development but also production deployment.

Lastly, since Fedora 31, there is support for automatically generated BuildRequires for python packages. We are definitely going to experiment with that on Copr packages.