Table of Contents |
---|
Introduction
A CAMARA meta-release is the way CAMARA brings its APIs to market.
A meta-release consists of a set of public versions of curated APIs that went though the CAMARA meta-release process.
WIP
...
The purpose of this document is to describe the cadence, processes, milestones, and associated tasks used in the CAMARA release cycle. See CAMARA Releases for information and schedule for specific releases.
Overview
CAMARA releases is scheduled to twice per year at approximately 6 month intervals (May and November). Releases are named after major world cities in alphabetical order. See the CAMARA Release Roadmap for a list of previous and future releases.
Releases are administered and tracked by a Community Release Managers. Release status is discussed at the << TBC >>
Release Milestones
Release milestones and their associated tasks, are used to track the status of the release. The milestones and management tasks used in the release process are described in the table below.
...
define
- the milestones of the meta-release (this page), and the supporting Meta-release Process documentation
- the activities expected from the different teams to move from one milestone to the next
- the way to report progress on the meta-release itself, on the Commonalities and ICM releases and on API releases
For the schedule and content of actual planned meta-releases, see CAMARA meta-releases.
Meta-release milestones
Meta-release milestones and their associated actions are used to progress and track the status of the meta-release.
- A meta-release has 6 milestones, M0 through M6 described below.
- For the typical milestone dates of a meta-release, please see the Meta-release Process.
The following table lists the meta-release milestones, and includes a high level view of the activities expected from the various teams to reach these milestones.
More details on these for each team are documented here:
- Commonalities, ICM: release tracking and milestone activities
- API Sub Projects: release tracking and milestone activities
- Release Management: meta-release tracking and milestone activities
- TSC: milestone activities
Milestone / start date | Actors & Activities for next milestone | Timeline | Week Nr |
---|---|---|---|
pre-M0 activities |
| ||
M0 | Meta-release kickoff | M0 | 0 |
activities for M1 start @ M0 |
| 2 weeks | |
M1 | Alpha Commonalities & ICM | M0 + 2 weeks | 2 |
activities for M2 start @ M1 |
| 7 weeks | |
M2 | Release-candidate Commonalities & ICM | M1 + 7 weeks | 9 |
activities for M3 start @ M1 |
| 9 weeks | |
M3 | Release-candidate APIs (Code Freeze) | M1 + 9 weeks | 9 |
activities for M4 start @ M3 |
| 9 weeks | |
M4 | Public-release APIs | M3 + 9 weeks | 18 |
activities for M5 starts @ public-release PR for an API |
| 2 weeks | |
M5 | Meta-release | M4 + 2 weeks | 20 |
activities for M6 start @ M5 |
| 2 weeks | |
M6 | Post Release Assessment | M5 + 2 weeks | 24 |
Processes
All CAMARA teams play their part in the meta-release process. An overview of the activities per team is shown in the above table.
The details on the activities for each team can be found in the below process descriptions:
- The process to manage a meta-release is described here: Meta-release Process
- The process for the Commonalities and ICM teams is described here: Commonalities and ICM release process
- Details on releasing an API version and the related API versioning are described here: API Release Process.
...
- Start of release cycle.
- Scope of Work Products clarified.
- Scope of I&CM and Commonalities
...
.....................................
- Work products needed:
- Commonalities
- API-design-guidelines.md
- Camara_Versioning_Guidelines.md
- Glossary.md
- Linting rules (representing the guidelines)
- Identity & Consent Management
- CAMARA-API-access-and-user-consent.md
- CAMARA-AuthN-AuthZ-Concept.md
- Note: documents will be incorporated into Commonalities release at some point of time, until then they be referenced by Commonalities
- Release Management
- Overview of released APIs and their version and status
- Release management process
- For each (API) sub projects:
- API Definition(s)
- Following the Commonalities guidelines
- Successful linting check (with latest rules provided by Commonalities
- Inline documentation, usable together with swagger editor and redoc
- Test definitions
- .feature files according to guideline from Commonality (comes with v0.2.0)
- Supplementary documentation if needed to use or implement the API definition(s)
- User documentation should be including the API Definition
- API Definition(s)
- Commonalities
- Dependencies:
- Release Management <= Commonalities, API Sub Projects
- Needs information (e.g. scope definitions) about the planned and done releases from the sub projects
- This information has to be provided in a way that can be automated collected
- API sub project(s) <= Commonalities
- all API Sub Projects need to know the release of the Commonalities documents and artefacts which they have follow for their release
- Commonalities <= Identity & Consent management
- Commonalities (a release of Commonalities is referring to documents within a release of I&CM)
- Release Management <= Commonalities, API Sub Projects
- Potential milestones:
- Kick-off
- and Scope of I&CM and Commonalities
- 4 weeks
- Release candidates of Commonalities
- Scope defined per sub projects (could be part of one the previous lines)
- 4 weeks
- Release of Commonalities
- 4-6
- (First) Release Candidates of sub projects
- 4-6 weeks
- Sub project releases
- 2 weeks
- Common Release Date ("packaging done for the community release")
- Release Retro
- Kick-off
- Release cadence:
- 2 releases per year as a target
- Initial schedule:
Guidelines towards Sub Projects regarding releases and versioning
- ACTION: a task force to address the collected issues around release and versioning in sub project should be run in context of the Release Management working group
- Collected issues: https://github.com/camaraproject/ReleaseManagement/issues/9
- Commonalities documents which are relevant:Camara_Versioning_Guidelines.md