Loading…
Flock 2019 has ended
This is a draft schedule! Please create a personal schedule noting which sessions you will attend. We will use this information to create a final overall schedule.

Sign up or log in to bookmark your favorites and sync them to your phone or calendar.

Packaging and Automation [clear filter]
Thursday, August 8
 

13:00 CEST

Improving Packaging Experience with Automation

We are working on a Fedora Objective about saving packagers’ time with an automation related to building of their packages. That includes but not limited to automatic rebuild of packages on dependency changes, removing manual work on writing changelog both in spec and later in git and doing release bumps on rebuilds.
The talk will be split into 3 smaller parts:
  • Presenting Objective to the audience
  • Comparing workflow of Fedora packagers with other distributions with demo
  • Discussing the objective with audience and asking for a feedback
This talk is about presenting our ideas of how to improve the quality of life for packagers (the lifeblood of our distribution) and getting feedback (in a panel-ish form) about how to further refine and improve the packaging and maintenance experience. This is becoming increasingly important as the way we deliver software is increasing in complexity with things like modules and flatpaks and whatnot.

Speakers
avatar for Neal Gompa

Neal Gompa

DevOps Engineer II, Datto, Inc.
DevOps Engineer by day, Linux systems aficionado and developer by night! Neal is a developer and contributor in Fedora, Mageia, and openSUSE, focusing primarily on the base Linux system components, such as package and software management. He's a big believer in "upstream first", which... Read More →


Thursday August 8, 2019 13:00 - 13:50 CEST
Helia (360m² / 150 people) Budapest, Kárpát utca 62-64, 1133 Hungary

14:30 CEST

Mass Rebuild and Mass Branching of modules in Fedora
Mass rebuild and mass branching modules are handled differently when compared to packages. For modules these processes totally depend on their build time and runtime requirements. This is very important for the module maintainers to understand to be prepared for mass rebuilds and mass branching.

Speakers

Thursday August 8, 2019 14:30 - 14:55 CEST
Mercure (140m² / 40 people)

15:30 CEST

Fedora CI and rpminspect
This talk will discuss the Fedora CI project and use the rpminspect tool as an example.  It will be about 25% on Fedora CI and 75% on rpminspect, but that's not a hard and fast rule.  rpminspect is a new tool being developed to help ensure packaging policy and build reliability.  I call rpminspect a "build deviation analysis tool".  It checks for policy compliance as well as things like ABI differences.   Did new symbols appear in shared libraries?  Did any disappear?  Do we have all of the hardened options enabled for the build?  Are there any unapproved setuid executables?  And so on.  rpminspect can check a single build or compare one build to another.  Developers can run it locally or it can run via Fedora CI and report results that way.

https://github.com/dcantrell/rpminspect

Package maintainers and developers are the main audience. Anyone interested in helping improve the way we keep Fedora reliable and stable. rpminspect is open for contributions and part of the talk will involve explaining how to contribute.

Speakers
avatar for David Cantrell

David Cantrell

Senior Software Engineer, Red Hat
I am senior software engineer on the OSCI team within Red Hat's platform engineering department. I am working to build developer tools and system that allow for faster development and more reliable builds.I have been working on some aspect of Linux systems since 1998. My interests... Read More →
avatar for Tim Flink

Tim Flink

Tim works for Red Hat as part of Fedora QE and focuses on making automation resources more accessible for Fedora contributers. Outside of Fedora, he is a co-organizer of the Python user group in Colorado Springs and volunteers at a local dog rescue.


Thursday August 8, 2019 15:30 - 16:20 CEST
Orion (102m² / 40 people) Budapest, Kárpát utca 62-64, 1133 Hungary

15:30 CEST

Pagure CI based on Zuul
The OpenStack Foundation is handling its CI with a powerful stack, based on community-developed tools: Zuul (job orchestration and code gating) and Nodepool (job resources lifecycle management).

This stack provides many interesting features for software development and CI:
  • Event-driven pipelines based on Code-Review or Pull-Request workflow: jobs can be triggered automatically when a PR is submitted, changed, approved, or when the repository is tagged.
  • CI-as-code: jobs are defined as YAML + Ansible playbooks, pipeline definitions as YAML files stored within the project's code repository
  • Support for jobs inheritance, jobs dependencies, jobs chaining (artifacts sharing)
  • Speculative testing of new jobs before merging: jobs will be run as they are submitted to make sure they behave as expected
  • Cross repositories dependencies: a jobs' workspace can include unmerged patches from other projects if specified
  • Parallel job run, only capped by resources available or predefined quotas
  • Automated jobs resources lifecycle management: resources like VMs or containers needed by a given job can be defined in-repository, spawned on demand at a job's start, and destroyed when the job is finished, or held for debugging
  • Well-defined, reproducible job environments to eliminate flakiness
  • Speculative testing before merging (gating): if several patches are about to land at the same time, they are tested on the repository's future state.
