GENIVI GDP

GENIVI Development Platform, GDP, is at the same time an outcome and the name of a project/program.As a program, GDP can be described as the delivery face of the GENIVI Alliance, that take care of biuilding and publishing the software developed within the consortium, together with some generic software components, to create a coherent platform targeting different groups of developers. This delivery program includes the following outcomes:

  • Baselines: outcome of GENIVI compliance program
  • GDP Master: rolling release targetng automotive system developers
  • GENIVI Development Platform – GDP: platform to be consumed by more conservative automotive users
  • Software Development Environment (Kit): targeting developers
  • GDP spins: based on GDP, it targets a specific group of developers.

Baselines are the outcome of GENIVI compliance program, that includes the automotive software components developed by the different Expert Groups from the Alliance. These components are in different states: from Proof of Concepts to production ready ones. It is deployed in QEMU and built with two different tooling set: Yocto (maintained by WindRiver) and Baserock (maintained by Codethink Ltd). GENIVI does release baselines twice a year.

The Software Development Environment (SDE) is a collection of development tools that can be deployed through a VM on GDP. It targets application developers and includes some automotive centric tools like Franca or DTL. The first release was on October 2016 and Gunnar Anderson is the maintainer. It is at this point in a very early state.

GDP spins are platforms based on GDP that includes software for specific targets. The first spin is called QtAS. It was released in October 2016 and targets automotive Qt developers. This spin is done by Pelagicore and the Qt Company.

GENIVI Master was created in May 2016 by the GDP Delivery Team, led by Agustín. It s a rolling release that allows automotive system developers to build from scratch default of customized images of the GENIVI platform for the default available target boards, QEMU or their own. As any other rolling relese, Master is based in three simple principles:

  1. There only one repository where all the code is integrated.
  2. That only repository is always working
  3. Every patch/code goes to Master first.

GENIVI Development Platform (GDP) is a distribution derivative from poky, build with bitbake (Yocto), including the GENIVI Alliance developed automotive software components to ship a platform for the industry, presented as binaries with ports to a variety of popular development boards. It has two release per year aprox.You can find a more detailed description of these outcomes in the GENIVI FAQ.

Agustin’s role was to lead the maintainers team that drove GDP from being a closed project which outcome was published with FOSS licenses to a truly Open Source project, and from being a demo platform, designed to be consumed by experts, to a development platform, easy to consume for any Linux user on some of the most popular development boards.So the main goal (achieved), was to revamp the project using standard Open Source processes, common among most of the most popular open projects and part o Codethink’s and Agustin’s DNA.

Agustín also coordinated the genesis and maturing of GENIVI Master, the rolling distribution from GENIVI, which allowed maintainers to speed up the review and integration process, managing more code with the same effort and reducing the time spent analising conflicts and integration issues. What Master is and its impact was summarized in several blog posts:

Agustin involvement in GENIVI, as part of Codethink’s team, took place form Oct 2015 to November 2016. On that period, GDP-ivi9, GDP 11 Beta, GDP 11 RC1, GDP 11 RC2 and GDP 11 RC3 were released, together with different promotion activities, training sessions, content production and other common actions involved in any Open Source platform production and release, done in the open.As any other complex project, Agustin was not alone. The main technical actors were the maintainers:

  • Tom Pollard, from Codethink Ltd
  • Robert Marshall, from Codethink Ltd
  • Jonathan Maw, from Codethink Ltd
  • Changhyeok Bae, community

and a group of contributors from the GENIVI community that, as in any open project, play the most relevant role.You can see a summary of the activity developed by maintainers and Agustin on GDP over a year in this link, which was published on the GENIVI wiki on November 15th 2016.

Finally, Agustín promoted GDP, together with my colleagues at Codethink and community members,  in several events through talks, training sessions and mos, for instance: