Student: Elvira García Ruiz

  • Fedora Account: egruiz
  • IRC: elvira (#fedora-summer-coding, #systemroles)

Summary

June was my first month as a GSOC student, and I must say is has been a tough but fun ride! I’ve been working at improving the Linux System Roles Network Role. My main focus for this summer is being able to improve the testing systems. In order to achieve that, I will introduce Pytest as a tool for the integration tests.

About Me

I’m a 23 years old student based in Spain. I discovered the world of free software just two years ago, while finishing my degree. After that, I decided to study a master in Computation and joined SUGUS/GNU Linux, the free software group of my University. Thanks to their support I was able to discover Fedora and other cool software, too.

As a woman in technology, I understand how difficult (even uncomfortable) it can be to join an unknown community or group where you clearly are the minority. That’s why I wish someday I can make more students and fellow programmers discover the free software world, and make them find it as beautiful and welcoming as I did.

Community bonding period

During May I participated on the community bonding period. I was able to make some small contributions to the project while learning a lot about it: Improving their Contributing.md document was really interesting because it helped me understand the workflow of the project. I also finished my first PR at the project, which separated the info logging from the warnings.

June

Week 1 – Debugging the system

After some trouble with what I thought would be an easy issue to get familiarized to the project, I got some very nice peer coding sessions with my mentor, Till. Thanks to this I was able to better understand how to debug the current integration tests by persisting the testing system and checking its logs.

Week 2 – Ethtool features fix and test addition

On this week I was able to finish the issue mentioned the week before. The Network role now supported the Ethtool feature names written with underscores instead of dashes. I also had to make new unit tests and integration tests for this feature. Finally, a small refactor was made to improve readability.

Week 3 – Detect incompatibilities in between state and persistent_state

I completed another issue so as to get more practice with the code and testing of the project. For this one I was able to complete and make the tests independently. That made me feel more comfortable with the project.

Week 4 – Module Wrapper PoC

In order to add Pytest as a testing tool, I need to execute the network role module directly from Python, and not through Ansible. Thanks to my mentor remarks I was able to make a Proof of Concept where I achieved that.

Looking Forward

The Proof of Concept was a very exciting step towards what I want to add to Linux System Roles. I’m really happy for everything I’m learning this summer!