Until now, Zuul was only able to listen to Gerrit or Github events, A new driver [1] allows Zuul to interface with Pagure as well. Pagure, Zuul and Nodepool could therefore combine into a very efficient CI/CD stack.
Resources:
During this session I want to explain:
  • What Zuul and Nodepool are: overview of their main concepts and features
  • How Zuul interfaces with Pagure thanks to the new driver
  • How Zuul can be set up to build RPMs and run validation jobs on Pull Request events on Pagure
  • How the Fedora Project's CI could benefit from using Zuul

Speakers

Thursday August 8, 2019 15:30 - 16:20 CEST
Mercure (140m² / 40 people)

16:30 CEST

Future of release-monitoring.org
This talk will take you to amazing world of release-monitoring.org and shows you the future of this world. It will be in the same style as release-monitoring.org blog, so you can look forward to see some magic.

This talk is aimed on everybody, who wants to know more about release-monitoring.org. The audience should be familiar with the application itself.

Speakers
avatar for Michal Konečný

Michal Konečný

Software Engineer, Red Hat


Thursday August 8, 2019 16:30 - 16:55 CEST
Mercure (140m² / 40 people)

16:30 CEST

Tales from the crypt: packaging horrors
I'm a long-time Fedora user (since the beginning) and contributor (since 2006). I'm a proven packager, sponsor and I served on the Fedora Packaging Committee for many years.

This talk will cover examples of the most egregious violations of best packaging practices I encountered in the wild personally. I will present real-life spec file excerpts, show which packaging guidelines are violated and explain how to do things properly. The audience is encouraged to bring their own examples.

Speakers
avatar for Dominik Mierzejewski

Dominik Mierzejewski

Cloud and Automation Engineer, Citibank Europe plc
@work: OpenShift platform engineer.@Fedora: Package maintainer. FPC member, provenpackager and sponsor.



Thursday August 8, 2019 16:30 - 16:55 CEST
Panorama (140m² / 40 people) Budapest, Kárpát utca 62-64, 1133 Hungary
 
Friday, August 9
 

10:30 CEST

Let's add Fedora multiarch containers to your CI

An introduction about multiarch project [1] to enable users to build, run and test Fedora multi arch (aarch64, 390x and etc) containers on your host architecture x86_64 easily.

Multiarch project is a collection of tools to emulate different architecture containers by QEMU and binfmt_misc and the compatible container images.

I also compare it with similar technologies docker buildx and podman buildx being developed by buildash and podman team.

[1] https://github.com/multiarch/qemu-user-static

Audience:
  • People who want to add Fedora multiarch test cases to your upstream project's CI.
  • People who want to run a interactive shell in multi architecture containers on your host architecture x86_64.
When: Friday August 9, 2019, 10:30 - 10:55
Where: the room "Panorama" (The room next to the common food space at 1st floor)
    The Danubius Hotel HELIA in Budapest, Hungary, at Flock Budapest 2019

Table of contents:

* Fedora and Upstream - Past and Present
* CPU Architecture Kinds
* Tools for multiarch - Today's topics
* QEMU and binfmt_misc - on News
* 5 steps - to add Fedora multiarch containers to upstream CI
  * 1. qemu-$arch-static - An interpreter
  * 2. binfmt_misc - A kernel feature for binary format
  * 3. qemu-user-static RPM on Fedora
  * 4. qemu-user-static RPM and container
  * 5. multiarch/qemu-user-static image and CI
* Note A: ARM supported CI services
* Note B: A Dockerfile to multi-arch images
  {(podman),docker,docker buildx} build --platform

Speakers
avatar for Jun Aruga

Jun Aruga

I live in Czech Republic. I am originally from Japan. I love bio-science and multi-architecture technology to enable use of a variety of devices.



Friday August 9, 2019 10:30 - 10:55 CEST
Panorama (140m² / 40 people) Budapest, Kárpát utca 62-64, 1133 Hungary

10:30 CEST

The future of automated build checks in Fedora CI

