In order to provide OpenStack end-users with a consistent and desirable experience, it can be necessary for some concepts (e.g. quotas, backwards compatibility) and new feature requests to be agreed across all projects involved with the problem.
These documents are for problems or functionality that involves multiple projects. Not everything that meets this criteria is required to go through this process. For example, if two projects are trying to reassess their API interactions with each other, they should keep the specs with their own spec repositories. If multiple projects have a need for some similar concept (e.g. quotas), or to coordinate with another project that is a dependency to a capability, they can propose a spec here.
Since these specifications are cross-project, they should consist mainly of:
A specification will have a list of projects it involves, and their linked blueprint. A project may choose to write a more detailed specification within their own project specification repository if necessary.
Once the Cross-Project Spec Liaisons from the list of involved projects agree on a cross-project specification, the Technical Committee will review the agreements by the individual teams and merge the specification.
As mentioned in the Cross-Project Spec Liaisons responsibilities, it’s up to them to communicate with their own project team about these initiatives. Depending on availability of resources and the project’s priorities will determine when these changes will be rolled out.
OpenStack relies on the cross-project spec liaisons from each participating project to help with coordination and cross-project spec related tasks. The liaison defaults to the PTL, but the PTL can also delegate the responsibilities to someone else on the team by updating the liaison list on the Cross-Project Spec Liaisons wiki page.
The liaison does not have to personally do all of these things, but must ensure they are done by someone on the project team.
The cross-project meeting occurs if there are agenda items proposed by the community that involve the attention of the Cross-Project Spec Liaisons.
Some cross-project initiatives don’t involve all projects under the big tent. Some may also take more than a couple of meetings to discuss. For these initiatives it’s recommended to break out into a group with all involved projects’ Cross-Project Spec Liaisons, and iterate together through a specification.
To facilitate scheduling such temporary cross-project meetings, a specific meeting channel is available and should be used: #openstack-meeting-cp.
Just like what is an applicable cross-project spec, these meetings should not just be project to project interaction. These meetings should have a specific and concrete goal. When that goal is reached, the meetings should stop.
Clone https://git.openstack.org/openstack-infra/irc-meetings
In the meetings directory add a file in the format of <name>_wg.rst, where <name> should be something to identify your groups initiative. Use this example for the file content of service-catalog-wg.rst:
project: Service Catalog TNG Working Group Virtual Standup
meeting_id: service_catalog_tng
agenda_url: https://wiki.openstack.org/wiki/Meetings/ServiceCatalogTNG
schedule:
- time: '1500'
day: Thursday
irc: openstack-meeting-cp
frequency: weekly
start_date: 20160107
duration: 60
chair: Sean Dague (sdague), Anne Gentle (annegentle)
description: >
This is a weekly 30 minute virtual standup to see where our progress
is for the overall effort. It is assumed most folks won't attend the
meeting but will instead update our virtual standup etherpad before
the meeting. This will just be a checkpoint and point at the top
issue that needs to be focussed on for the next week.