Merge "NetIDE release notes for Carbon"
[docs.git] / docs / release-process / milestone-readouts.rst
1 Milestone Readouts
2 ==================
3
4 M0: Declare Intent
5 ------------------
6
7 (Project Name)
8
9 #. A statement to the effect: "The <Project Name> project formally joins the OpenDaylight Carbon
10    Simultaneous Release and agrees to the activities and timeline documented on the Carbon Release
11    Plan Page: https://wiki.opendaylight.org/view/Simultaneous_Release:Carbon_Release_Plan"
12 #. Project Offset: (Offset 0/Offset 1/Offset 2)
13 #. Project Category: (Kernel/Protocol/Services/Application/Support)
14 #. Project Labels: (List keywords and tags and fit the description of your project comma separated)
15 #. Project PTL: (name/email/IRC)
16 #. Do you confirm that the list of Project Committers is updated and accurate? (Yes/No)
17
18 [1] https://wiki.opendaylight.org/view/Simultaneous_Release:Carbon_Release_Plan#M0:_Declare_Intent
19
20
21 M1: Draft Plan
22 --------------
23
24 (Project Name)
25
26 #. Project Lead Contact: (name/email/IRC)
27 #. Review PTL Requirements [1].
28 #. Project Contact: (name/email/IRC)
29 #. Test Contact: (name/email/IRC)
30 #. Documentation Contact (name/email/IRC)
31 #. Draft Release Plan: (wiki link)
32
33    ** FOR NEW PROJECTS ONLY **
34
35 #. Project Main Page: (wiki link) Use Project Facts Template [2].
36
37 [1] Be sure to read the responsibilities of being a project lead under Leadership & Communication
38 in the Requirements for Participation section of the release plan:
39 https://wiki.opendaylight.org/view/Simultaneous_Release:Carbon_Release_Plan#Requirements_for_Participation
40
41 [2] https://wiki.opendaylight.org/view/Template:Project_Facts
42
43
44 M2: Final Release Plan
45 ----------------------
46
47 (Project Name)
48
49 1. Does your project have any updates on any previously-incomplete items from prior milestone
50    readouts?  (Yes/No)
51
52    * (If yes, list updates)
53
54 2. Were project-specific deliverables planned for this milestone delivered successfully? (No
55    Deliverables/Yes/No)
56
57    * (If no, list incomplete deliverables)
58
59 3. Does your project have any special needs in CI Infrastructure [2]?  (Yes/No)
60
61    * (If yes, link to helpdesk ticket number)
62
63 4. Is your project release plan finalized?  (Yes/No)
64
65    * (If yes, link to final release plan wiki page)
66    * (If no, ETA to finalize release plan)
67
68 5. Do you have all APIs intended to be externally consumable listed? (Yes/No)
69
70    * Does each API have a useful short name? (Yes/No)
71    * Are the Java interface and/or YANG files listed for each API? (Yes/No)
72    * Are they labeled as tentative, provisional, or stable as appropriate for each API? (Yes/No)
73    * Do you call out the OSGi bundles and/or Karaf features providing the API for each API?
74      (Yes/No)
75
76 6. Have all project dependencies requests on other project's release plans been acknowledged and
77    documented by upstream projects?  (Yes/No)
78
79    * (List of all project dependencies and if they have been acknowledged, unacknowledged)
80
81 7. Will your project have top-level features not requiring system test? (Yes/No)
82
83    * (If yes, link to system test waiver request email)
84
85 8. Will your project use the OpenDaylight CI infrastructure for testing top-level features
86    requiring system test? (Yes/No)
87
88    * (If no, link to system test plan explaining why [3])
89    * (If no, link to system test plan identifying external lab testing [4])
90
91    ** FOR NEW PROJECTS ONLY **
92
93 9. Have you completed the project checklist [1]? (Yes/No)
94
95    * (link to a merged patch in gerrit)
96    * (link to a mail from your mailing list)
97    * (link to a bug for your project; you can create a dummy one and close it if need be)
98    * (link to an artifact published from your project in nexus)
99    * (link to a sonar report)
100    * (link to your root pom file)
101
102 [0] https://wiki.opendaylight.org/view/Simultaneous_Release:Carbon_Release_Plan
103
104 [1] https://wiki.opendaylight.org/view/GettingStarted:Project_Main#New_Project_Checklist
105
106 [2] Special needs include tools or configuration.  Note that generally, the only available tools in
107 CI are basic RHEL/CentOS linux images with Java. You should note and ask for anything beyond that
108 here.  Email helpdesk@opendaylight.org
109
110 [3] It is recommended to use the OpenDaylight CI infrastructure unless there is some HW or SW
111 resource that cannot be installed there.  Update the test plan with explanation on why your
112 top-level features will not be using the OpenDaylight CI Infrastructure:
113 https://wiki.opendaylight.org/view/CrossProject:Integration_Group:Feature_Integration_System_Test_Template#Test_Infrastructure
114
115 [4] Projects running system test in external Labs are required to report system test results in a
116 timely fashion after release creations, e.g., weekly, RC, and formal releases.  Update the test
117 plan with plans on testing in external lab:
118 https://wiki.opendaylight.org/view/CrossProject:Integration_Group:Feature_Integration_System_Test_Template#Test_Infrastructure
119
120 M3: Functionality Freeze
121 ------------------------
122
123 <Project Name>
124
125 Please provide updates on any previously-incomplete items from prior milestone readouts.
126
127 Functionality Freeze:
128
129 #. Final list of externally consumable APIs defined: Yes/No
130
131    * If you had an Tentative APIs, have they been moved to Provisional or dropped? Yes/No (link to
132       release plan)
133    * If any of your Tentative APIs were dropped, have you notified all projects that were expecting
134      them? Yes/No (link to e-mail)
135
136      * Also please list all dropped APIs.
137
138 #. Are all your inter-project dependencies are resolved (i.e., have the other projects you were
139    counting on given you what you needed)? Yes/No
140
141    * If no, please list the features you were expecting that haven't been delivered and the project
142      you were expecting to receive them from.
143    * Note that you can only reasonably hold a a project to something if you formally asked for it
144      during the release planning process and they acknowledged that ask saying they would do it.
145
146 #. Were there any project-specific deliverables planned for this milestone? Yes/No
147
148    * If so, were they delivered? Yes/No
149
150 Karaf Features Defined:
151
152 #. Are all your project's features that are intended for release added to the features.xml and
153    checked into integration git repository. Yes/No (please provide link to the gerrit patch)
154 #. List all top-level, user-facing, and stable Karaf features for your project.
155
156    * For top-level and user-facing features, please provide a one-sentence description which a
157      developer and/or user would find helpful.
158
159 Documentation:
160
161 #. List the kinds of documentation you will provide including at least:
162
163    * One user/operator guide section per user-facing feature.
164    * One developer guide per top-level feature.
165    * An installation guide for any top-level features that require more than ``feature:install
166      <feature-name>`` to install.
167    * Optional tutorials and how tos.
168
169 #. Have you checked in an AsciiDoc outline to the docs repository? Yes/No (link to gerrit patch)
170
171 Integration and Test:
172
173 #. Have you started automated system testing for your top-level features. Yes/No
174
175    * If yes, link to test report
176    * If no, why?
177
178 #. Have you filled out basic system test plan template for each top-level feature (karaf and not
179    karaf) and a comprehensive system test plan template including functionality, cluster,
180    scalability, performance, longevity/stability for each stable feature? Yes/No
181
182    * If yes, link to test plans
183    * If no, why?
184
185 Project Specific:
186
187 #. Were there any project-specific deliverables planned for this milestone? Yes/No
188
189     * If so, were they delivered? Yes/No
190
191 #.  Have you updated your project facts with the project type category? Yes/No
192 #.  Do you acknowledge the changes to the RC Blocking Bug Policy for Carbon Release [1]? Yes/No
193
194 [1] https://lists.opendaylight.org/pipermail/tsc/2016-December/006468.html
195
196
197 M4: API Freeze
198 --------------
199
200 <Project Name>
201
202 #. Please provide updates on any previously-incomplete items from prior milestone readouts.
203 #. Has your project achieved API freeze such that all externally accessible Stable or Provisional
204    APIs will not be modified after now? (Yes/No)
205
206    * (Link to gerrit search for patches modifying the API [1])
207
208 #. Do you have content in your project documentation? (Yes/No)
209
210    * (For each document, provide current word count)
211    * (For each document, link to the file in gerrit)
212    * (Link to pending gerrit patches waiting approval)
213
214 #. Has your project met the requirements to be included in Maven Central [2]? (Yes/No)
215 #. Were project-specific deliverables planned for this milestone delivered successfully? (No
216    Deliverables/Yes/No)
217 #. Have you started automated system testing for your top-level features. (Yes/No)
218
219    * (If yes, link to test report)
220    * (If no, explain why)
221
222 #. Does your project use any ports, including for testing? (Yes/No)
223
224    * (If yes, list of ports used)
225    * (If yes, have you updated the wiki [3] with all ports used? Yes/No)
226
227 #. Does your project build successful in Autorelease?
228
229    * (If yes, link to successful autorelease job [4])
230    * (If not, explain why)
231
232
233 [1] Provide a link to a gerrit search for patches modifying the files defined as specifying the
234 API. For example:
235 https://git.opendaylight.org/gerrit/#/q/file:%255Eopendaylight/md-sal/sal-binding-api/.%252B+status:merged+project:controller
236
237 [2] http://central.sonatype.org/pages/requirements.html
238
239 [3] https://wiki.opendaylight.org/view/Ports
240
241 [4] https://wiki.opendaylight.org/view/RelEng/Autorelease/Project_Autorelease_Requirements
242
243
244 M5: Code Freeze
245 ---------------
246
247 <Project Name>
248
249 #. Please provide updates on any previously-incomplete items from prior milestone readouts.
250 #. Has your project met code freeze, i.e., only bug fixes are allowed from now on? (Yes/No)
251 #. Are all externally visible strings frozen to allow for translation & documentation? (Yes/No)
252 #. Is your documentation complete such that only editing and enhancing should take place after this
253    point? (Yes/No)
254
255    * (For each document, link to the file in gerrit)
256    * (Link to pending gerrit patches waiting approval)
257
258 #. Were project-specific deliverables planned for this milestone delivered successfully? (No
259    Deliverables/Yes/No)
260 #. Are you running at least one basic automated system test job for each top-level feature?
261    (Yes/No)
262
263    * (If yes, link to test report)
264    * (If not, explain why)
265
266 Stables Features (Only for Projects with Stable Features)
267
268 #. Do your stable features fulfill quality requirements (i.e. unit and/or integration test coverage
269    of at least 75%)? (Yes/No)
270
271    * (If yes, link to sonar report)
272    * (If not, explain why)
273
274 #. Are you running several automated system test jobs including functionality, cluster,
275    scalability, performance, longevity/stability for each stable feature? (Yes/No)
276
277    * (If yes, link to test reports)
278    * (If not, explain why)
279
280
281 RCX: Release Candidate Testing
282 ------------------------------
283
284 <Project Name>
285
286 #. Have you tested your code in the release candidate? Yes/No (provide a link to the release
287    candidate you tested)
288
289    * If yes, did you find any issues?
290    * If you found issues, do you believe any of them should block this release of OpenDaylight
291      until they are resolved?
292    * Please list all the issues and note if they are blocking.