While Taskotron is due to be decommissioned, we still need a way to run the checks that it is currently responsible for running (rpmdeplint, rpmgrill, abicheck, python-versions etc.) and Fedora CI is a fitting place for those checks to land.

This talk will cover changes coming to how non-build-specific checks are run against builds in Fedora and the existing plans for how that will look in the future.


Speakers
avatar for David Cantrell

David Cantrell

Senior Software Engineer, Red Hat
I am senior software engineer on the OSCI team within Red Hat's platform engineering department. I am working to build developer tools and system that allow for faster development and more reliable builds.I have been working on some aspect of Linux systems since 1998. My interests... Read More →
avatar for Tim Flink

Tim Flink

Tim works for Red Hat as part of Fedora QE and focuses on making automation resources more accessible for Fedora contributers. Outside of Fedora, he is a co-organizer of the Python user group in Colorado Springs and volunteers at a local dog rescue.



Friday August 9, 2019 10:30 - 10:55 CEST
Orion (102m² / 40 people) Budapest, Kárpát utca 62-64, 1133 Hungary

10:30 CEST

What can we do for cross-distro collaboration in packaging?
Packages in each distributions are quite different. Why do we actually spend maintainers’ time on dealing with these things? I will go through differences in each ecosystem (Python, Ruby, Rust, …) between Fedora and other closest distributions and then we will discuss and try to find out what ideas are good, bad and figure out plan how to get to the future with same packaging across the world.

Speakers

Friday August 9, 2019 10:30 - 10:55 CEST
Mercure (140m² / 40 people)

11:00 CEST

Let the bot create your releases
If you are repository maintainer and if you like automatization and making your life easier you can be also interested in release-bot. Release-bot helps upstream maintainers deliver their software to users, via automated releases at GitHub and PyPI. Just create an issue in your repository and bot will make its job and create a new release on PyPi/Github/Pagure in a minute. 

In this short 25 min talk, we will look at release-bot closer. Show how we can configure it and what is the release-bot future.  


Speakers
avatar for Marek Marušin

Marek Marušin

GSoC student
GSoC summer coding student participating in release-bot and ogr


Friday August 9, 2019 11:00 - 11:25 CEST
Mercure (140m² / 40 people)

11:30 CEST

rpkg, the next generation packaging utility — call for feedback
I'd like to present a new rpkg packaging utility, which is almost ready to improve overall packaging experience in Fedora. One of the benefits is that it brings the solution to the long-standing problem of duplicating changelog messages in Git commit records as well as in the spec files but it can do much more than that.

The above problem was solved in a generic way by introduction of spec file templates, which additionally allows for storing packages in DistGit in their unpacked ("upstream") form, which can be preferred for some projects. And there is more spec templates can do.

In addition, rpkg should allow to define package-wide commands, which then extend the basic rpkg functionality for the given package. This can be for example used for integration with Bugzilla to e.g. close bugs automatically when a new release is done that fixes them. It can be also used to make rpkg distribution-specific (e.g. by adding integration with specific build system, specific issue tracker, etc.) only by editing the main rpkg.conf file and adding spec requirements for the newly defined commands.
In this talk, I would like to quickly present those new features and ask for feedback — what can be done better, what can be added or what should perhaps be removed.

Speakers

Friday August 9, 2019 11:30 - 11:55 CEST
Mercure (140m² / 40 people)

13:00 CEST

Gating rawhide packages: things just got real!
Package gating in rawhide is now a reality. Let's walk through how it came to life, how it
stands today and how it will look tomorrow.

This is a major change in the packager's workflow in Fedora but it also opens the door
to new ways to work in Fedora. With more automation we will free time for our contributors
allowing them to invest other parts of our distribution or of the upstream ecosystem.


Friday August 9, 2019 13:00 - 13:50 CEST
Mercure (140m² / 40 people)

14:00 CEST

Bring your upstream releases to Fedora Rawhide in one step
Imagine a world where the only manual action you need to perform when putting a new upstream release into a Linux distro is to just approve it.

With packit service now live, this is the world we live in!

We will not stop there: as you develop your upstream project, packit service is giving you constant feedback on how your project is doing within Fedora OS: can it be built? Do the tests pass? Is my change breaking a compose?

You are welcome to join this session and learn more about packit tool, packit service: what it can do now and what the future may look like.

Speakers
avatar for Tomas Tomecek

Tomas Tomecek

Principal Software Engineer, Red Hat
packit, containers, automation, and having all the fun


