Jump to: navigation, search

Difference between revisions of "Nova"

(Active Sub-teams:)
(Developer Contacts)
 
(105 intermediate revisions by 31 users not shown)
Line 1: Line 1:
= OpenStack Compute Program =
+
[[Category:Compute]]
  
 
== Projects ==
 
== Projects ==
Line 21: Line 21:
 
| http://docs.openstack.org/developer/nova/
 
| 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/Stein_Release_Schedule]] and [http://docs.openstack.org/developer/nova/process.html Nova Process]
  
 
=== Python Nova client ===
 
=== Python Nova client ===
Line 37: Line 42:
  
 
* PTL
 
* PTL
** Russell Bryant (russellb)
+
** Balazs Gibizer (gibi)
 
* [[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]
 
* [[Nova/CoreTeam|Code Reviewers]]
 
* [[Nova/CoreTeam|Code Reviewers]]
 
** [https://review.openstack.org/#/admin/groups/25,members nova-core team]
 
** [https://review.openstack.org/#/admin/groups/25,members nova-core team]
 +
** [https://review.openstack.org/#/admin/groups/572,members python-novaclient-core team]
 +
** [https://review.openstack.org/#/admin/groups/1175,members os-vif-core team]
 
* Blueprint Czar (responsible for maintenance of Nova's blueprint lists)
 
* Blueprint Czar (responsible for maintenance of Nova's blueprint lists)
** John Garbutt (johnthetubaguy)
+
** 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)
** Tracy Jones (tjones)
+
** n/a
 +
* Stable Branch Czar (works with stable maintenance team around Nova things)
 +
** Lee Yarwood(lyarwood)
 +
* 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)
 
* Gate Czar (on top of the status of Nova in the CI gate)
** Joe Gordon (jog0)
+
** n/a
 +
* [[Nova/APIWGLiaisons|API Working Group Liaisons]]
 +
** Alex Xu (alex_xu)
 +
* [[Nova-Ironic|Ironic Liaison]]
 +
** Jim Rollenhagen (jroll)
 +
* python-novaclient Czar
 +
** Andrey Kurilin (andreykurilin)
 +
* [[Nova/Mentoring|Mentoring]] Czar
 +
**  n/a
 +
* Answers (ask.openstack.org) Czar
 +
** n/a
 +
* Release Czar
 +
** Sylvain Bauza (bauzas)
 +
* Docs Czar
 +
** https://wiki.openstack.org/wiki/CrossProjectLiaisons#Documentation
 +
* Notifications
 +
** Balazs Gibizer (gibi)
 +
* Catering Czar
 +
** Chet Burgess (cburgess)
  
  
=== History ===
+
For bug tag owners, please see: [[Nova/BugTriage | Nova Bug Triage ]]
  
* Previous PTLs
+
For other folks, please see: [[CrossProjectLiaisons| Cross Project Liaisons (CPLs)]]
** Vish Ishaya (vishy), Project beginning until Grizzly release
 
  
 
== General Resources ==
 
== General Resources ==
  
 
=== 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 ===
 +
* 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
 +
* Server side release checklist is found in [[Nova/ReleaseChecklist]]
 +
 
 +
=== Code Review Dashboards ===
 +
* Many Nova reviewers use dashboards to help them decide what to review. [[Nova/GerritDashboards]] tracks some of our favorites.
  
 
=== Other resources ===
 
=== Other resources ===
* [[Nova/APIFeatureComparison | API feature comparison]]
+
* Details about the [http://docs.openstack.org/developer/nova/support-matrix.html hypervisor support matrix]
* Details about [[HypervisorSupportMatrix|hypervisor support]]
 
* List of [[Scheduler Filters]]
 
  
 
== Resources for Contributors ==
 
== Resources for Contributors ==
Line 70: Line 103:
 
=== Contributor Documentation ===
 
=== Contributor Documentation ===
  
* [[ReviewChecklist|Checklist for code reviews]]
+
* [http://docs.openstack.org/infra/manual/developers.html General Developer's Guide]
* [[Nova/ReleaseChecklist]]
+
* [http://docs.openstack.org/developer/nova/devref/index.html Nova Architecture and long term plan Docs]
 +
* [http://docs.openstack.org/developer/nova/blueprints.html When you need a spec vs a blueprint]
 +
* [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]
  
 
=== Nova subteams ===
 
=== 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.
 
  
===== Notes on Sub-teams: =====
+
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/stein-nova-subteam-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 linked wiki page should include:
Line 86: Line 143:
 
* A sub-team representative should regularly attend the main Nova meeting to provide a sub-team status report.
 
* 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 *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.  Review 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 =====
 +
 
 +
TODO - this list can get out-of-date, need a better approach.
 +
 
 +
* [[Meetings/Scheduler|Scheduler]]
 +
* [[Meetings/NovaCellsv2|Cellsv2]]
 +
* [[Meetings/NovaAPI|NovaAPI]]
 +
* [https://etherpad.opendev.org/p/nova-libvirt-subteam Libvirt]
 +
 
 +
== 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 and Stein releases
 +
** Eric Fried (efried), Train 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
 +
 
 +
- jhui@vmware.com
 +
- Yingji Sun <yingjisun@vmware@com>
 +
 
 +
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)
  
===== Active Sub-teams: =====
+
== So, you want to learn more about Nova? ==
  
* Hyper-V
+
To learn more about Nova, please read out about [https://docs.openstack.org/nova/latest/contributor/how-to-get-involved.html Nova Mentoring]
* [[Meetings/NovaBugScrub|Nova Bugs]]
 
* [[Gantt]] (ex-Scheduler) ([[Meetings/Scheduler|Meetings]])
 
* [[Meetings/VMwareAPI|VMwareAPI]]
 
* [[Meetings/XenAPI|XenAPI]]
 
* [[Meetings/Libvirt|Libvirt]]
 
* [[Meetings/Containers|Containers]]
 
* Docker
 
  
 
----
 
----
 
[[Category:Nova]]
 
[[Category:Nova]]

Latest revision as of 15:52, 24 August 2020


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/Stein_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


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/stein-nova-subteam-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 and Stein releases
    • Eric Fried (efried), Train 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

- jhui@vmware.com
- Yingji Sun <yingjisun@vmware@com>

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