OOM Dublin - M2 Functionality Freeze Milestone Checklist

DRAFT PROPOSAL FOR COMMENTS

The following items are expected to be completed for the project to Pass the M2 Functionality Freeze Milestone.

M2 Release Functionality Freeze Milestone definition.



Usage

  1. Use the "Copy" and "Move" options (available under the ..., top right of this page) to duplicate this template into your project wiki.

  2. Fill out the Yes/No column

  3. Provide link to evidence (when necessary)



Practice Area

Checkpoint

Yes/No

Evidence - Comment

How to?

Practice Area

Checkpoint

Yes/No

Evidence - Comment

How to?

Product Management

Are all provisional APIs interface (stub) been defined (at beta-quality level)? 

N/A



OOM Provides no APIs

Is there a final list of externally consumable APIs available?

N/A



OOM Provides no APIs

For all completed Sprints, have Sprint Backlog Stories been marked as "Closed" in Jira?

Yes

Project Backlog

Sprint Planning Board

Difference between a Product and Sprint Backlog

Are all tasks associated with the completed Sprint Backlog Stories been marked as "Closed" in Jira?

Yes

 



If applicable to your project, has your team been able to clear the project' blockers? If not provide status on the plan to close the blocker(s).

No

Dublin Risks - #16 & 17

Dublin Risks - #16 & 17

What new features or changes to existing features in this project scope need to be communicated to VNF Providers? List the changes in the Evidence tab.

None





If yes to the previous question, have these been communicated to the VNF Requirements project? 

N/A





Release Management


Have all source code files been updated with License Apache 2 header?

Yes



Specific rules and instruction are available in ONAP wiki.

Has the year format in copyright header of all source code files been updated? (Rules for new files created in 2019 and existing files modified in 2019 are different)



During ongoing development of Dublin features, all new and modified files will include current year 2019.

Guidance on year format

In case source code can't be edited, has a "License.txt" file been placed at the root directory for which the license is applicable?

Yes

OOM Global License File

Guidance for source code file that can't be edited

(a) Has the Project Team added appropriate license and copyright notices to all ONAP source code and documentation files, where possible for the particular file format?

Yes





(b) Has the Project Team reviewed and understood the most recent license scan reports from the LF, for both (a) licenses within the codebase and (b) licenses for third-party build time dependencies?

Yes

No violations see report



For both (a) and (b) questions, have all high priority non-Project Licenses been either removed, planned for removal before code freeze, or escalated as likely exception requests?

N/A





Have all API projects dependencies been captured?

N/A

OOM provides no APIs.

The source of information for the API dependency is the "API Incoming Dependency" of the M1 Release Planning deliverable. Please update the source accordingly, and let The Release Manager aware of the changes.

Development

For new projects approved for this release, have all defined repositories source code been placed into Gerrit?

Yes

New oom/offline-installer subproject created with source code.

For evidences, provide link(s) to Gerrit repos by providing the URL as shown in this example

Example

Has the project team reach the Automated Unit Test Code Coverage expectation? (Refer to artifacts available in Sonar)

N/A

Helm/Kubernetes do not have unit tests and is not supported by Sonar. See Sonar OOM Results

Guidance on Code Coverage and Static Code Analysis

Tools: Sonar

Is there any binaries (jar, war, tar, gz, gzip, zip files) in Gerrit project repository?

No



Refer to CI Development Best Practices

Could you ensure that all proprietary trademarks, logos, product names, company name, etc. have been removed? All ONAP deliverables must comply with this rule and be agnostic of any proprietary symbols.

Yes





Is there any pending commit request older than 36 business hours in Gerrit?

Yes

https://gerrit.onap.org/r/#/q/status:open+label:verified+-is:draft+-label:Code-Review%253D-1+AND+-label:Code-Review%253D-2+AND+is:mergeable+age:1week+AND+project:oom





Have all the Jenkins jobs successfully passed (Merge-Jobs)?

Yes

OOM CD Jenkins Jobs



Are all snapshot binaries available in Nexus?

No

https://nexus.onap.org/content/sites/oom-helm-staging/

Dublin Risks #17



Integration and Testing  

Have functional test cases i.e. CSIT been documented in wiki?

It should include at least 1 or 2 CSIT that will be run on

Lab-xxx-OOM-Daily Jenkins Job

N/A

OOM is used to deliver CSIT for the project teams.



Have you implemented in Jenkins at least 1 functional test case for each of the project repository?

Yes

Functional testing of ONAP using ROBOT health checks, validates OOM deployments as seen in Auto Continuous Deployment via Jenkins and Kibana

As an example (provided by Integration Team)



Has the project code successfully passed the Build process?

Yes

Project code is in the form of Helm Charts per project team. While patches for Helm Charts are reviewed, tested and merged by OOM, builds may not always pass do to integration errors between applications. OOM CD Jenkins Jobs

Goal is to ensure your project latest commits have not broken the build.

Documentation

Has the team identified and outlined the set of documentations to be delivered in this Release?

Yes

Updates will be made to the official OOM User, Developer and Cloud Setup Guides at readthedocs in response to the user stories being delivered in Dublin.



Security

Has the Release Security/Vulnerability table been updated in the   protected Security Vulnerabilities wiki space?

N/A

Table in in the protected Security Vulnerabilities wiki space   corresponding to the latest NexusIQ scan

PTL reviews the NexusIQ scans for their project repos and fills out   the vulnerability review table

Have all project containers been designed to run as a non-root user?

Yes



 https://wiki.onap.org/display/DW/Best+Practices

  • The Docker and Kubernetes engines may run as root until such time as the products support non-root execution.

  • Applications may run as root within a container.

  • The process ID of a container must not run as the root ID with the exception of containers supporting ONAP features that require the container to run as the root ID.

  • Containers may run with root privileges.

  • Project containers that run as the root ID must document this in the release notes along with the functionality that requires the container to run as the root ID.