遵循以下最佳实践的项目将能够自愿的自我认证,并显示他们已经实现了核心基础设施计划(OpenSSF)徽章。 显示详细资料
[](https://www.bestpractices.dev/projects/1578)
<a href="https://www.bestpractices.dev/projects/1578"><img src="https://www.bestpractices.dev/projects/1578/badge"></a>
ONAP Standardized logging project that provides centralized set of logging guidelines for ONAP, Reference Implementation and a runtime ELK stack in OOM for ONAP
https://wiki.onap.org/display/DW/Development+Procedures+and+Policies https://wiki.onap.org/display/DW/Committer+Best+Practices
This is not yet defined for all of ONAP. It is anticipated to be available in a future release.ONAP requires both a Developer Certificate of Origin (DCO), and a Contributor License Agreement (CLA). https://wiki.onap.org/display/DW/Contribution+Agreements
The project governance is described at https://wiki.onap.org/display/DW/Community+Offices+and+Governance Further information can be found at https://wiki.onap.org/display/DW/ONAP+Technical+Community+Document
ONAP adheres to the Linux Foundation Code of Conduct, found at https://lfprojects.org/policies/code-of-conduct/
The key roles in the project and their responsibilities are described at https://wiki.onap.org/display/DW/Community+Offices+and+Governance Current members are listed at https://wiki.onap.org/pages/viewpage.action?pageId=8226539
For Logging Enhancement project, we have 4 committers (https://wiki.onap.org/display/DW/Logging+Team). All 4 committers have access and rights to maintain the code base, approve and review incoming changes and release a new version of the artifact. This will let the project continue with minimal to no interruption if one person is incapacitated. Also this project is controlled by the linux foundation so we can add more committers if needed
The project covered in this report have more than 2 persons who actively contribute and maintain code. https://gerrit.onap.org/r/q/project:logging-analytics+branch:master
https://wiki.onap.org/display/DW/Logging+Enhancements+Project+Proposal
https://wiki.onap.org/display/DW/Logging+User+Guide
Information on setting up ONAP can be found at https://onap.readthedocs.io/en/latest/guides/onap-developer/settingup/index.html
Documentation is updated on a regular bases when needed.
Badge is referenced by top-level project page: https://wiki.onap.org/display/DW/Logging+Enhancements+Project
Logging project has no GUI, it's all REST API based.
Any passwords used in the project are stored in gerrit and are obfuscated.
All major releases are tagged in gerrit and the artifacts are stored with the release information on onap.nexus. So we can access all old versions of the artifact. If and when a upgrade requires certain steps to be followed they are being added to the release documents as needed
https://jira.onap.org/secure/RapidBoard.jspa?rapidView=53&view=planning.nodetail
https://wiki.onap.org/pages/viewpage.action?pageId=51282493
Coding style is defined in https://wiki.onap.org/display/DW/Java+code+style
maven-checkstyle-plugin
The application does not create native binaries.
All releases are tagged in gerrit(git), and the builds are controlled using jenkins. By providing the git tag information the same image can be build over and over again with same bit-for-bit result.
Logging project can be easily install and uninstall using helm to a Kubernetes environment.
This is controlled by Dockerfile.
All the components require only java and maven to begin with for a developer to quickly install and test it. Even for deployment using OOM and the right amount of resources, we can deploy the full LOGGING/ONAP suite in less than a day. The steps are documented in https://onap.readthedocs.io/en/latest/submodules/oom.git/docs/oom_quickstart_guide.html
External dependencies are controlled using the pom file, which can be found in the root folder for each of the sub-projects, such as https://gerrit.onap.org/r/gitweb?p=logging-analytics.git;a=blob;f=pom.xml;h=390c0763d5561fde3702ca7429f1478b3e80a631;hb=refs/heads/master
ONAP uses sonatype CLM: https://jenkins.onap.org/view/logging-analytics/job/logging-analytics-maven-clm-master/
External components are maintained through Maven. The user can get a list of all included components using the maven dependency tree and can update or reuse as they see fit
We choose free open source solutions in every case and choose up-to-date versions of the components (aligned with the overall framework releases we adopt).
https://jenkins.onap.org/view/logging-analytics/ - on every commit, a verification job runs which runs an automated test suite. The code check-in cannot pass with out jenkins posting a +1 on the review.
Project uses JUnit to run automated unit tests and there are at least 50% of bugs fixed within the last 6 months.
Project uses JUnit to run automated unit tests.
Contributing guide lines for development is recorded in https://wiki.onap.org/display/DW/Development+Procedures+and+Policies
The code coverage requirement is listed as a developer best practice here: https://wiki.onap.org/display/DW/Code+Coverage+and+Static+Code+Analysis
Build systems run the compile with test flag enabled by default. So any failure in test cases will fail the ci and the merge request.
https://sonar.onap.org/dashboard?id=org.onap.logging-analytics%3Alogging-analytics
Our project is written in memory-safe languages (Java and Python)
后退