遵循以下最佳实践的项目将能够自愿的自我认证,并显示他们已经实现了核心基础设施计划(OpenSSF)徽章。 显示详细资料
[](https://www.bestpractices.dev/projects/4611)
<a href="https://www.bestpractices.dev/projects/4611"><img src="https://www.bestpractices.dev/projects/4611/badge"></a>
The Non-RealTime RIC (RAN Intelligent Controller) is an Orchestration and Automation function described by the O-RAN Alliance for non-real-time intelligent management of RAN (Radio Access Network) functions. The primary goal of the NONRTRIC is to support non-real-time radio resource management, higher layer procedure optimization, policy optimization in RAN, and providing guidance, parameters, policies and AI/ML models to support the operation of near-RealTime RIC functions in the RAN to achieve higher-level non-real-time objectives. NONRTRIC functions include service and policy management, RAN analytics and model-training for the near-RealTime RICs. The non-RealTime RIC project provides concepts, architecture and reference implementations as defined and described by the O-RAN Alliance architecture.
Code style: https://wiki.o-ran-sc.org/display/RICNR/Code+Style
Gerrit rejects commits that are not signed off. Gerrit commits are rejected unless user has agreed to the CLA https://wiki.o-ran-sc.org/display/ORAN/CLA
PTL and Commiters are identified on https://wiki.o-ran-sc.org/display/RICNR and in "info.yaml" files at the root of each repository.
An architecture description is provided for each release: e.g. https://wiki.o-ran-sc.org/display/RICNR/Release+A https://wiki.o-ran-sc.org/display/RICNR/Release+B https://wiki.o-ran-sc.org/display/RICNR/Release+C
A "Build&Run" page for each release is provided: e.g. https://wiki.o-ran-sc.org/pages/viewpage.action?pageId=12157768 https://wiki.o-ran-sc.org/pages/viewpage.action?pageId=20873402 https://wiki.o-ran-sc.org/pages/viewpage.action?pageId=20878049
All defects - including documentation - can be provided to the project team - and will be fixed as high priority https://wiki.o-ran-sc.org/pages/viewpage.action?pageId=20877888
A "News" section is provided on the project wiki page: https://wiki.o-ran-sc.org/display/RICNR
Gerrit maintains a branch and tag for each release Individual documentation for each release is provided. Developer guides are provided on the wiki for each release.
JIRA: https://jira.o-ran-sc.org/projects/NONRTRIC/issues
https://wiki.o-ran-sc.org/display/RICNR/Code+Style
Handled by Maven
Installation instructions for Docker & Kubernetes is included for each release: e.g. https://wiki.o-ran-sc.org/display/RICNR/Release+A https://wiki.o-ran-sc.org/display/RICNR/Release+B https://wiki.o-ran-sc.org/display/RICNR/Release+C
Handled by maven install, docker, and helm.
A full test suite is also provided to demonstrate functionality, and test new functions.
Listed in Maven POM files in each project Binary dependencies are visible in docker compose files in repositories, sample helm charts in repositories, and sample helm charts on wiki.
警告:需要URL,但找不到URL。
Performed as part of vulnerability scans.
Tests are automatically executed by Jenkins at every commit, merge and release.
Test suite performs regression tests and interoperability test for current & previous verions
Test coverage is verified by Sonar. Additional opensource test suite provided as part of project.
All contributions - including major functional changes must be accompanied by tests. https://wiki.o-ran-sc.org/display/RICNR/Code+Style
Only informal rule exists, tests are continuously added in practice All contributions should include tests, as described at NONRTRIC: Code Style: https://wiki.o-ran-sc.org/display/RICNR/Code+Style
Taken on a case by case basis.
All Checkstyle, Findbugs, test failures, notified issues/bugs and Sonar warnings are acted on promptly.
Such issues are tracked using Jira and Gerrit (See above).
Does not depend on any any particular cryptographic algorithm. A cert may be signed using SHA-1, but it is up to the cert issuer.
It is the responsibility of the production user to ensure their keys are compliant.
Sample certs are signed.
Commonly used existing opensource cryptographic libraries are used Libraries support a variety of cryptographic algorithms - negotiated automatically depending on cert/key type used. Standard/best-practice TLS/HTTPS implementations are used. Java, Jetty, Netty, Springboot.
All TLS connections support version 1.2 and 1.3. However TLS version used depends on runtime environment - client & server negotiate which version to use at conenction setup time. Standard/best-practice TLS/HTTPS implementations are used. Java, Jetty, Netty, Springboot.
Where TLS is used, certs/keys must be configured.
Standard/best-practice TLS/HTTPS implementations are used. Java, Jetty, Netty, Springboot.
Sonar is used in development environment and automatically triggered by Jenkins during CI/CD process
Jenkins: https://jenkins.o-ran-sc.org/view/nonrtric/job/nonrtric-sonar/ https://jenkins.o-ran-sc.org/view/portal-nonrtric-controlpanel/job/portal-nonrtric-controlpanel-sonar/ https://jenkins.o-ran-sc.org/view/sim-a1-interface/job/sim-a1-interface-tox-sonarqube/
Findbugs and Checkstyle is used in development environments NexusIQ (from Sonatype) is also used - focuses on license scan and performs a CVE scan based on versions used. A per-release license scan based is performed for LF Legal - uses a LF-internal scanning.
Java, Python is used.
后退