Getting Started

This document is intended to guide you through your first contribution to a Fedora Infrastructure project. It assumes you are already familiar with the git version control system and the Python programming language.

Development Environment

The Fedora Infrastructure team uses Ansible and Vagrant to set up development environments for the majority of our projects. It’s recommended that you develop on a Fedora host, but that is not strictly required.

To install Ansible and Vagrant on Fedora, run:

$ sudo dnf install vagrant libvirt vagrant-libvirt vagrant-sshfs ansible

Projects will provide a Vagrantfile.example file in the root of their repository if they support using Vagrant. Copy this to Vagrantfile, adjust it as you see fit, and then run:

$ vagrant up
$ vagrant reload
$ vagrant ssh

This will create a new virtual machine, configure it with Ansible, restart it to ensure you’re running the latest updates, and then SSH into the virtual machine.

Individual projects will provide detailed instructions for their particular setup.

Finding a Project

Fedora Infrastructure applications are either on GitHub in the fedora-infra organization, or on Pagure. Check out the issues tagged with easyfix for an issue to fix.