Jump to: navigation, search

Difference between revisions of "Nova"

(People)
m
(17 intermediate revisions by 4 users not shown)
Line 23: Line 23:
  
  
We align with what was the integrated release schedule, with three milestones. For Mitaka this means: [[Mitaka_Release_Schedule]]
+
We align with what was the integrated release schedule, with three milestones.
  
But we do have some Nova specific process deadlines, please see [[Nova/Mitaka_Release_Schedule]] and [http://docs.openstack.org/developer/nova/process.html Nova Process]
+
But we do have some Nova specific process deadlines, please see [[Nova/Rocky_Release_Schedule]] and [http://docs.openstack.org/developer/nova/process.html Nova Process]
  
 
=== Python Nova client ===
 
=== Python Nova client ===
Line 42: Line 42:
  
 
* PTL
 
* PTL
** Matt Riedemann (mriedem)
+
** Melanie Witt (melwitt)
 
* [[Blueprints|Feature Drivers]]
 
* [[Blueprints|Feature Drivers]]
 
** [https://launchpad.net/~nova-drivers/+members#active nova-drivers team]
 
** [https://launchpad.net/~nova-drivers/+members#active nova-drivers team]
Line 50: Line 50:
 
** Same as PTL.
 
** Same as PTL.
 
* Bug Czar (responsible for organizing Nova's bug team that maintains Nova's bug list)
 
* Bug Czar (responsible for organizing Nova's bug team that maintains Nova's bug list)
** Augustina Ragwitz (auggy)
+
** n/a
 
* Stable Branch Czar (works with stable maintenance team around Nova things)
 
* Stable Branch Czar (works with stable maintenance team around Nova things)
 
** Matt Riedemann (mriedem)
 
** Matt Riedemann (mriedem)
 
* Security Czar (responsible for working with VMT and leading nova-coresec)
 
* Security Czar (responsible for working with VMT and leading nova-coresec)
** Michael Still (mikal)
+
** n/a
 
* Gate Czar (on top of the status of Nova in the CI gate)
 
* Gate Czar (on top of the status of Nova in the CI gate)
 
** Matt Riedemann (mriedem)
 
** Matt Riedemann (mriedem)
Line 60: Line 60:
 
** Alex Xu (alex_xu)
 
** Alex Xu (alex_xu)
 
* [[Nova-Ironic|Ironic Liaison]]
 
* [[Nova-Ironic|Ironic Liaison]]
** John Villalovos (jlvillal)
+
** Jim Rollenhagen (jroll)
** Michael Davies (mrda) (backup)
 
 
* python-novaclient Czar
 
* python-novaclient Czar
 
** Andrey Kurilin (andreykurilin)
 
** Andrey Kurilin (andreykurilin)
 
* [[Nova/Mentoring|Mentoring]] Czar
 
* [[Nova/Mentoring|Mentoring]] Czar
**  Augustina Ragwitz (auggy)
+
**  n/a
* Answers Czar
+
* Answers (ask.openstack.org) Czar
**
+
** n/a
 
* Release Czar
 
* Release Czar
 
** Sylvain Bauza (bauzas)
 
** Sylvain Bauza (bauzas)
 
* Docs Czar
 
* Docs Czar
** TBC
+
** https://wiki.openstack.org/wiki/CrossProjectLiaisons#Documentation
 
* Notifications
 
* Notifications
 
** Balazs Gibizer (gibi)
 
** Balazs Gibizer (gibi)
Line 85: Line 84:
  
 
=== Documentation ===
 
=== Documentation ===
* [http://docs.openstack.org/api/openstack-compute/2/content/ Compute API (v2) specification]
+
* [https://developer.openstack.org/api-ref/compute/ Compute API reference]
* [http://docs.openstack.org/trunk/openstack-compute/admin/content/ Administration Guide]
+
* [https://docs.openstack.org/nova/latest/admin/ Administration Guide]
  
 
=== Release Process ===
 
=== Release Process ===
* Nova releases are now done by providing the Release Manager with a git SHA to tag
+
* nova (and other projects under the [https://governance.openstack.org/tc/reference/projects/nova.html compute program in governance]) are released through the standard openstack release process: https://github.com/openstack/releases/blob/master/README.rst
* Client releases are done by following [[Nova/Client Release Process]]
 
 
* Server side release checklist is found in [[Nova/ReleaseChecklist]]
 
* Server side release checklist is found in [[Nova/ReleaseChecklist]]
  
Line 108: Line 106:
 
* [http://specs.openstack.org/openstack/nova-specs/readme.html nova-spec process]
 
* [http://specs.openstack.org/openstack/nova-specs/readme.html nova-spec process]
 
* [https://wiki.openstack.org/wiki/Nova/BugTriage Bug Triage Process and Bug tag owners]
 
* [https://wiki.openstack.org/wiki/Nova/BugTriage Bug Triage Process and Bug tag owners]
* [[Nova/ReleaseChecklist]]
 
  
 
=== Nova subteams ===
 
=== Nova subteams ===
Line 121: Line 118:
  
 
A common pattern is an ad-hoc group of people, focusing on a sub set of reviews. They generally co-ordinate on here:
 
A common pattern is an ad-hoc group of people, focusing on a sub set of reviews. They generally co-ordinate on here:
https://etherpad.openstack.org/p/mitaka-nova-priorities-tracking
+
https://etherpad.openstack.org/p/rocky-nova-priorities-tracking
  
 
For each sub-team, the etherpad usually includes:
 
For each sub-team, the etherpad usually includes:
Line 146: Line 143:
 
* A sub-team is about organizing development efforts, but not necessarily setting direction for the project in a given area.  Approval of patches is still done by the nova-core team and it is beneficial to publish designs to the openstack-dev mailing list for vetting in advance.
 
* A sub-team is about organizing development efforts, but not necessarily setting direction for the project in a given area.  Approval of patches is still done by the nova-core team and it is beneficial to publish designs to the openstack-dev mailing list for vetting in advance.
  
===== Active Sub-teams: =====
+
===== Active Sub-teams =====
  
TODO - this list is very out of date, need a better approach.
+
TODO - this list can get out-of-date, need a better approach.
  
* [[Meetings/EC2API|EC2 API]]
 
* [[Meetings/Hyper-V|Hyper-V]]
 
* [[Meetings/NovaBugScrub|Nova Bugs]]
 
 
* [[Meetings/Scheduler|Scheduler]]
 
* [[Meetings/Scheduler|Scheduler]]
* [[Meetings/VMwareAPI|VMwareAPI]]
 
* [[Meetings/XenAPI|XenAPI]]
 
* [[Meetings/Libvirt|Libvirt]]
 
* [[Meetings/Containers|Containers]]
 
* Docker
 
 
* [[Meetings/NovaCellsv2|Cellsv2]]
 
* [[Meetings/NovaCellsv2|Cellsv2]]
* Virtuozzo
 
* SR-IOV - [http://eavesdrop.openstack.org/#SR-IOV/PCI_Passthrough_Meeting meeting times]
 
 
* [[Meetings/NovaAPI|NovaAPI]]
 
* [[Meetings/NovaAPI|NovaAPI]]
 
* [[Meetings/NovaNotification|NovaNotification]]
 
* [[Meetings/NovaNotification|NovaNotification]]
* [[Meetings/NovaLiveMigration|NovaLiveMigration]]
 
  
 
== History ==
 
== History ==
Line 173: Line 159:
 
** Michael Still (mikal), Juno and Kilo releases
 
** Michael Still (mikal), Juno and Kilo releases
 
** John Garbutt (johnthetubaguy), Liberty and Mitaka releases
 
** John Garbutt (johnthetubaguy), Liberty and Mitaka releases
** Matt Riedemann (mriedem), Newton, Ocata, and Pike releases
+
** Matt Riedemann (mriedem), Newton, Ocata, Pike, and Queens releases
 +
** Melanie Witt (melwitt), Rocky release
  
 
* Previous or current core reviewers:
 
* Previous or current core reviewers:
 
** Alex Xu
 
** Alex Xu
 
** Andrew Laski
 
** Andrew Laski
 +
** Balazs Gibizer
 
** Brian D. Elliott
 
** Brian D. Elliott
 
** Brian Lamar
 
** Brian Lamar
Line 187: Line 175:
 
** Daniel Berrange
 
** Daniel Berrange
 
** Devananda van der Veen
 
** Devananda van der Veen
 +
** Eric Fried
 
** Jay Pipes
 
** Jay Pipes
 
** Joe Gordon
 
** Joe Gordon
Line 214: Line 203:
  
 
== Developer Contacts ==
 
== Developer Contacts ==
'''Work In Progress'''
 
 
The following is a list of major subsystems within Nova and people that you
 
The following is a list of major subsystems within Nova and people that you
 
can approach on IRC or email if you have questions about that particular
 
can approach on IRC or email if you have questions about that particular
Line 231: Line 219:
 
VMWare/vCenter virt driver
 
VMWare/vCenter virt driver
  
  - Gary Kotton (garyk)  
+
  - Eric Brown (browne)
 
  - Radoslav Gerganov (rgerganov)
 
  - Radoslav Gerganov (rgerganov)
  
Line 256: Line 244:
 
REST API
 
REST API
  
- Sean Dague (sdague)
 
 
  - Alex Xu (alex_xu)  
 
  - Alex Xu (alex_xu)  
  
Line 271: Line 258:
  
 
Neutron
 
Neutron
  - Matt Riedemann (mriedem)
+
  - Matt Riedemann (mriedem)
  
 
RPC
 
RPC
Line 282: Line 269:
 
  - Moshe Levi (moshele)
 
  - Moshe Levi (moshele)
 
  - Stephen Finucane (sfinucan)
 
  - Stephen Finucane (sfinucan)
  - Ludovic Beliveau (lbeliveau)
+
 
 +
Placement / Resource Providers
 +
  - Jay Pipes (jaypipes)
 +
- Chris Dent (cdent)
 +
- Ed Leafe (edleafe)
 +
- Eric Fried (efried)
  
 
== So, you want to learn more about Nova? ==
 
== So, you want to learn more about Nova? ==
  
To learn more about Nova, please read out about [http://docs.openstack.org/developer/nova/how_to_get_involved.html Nova Mentoring]
+
To learn more about Nova, please read out about [https://docs.openstack.org/nova/latest/contributor/how-to-get-involved.html Nova Mentoring]
  
 
----
 
----
 
[[Category:Nova]]
 
[[Category:Nova]]

Revision as of 21:01, 3 May 2018


Projects

Nova

Official name OpenStack Compute
Source code https://github.com/openstack/nova
Bug tracker https://bugs.launchpad.net/nova
Feature tracker https://blueprints.launchpad.net/nova
Developer doc http://docs.openstack.org/developer/nova/


We align with what was the integrated release schedule, with three milestones.

But we do have some Nova specific process deadlines, please see Nova/Rocky_Release_Schedule and Nova Process

Python Nova client

Source code https://github.com/openstack/python-novaclient
Bug tracker https://bugs.launchpad.net/python-novaclient
Feature tracker https://blueprints.launchpad.net/python-novaclient

People

  • PTL
    • Melanie Witt (melwitt)
  • Feature Drivers
  • Code Reviewers
  • Blueprint Czar (responsible for maintenance of Nova's blueprint lists)
    • Same as PTL.
  • Bug Czar (responsible for organizing Nova's bug team that maintains Nova's bug list)
    • n/a
  • Stable Branch Czar (works with stable maintenance team around Nova things)
    • Matt Riedemann (mriedem)
  • Security Czar (responsible for working with VMT and leading nova-coresec)
    • n/a
  • Gate Czar (on top of the status of Nova in the CI gate)
    • Matt Riedemann (mriedem)
  • API Working Group Liaisons
    • Alex Xu (alex_xu)
  • Ironic Liaison
    • Jim Rollenhagen (jroll)
  • python-novaclient Czar
    • Andrey Kurilin (andreykurilin)
  • Mentoring Czar
    • n/a
  • Answers (ask.openstack.org) Czar
    • n/a
  • Release Czar
    • Sylvain Bauza (bauzas)
  • Docs Czar
  • Notifications
    • Balazs Gibizer (gibi)
  • Catering Czar
    • Chet Burgess (cburgess)


For bug tag owners, please see: Nova Bug Triage

For other folks, please see: Cross Project Liaisons (CPLs)

General Resources

Documentation

Release Process

Code Review Dashboards

  • Many Nova reviewers use dashboards to help them decide what to review. Nova/GerritDashboards tracks some of our favorites.

Other resources

Resources for Contributors

Contributor Documentation

Nova subteams

The Nova team meets weekly: Meetings/Nova.

In addition to a project-wide Nova gathering each week, there are some sub-teams. These sub-teams get together to discuss work going on in a focused area of Nova.

Code Review Subteam

Sub-teams don't need permission. They can be around for short or long periods of time.

A common pattern is an ad-hoc group of people, focusing on a sub set of reviews. They generally co-ordinate on here: https://etherpad.openstack.org/p/rocky-nova-priorities-tracking

For each sub-team, the etherpad usually includes:

  • list of people in the group (IRC nicks)
  • list of patches the sub-team have reviewed, and think are ready for nova-core to approve
  • list of patches the sub-team are focusing their reviews on
  • May link to a regular meeting, but that is strictly optional


Over time, it is hoped, some sub-teams may become trusted enough to count as a +2. Even without counting as a +2, the review focus and implied prioritisation is still very valuable.

Sub-team Meetings

Some subteams are more formal, with a regular meeting and a wiki page.

  • The linked wiki page should include:
    • The mission of the team
    • A regular meeting time
    • A coordinator / point of contact
    • Meeting Agenda
    • Links to logs from previous meetings
  • A sub-team representative should regularly attend the main Nova meeting to provide a sub-team status report.
  • A sub-team is *not* exclusively responsible for an area of code. Anyone is welcome to contribute anywhere. However, you are encouraged to communicate regularly with others working in the same area as you and sub-teams help encourage that.
  • A sub-team is about organizing development efforts, but not necessarily setting direction for the project in a given area. Approval of patches is still done by the nova-core team and it is beneficial to publish designs to the openstack-dev mailing list for vetting in advance.
Active Sub-teams

TODO - this list can get out-of-date, need a better approach.

History

  • Previous PTLs
    • Vish Ishaya (vishy), project beginning until Grizzly release
    • Russell Bryant (russellb), Havana and Icehouse releases
    • Michael Still (mikal), Juno and Kilo releases
    • John Garbutt (johnthetubaguy), Liberty and Mitaka releases
    • Matt Riedemann (mriedem), Newton, Ocata, Pike, and Queens releases
    • Melanie Witt (melwitt), Rocky release
  • Previous or current core reviewers:
    • Alex Xu
    • Andrew Laski
    • Balazs Gibizer
    • Brian D. Elliott
    • Brian Lamar
    • Brian Waldon
    • Chris Behrens
    • Chris Yeoh
    • Dan Prince
    • Dan Smith
    • Daniel Berrange
    • Devananda van der Veen
    • Eric Fried
    • Jay Pipes
    • Joe Gordon
    • Johannes Erdfelt
    • John Garbutt
    • Ken'ichi Ohmichi
    • Kevin L. Mitchell
    • Lorin Hochstein
    • Mark McLoughlin
    • Matt Dietz
    • Matt Riedemann
    • Melanie Witt
    • Michael Still
    • Nikola Dipanov
    • Pádraig Brady
    • Paul Voccio
    • Rick Harris
    • Russell Bryant
    • Sandy Walsh
    • Sean Dague
    • Soren Hansen
    • Stephen Finucane
    • Sylvain Bauza
    • Trey Morris
    • Vishvananda Ishaya
    • Yun Mao

Developer Contacts

The following is a list of major subsystems within Nova and people that you can approach on IRC or email if you have questions about that particular subsystem. IRC nicks are in parentheses.

Nova Objects Framework

- Dan Smith (dansmith)
- Jay Pipes (jaypipes)

libvirt virt driver

- ?

Hyper-V virt driver

- Claudiu Belu (claudiub)

VMWare/vCenter virt driver

- Eric Brown (browne)
- Radoslav Gerganov (rgerganov)

XenAPI virt driver

- Bob Ball (BobBall)
- John Garbutt (johnthetubaguy)

Ironic/bare metal

- Jim Rollenhagen (jroll) 

Scheduling and resource tracking

- Sylvain Bauza (bauzas) 
- Jay Pipes (jaypipes) 

Block device mapping and volume attachments

- Matthew Booth (mdbooth)
- Feodor Tersin (ftersin)
- Lee Yarwood (lyarwood)

REST API

- Alex Xu (alex_xu) 

Database

- Jay Pipes (jaypipes)

Cells (v1 and v2)

- Dan Smith (dansmith)
- Melanie Witt (melwitt)

nova-network

- Dan Smith (dansmith)

Neutron

- Matt Riedemann (mriedem)

RPC

- Dan Smith (dansmith)

Notification system

- Balázs Gibizer (gibi)

PCI Devices / SRIOV

- Moshe Levi (moshele)
- Stephen Finucane (sfinucan)

Placement / Resource Providers

- Jay Pipes (jaypipes)
- Chris Dent (cdent)
- Ed Leafe (edleafe)
- Eric Fried (efried)

So, you want to learn more about Nova?

To learn more about Nova, please read out about Nova Mentoring