Friday August 9, 2019 14:00 - 14:25 CEST
Mercure (140m² / 40 people)

14:30 CEST

Concise, extensible and human-friendly configuration for testing and gating
The current way of enabling tests in the Fedora CI is awkward. There is repeated feedback that the configuration is hard to understand and write. Also its extensibility is quite limited. We want to change that so:
  • Simple & common use cases are super simple to write
  • The format is flexible enough to cover future extensions
  • Concise and easily readable for both machines & humans
  • Everything needed for testing & gating at one place
  • Easier reuse of test cases across different distros
  • Clear test steps separation allows easier local execution
  • Support for inheritance to minimize duplication & maintenance
We've defined Level 1 and Level 2 metadata specification and would like to present a proof of concept on the systemd component showing how simple it could be to enable set of shared tests for continuously testing changes in GitHub, Fedora CI, CentOS CI...

Speakers
avatar for Miroslav Vadkerti

Miroslav Vadkerti

Senior Prinicipal Quality Engineer, Red Hat
I work on Continuous Integration for RHEL. I am the co-author of https://github.com/gluetool/gluetool and Testing Farm.
avatar for Petr Šplíchal

Petr Šplíchal

Principal Quality Engineer, Red Hat
Member of the Operating System CI team with focus on improving tools, processes and best practices.
avatar for Frantisek Sumsal

Frantisek Sumsal

Senior Quality Engineer, Red Hat



Friday August 9, 2019 14:30 - 14:55 CEST
Mercure (140m² / 40 people)

14:30 CEST

How do we do Rust packaging in Fedora?
In this talk I would like to present how we package Rust not from the RPM packaging level, but more how we build and ship them in Fedora, what problems we have and how we are «solving» them (latest RPM features, Modularity, «abusing» Rawhide for crates and so on). After short presentation I would like to have some discussion with people whether our solutions are good and find some other (better) solutions.

Speakers

Friday August 9, 2019 14:30 - 14:55 CEST
Orion (102m² / 40 people) Budapest, Kárpát utca 62-64, 1133 Hungary

15:30 CEST

Fedora CI Objective: present and future
The Fedora CI Objective is an important piece of transforming the way all the bits of Fedora are developed and put together to work how we expect Fedora to work. We will look at where we are today in Fedora and where we want to go. From that vision we will explain the roadmap and what you can expect to change in Fedora by next Flock! Spoiler alert: It will be better.

Core areas include Rawhide stabilization, CI, Gating, distro-wide testing, automated packaging. Challenges, questions and suggestions are welcome throughout the talk!

Audience:

Anyone in Fedora interested in the why and future of the Fedora CI Objective. Most likely especially interesting to developers and package maintainers.



Speakers
DP

Dominik Perpeet

Operating System CI, Red Hat
Dominik Perpeet dreams of Operating Systems that are always stable, even in development. He leads the CI Objective in Fedora and wants to tie upstreams, Fedora and Red Hat Enterprise Linux together in logical and meaningful ways. He is with Red Hat and lives in Germany.


Friday August 9, 2019 15:30 - 16:20 CEST
Helia (360m² / 150 people) Budapest, Kárpát utca 62-64, 1133 Hungary

16:00 CEST

Lessons learned from packaging Pantheon

It was quite a long journey from my first COPR packages in 2015, to my first official packaging work for fedora 26, to Pantheon becoming an officially recognised Desktop Environment with the release of fedora 30 in 2019.

I would talk about the lessons learned from this work, which include how an upstream project that itself originally was its only consumer (elementaryOS) can adapt to be more distro-agnostic (with Pantheon now being offered by fedora, NixOS, Arch, and others), and how changes in upstream GNOME (or downstream ubuntu / elementaryOS) sometimes make my work harder than it probably needs to be.

This topic is of general interest to users of Fedora, and to people who do packaging of generally GNOME-aligned Desktop Environments (MATE, deepin, etc.). Additionally, people working on GNOME, Fedora Workstation (or even Ubuntu) would probably also be interested in some of the issues I've been having.

Slides are available from:
https://decathorpe.fedorapeople.org/flock2019/pantheon.pdf


Speakers

Friday August 9, 2019 16:00 - 16:25 CEST
Orion (102m² / 40 people) Budapest, Kárpát utca 62-64, 1133 Hungary

16:00 CEST

Snaps ❤️ Fedora: Fedora ecosystem progress update
Since last year, the Snap upstream developers and I have been working to improve the quality of life for Fedora users with snaps.
From security improvements to simple enhancements to improve how snaps integrate with the system, there's been a lot of work specifically to improve how snaps work on Fedora and Enterprise Linux.
This talk will be about describing these improvements and the work in progress for feedback for improvement.

Speakers
avatar for Neal Gompa

Neal Gompa

DevOps Engineer II, Datto, Inc.
DevOps Engineer by day, Linux systems aficionado and developer by night! Neal is a developer and contributor in Fedora, Mageia, and openSUSE, focusing primarily on the base Linux system components, such as package and software management. He's a big believer in "upstream first", which... Read More →
avatar for Maciek Borzecki

Maciek Borzecki

Software Engineer, Canonical Ltd.


Friday August 9, 2019 16:00 - 16:25 CEST
Panorama (140m² / 40 people) Budapest, Kárpát utca 62-64, 1133 Hungary

16:30 CEST

Fedora Flatpaks
Fedora Silverblue is the next-generation Fedora Workstation that promises painless upgrades, clear separation between the OS and applications, and secure and cross-platform applications. The basic operating system is an immutable OSTree image, and all the applications are Flatpaks.

In this talk we will present the existing infrastructure to create Flatpaks out of Fedora packages, and detail the process of converting a RPM into a Flatpak by demonstrating it live.

Audience: Anybody interested in distributing their applications in Fedora Silverblue: packagers and application maintainers.

Speakers
avatar for Felipe Borges

Felipe Borges

Senior Software Engineer, Red Hat
Felipe Borges has been involved in GNOME since 2009, contributing with translation, marketing, and development. Currently contributes to various GNOME components and is the maintainer of GNOME Boxes.


Friday August 9, 2019 16:30 - 16:55 CEST
Panorama (140m² / 40 people) Budapest, Kárpát utca 62-64, 1133 Hungary
 
Saturday, August 10
 

13:00 CEST

Modularity & packager experience birds-of-a-feather
Packager experience with modularity hasn't been all that great so far. People working on various parts of it are aware of some gaps but we need a) more user stories from the actual world, and b) find some way forward together where the "obvious" fix isn't practical or possible.

This is a half a day long birds of feather session with some modularity representatives. Packagers, users, release engineers, and pretty much everyone is welcome to contribute.

Speakers
avatar for Stephen Gallagher

Stephen Gallagher

Software Engineer and Open-Source Advocate, Red Hat
Principal Software Engineer at Red Hat, Inc. I have spent the last ten years working on various security and platform-enablement software for Fedora Server and Red Hat Enterprise Linux.
avatar for Petr Šabata

Petr Šabata

Principal Software Engineer, Red Hat
Fancies freedom, free software, transparency, cleanliness, simplicity, natural and computer languages, and Oxford commas.
avatar for Adam Šamalík

Adam Šamalík

Software Engineer, Red Hat
Open source enthusiast. Software Engineer with Red Hat working on Fedora. Every working day is different, but most of my activities tend to be in the Fedora community, focusing on advocacy and innovations of the Linux distribution. This includes looking a
avatar for Langdon White

Langdon White

Platform Architect, Red Hat


Saturday August 10, 2019 13:00 - 14:50 CEST
Mercure (140m² / 40 people)

15:00 CEST

Introductory Packit workshop: start working with source-git and continuous integration
Packit is a tool, a service and a GitHub App for bringing downstream/Fedora closer to upstreams.
Upstream developers might develop a taste for its 'continuous integration' into Fedora, i.e. to continuously ensure that your upstream projects work in Fedora OS.

Downstream maintainers can use its concept of source-git, i.e. working with git commits instead of patches.

There will be a talk from Tomas Tomecek, which will shed a light on basic concepts.

This workshop will help upstream developers and downstream maintainers start using Packit.

Speakers
avatar for Tomas Tomecek

Tomas Tomecek

Principal Software Engineer, Red Hat
packit, containers, automation, and having all the fun
avatar for Jiří Popelka

Jiří Popelka

Senior Software Engineer, Red Hat
Red Hatter for almost 10 years, used to be package maintainer, then worked on firewalld, OSBS, fabric8-analytics@openshift.io, in Cyborg team building bot army and now Packit.
avatar for František Lachman

František Lachman

Software engineer, Red Hat, FI MUNI Brno
Python developer, Red-Hatter, teacher at FI MU, scout and climber.


Saturday August 10, 2019 15:00 - 16:50 CEST
Panorama (140m² / 40 people) Budapest, Kárpát utca 62-64, 1133 Hungary