OSM15 Hackfest
Overview
ETSI's Centre for Testing and Interoperability and the OpenSourceMANO community are organizing the OSM#15 Hackfest on 12-16 June 2023. The event will be hosted by CTTC and co-located with the OSM#15 Plenary Meeting.
On Wednesday, 14 June, Hackfest and Plenary participants will meet at the OSM#15 Ecosystem Day .
Participation in ETSI Hackfests is free and open to all upon registration.
Venue
CTTC Parc Mediterrani de la Tecnologia (PMT) - Building B6 - Auditorium (Level 0) Av. Carl Friedrich Gauss 7 08860 - Castelldefels Barcelona, Spain
- Hotels
- Directions
- Local information
- VISA: Should you require a personal invitation letter for your visa application, please fill in this template and send it to Ricard Vilalta ricard.vilalta _at_ cttc.es
Scope
This event is a development-oriented Hackfest in the form of several self-contained challenges such as bug fixes, developing small features, writing unit tests, or automating end-to-end tests exercising some use case. Key members of the OSM community will mentor challenges.
The Hackfest will start on Monday, 12 June, and finish on Friday, 16 June. On Monday, some theory sessions will be provided, followed by a description of the different challenges to be completed throughout the week. Participants will select a challenge to work on individually or in pairs.
During the week, participants will code autonomously (individually or in pairs) to solve their challenges. Daily sessions will be scheduled with the mentors so that participants can ask questions and solve blocking points.
On Friday, participants will share their achievements and lessons learned with the OSM community.
All active participants will receive a Certificate of Participation. Certificates of Excellence will be awarded to all those participants that complete their challenge.
This event will be an opportunity for participants:
- Understanding the role of NFV Orchestration and OSM
- Understanding OSM architecture and relationship with ETSI NFV Specifications
- Getting familiar with OSM installation
- Understanding OSM development workflow, practices, and tools: Git, Tox, Gerrit, Jenkins...
- Understanding how to work in an open source project: contributing code, code reviews, automated testing...
- Developing a first-hand experience with code development in OSM
- Getting to meet and interact with crucial OSM community members.
Who should attend
- This Hackfest is dedicated to software developers willing to gain first-hand experience contributing to Open Source MANO (ETSI OSM).
Agenda
Theory Sessions
The Hackfest will start on Monday morning 10 am with some theory sessions and presentation of the challenges. Local registration will open at 9 am.
- P1 Host Welcome and Logistics for OSM#15 by Pol Alemany, CTTC
- P2 Introduction to the Hackfest by Gerardo Garcia, Telefonica
- P3 Introduction to OSM by Gerardo Garcia, Telefonica
- P4 OSM Architecture by Guillermo Calvino (Canonical)
- P5 OSM Installation Demo by Gerardo Garcia, Telefonica
- P6 OSM Usage. Onboarding by Gulsum Atici (Canonical)
- P7 OSM Usage. Instantiation and Operation by Mark Beierl (Canonical)
- P8 Hackfest environment by Chiara Grasselli (Unibo)
- P9 OSM Development Environment by Pedro Escaleira (IT)
- P10 How to Contribute to OSM by Gulsum Atici (Canonical)
- Q&A
- Challenges Distribution
Hacking Sessions
Participants will spend most of the week working autonomously on their challenges, with the support of some OSM community members.
Meeting with Mentors
Several times a day, participants will get the chance to meet with their mentors in order to discuss progress and overcome blocking points.
Ecosystem Day
On Wednesday afternoon, the OSM Community will meet for the OSM Ecosystem Day, a workshop allowing organizations in the OSM Ecosystem to share about their Open Source MANO experience and how OSM is helping them to achieve their goals. See agenda.
Demos & Wrap Up
On Friday morning, after a last hacking session, participants to the challenges share their achievements and lessons learnt with the OSM community.
- Challenge 1 - Carlos Hernandez-Chulde
- Challenge 2 - Daniel Adanza Dopazo
- Challenge 5 - Patricia Reinoso
- Challenge 7 - Dario Faccin
Hackfest Material
How to get ready
Prerequisites
- Registration is mandatory!
- Participants will need an ETSI Online Account (if they work for an OSM Member or Participant) or an Individual Contributor Account to contribute code in Gerrit or to file bug reports.
- Participants are expected to have previous knowledge of Python.
- Experience with Git, Docker, Linux, Kubernetes, Openstack, and the Robot Framework for testing, will be a plus.
- Participants will need their laptop to develop, and a remote lab environment will be provided for testing. There are several options:
- Recommended: Ubuntu 22.04
- Other options:
- Windows10 or higher
- Other Linux OS, as long as they can meet the requirements below in terms of SW installation.
- Optionally, if they want to install OSM in their laptop, the only recommended setup is a computer with Ubuntu 22.04 and the following HW requirements:
- 4 CPUs;
- 12 GB of RAM;
- 120 GB of disk free space.
Prepare your environment for the Hackfest
Preparation for Linux Ubuntu 22.04
# Install Python 3.10 $ sudo apt-get update $ sudo apt-get install python3 python3-pip python3-dev $ python3 --version # Python 3.10.X expected as output $ sudo apt-get install git # Install VSCode (https://code.visualstudio.com/docs/setup/linux) $ sudo apt-get install wget gpg $ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg $ sudo install -D -o root -g root -m 644 packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg $ sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list' $ rm -f packages.microsoft.gpg $ sudo apt install apt-transport-https $ sudo apt update $ sudo apt install code # or code-insiders # Install Docker (https://docs.docker.com/engine/install/ubuntu/ and https://docs.docker.com/engine/install/linux-postinstall/) $ sudo apt-get update $ sudo apt-get install ca-certificates curl gnupg $ sudo install -m 0755 -d /etc/apt/keyrings $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg $ sudo chmod a+r /etc/apt/keyrings/docker.gpg $ echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null $ sudo apt-get update $ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin $ sudo groupadd docker $ sudo usermod -aG docker $USER $ newgrp docker ############################################################################################################################## # In some challenges, you may also need Openstack CLI and kubectl ## For Openstack CLI (https://docs.openstack.org/newton/user-guide/common/cli-install-openstack-command-line-clients.html) $ sudo apt install python-dev python-pip $ pip install python-openstackclient ## For kubectl (https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/) $ sudo apt-get update $ sudo apt-get install -y ca-certificates curl $ sudo curl -fsSLo /etc/apt/keyrings/kubernetes-archive-keyring.gpg https://packages.cloud.google.com/apt/doc/apt-key.gpg; echo "deb [signed-by=/etc/apt/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list' $ echo "deb [signed-by=/etc/apt/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list $ sudo apt-get update $ sudo apt-get install -y kubectl
Preparation for Windows
- VSCode or other IDE with Python support.
- Python 3.10.
- Git.
- Program to access remote machines via SSH. Participants can now use SSH from PowerShell. Other alternatives are Putty or Mobaxterm.
- Participants can also set up Windows Subsystem for Linux (WSL).
- Docker (participants can set up Docker using WSL or Hyper-V and Windows containers, although the first is preferred).
Previous Hackfests
- OSM-MR#13 Hackfest - Amsterdam (NL)
- OSM#13 Hackfest - Remote
- OSM#12 Hackfest - Remote
- OSM-MR#11 Hackfest - Remote
- OSM#11 Hackfest - Remote
- OSM-MR#10 Hackfest - Remote
- OSM#10 Hackfest - Remote
- OSM-MR#9 Hackfest - Remote
- OSM#9 Hackfest - Remote
- OSM-MR#8 Hackfest - Remote
- 8th OSM Hackfest - Lucca (Italy)
- 7th OSM Hackfest - Patras (Greece)
- 6th OSM Hackfest - Santa Clara (CA, USA)
- 5th OSM Hackfest - Barcelona (Spain)
- 4th OSM Hackfest - Palo Alto (CA, USA)
- 3rd OSM Hackfest - Oslo (Norway)
- 2nd OSM Hackfest - Madrid (Spain)
- 1st OSM Hackfest - Sophia Antipolis (France)
Get involved in OpenSourceMANO
- Join the OSM Community Slack Workspace
- If your organization is already an OSM member, you can also:
- Request an EOL account (if you don’t have one yet)
- Subscribe OSG OSM and OSM TECH mailing lists
- If your organization is not yet an OSM member:
- Learn how to join, it is free and open to all
- Join the OSM Ecosystem
Contact
Please send your technical questions to OSM_TECH@list.etsi.org or join the OSM Community Slack Workspace
Questions about ETSI, joining OSM, this Hackfest, and future events can be sent to: OSMSupport@etsi.org