Commit fb103688 authored by Raphael Defosseux's avatar Raphael Defosseux Committed by Sagar Arora
Browse files

Initial Commit

Signed-off-by: Raphael Defosseux's avatarRaphael Defosseux <>
parent a4265990
<<<<<<< HEAD
## v1.0.0 -- Jan 2021 ##
## vX.X.X -- YYY 2021 ##
>>>>>>> Initial Commit
* Initial release
# Contributing to OpenAir-CN-5G #
We want to make contributing to this project as easy and transparent as possible.
Please refer to the steps described on our website: [How to contribute to OAI](
1. Sign and return a Contributor License Agreement to OAI team.
2. Create an account on [Eurecom GiLab Server]( if you do not have any.
- If your email domain (``) is not whitelisted, please contact us (
- Eurecom GitLab does NOT accept public email domains.
3. Provide the `username` of this account to the OAI team ( so you have developer rights on this repository.
4. The policies are described in these wiki pages: [OAI Policies](
- You can fork onto another hosting system. But we will **NOT** accept a pull request from a forked repository.
* This decision was made for the license reasons.
* The Continuous Integration will reject your pull request.
- All pull requests SHALL have **`develop`** branch as target branch.
## Coding Styles ##
We are using `clang-format` as formatting tool on the C/C++ code.
At the time of writing (March 30th, 2020), we are using `clang-format` version 8.0.0 or above. By default, on a Ubuntu bionic Desktop edition, you would install version 6.0.0.
So it is very likely you will have to install it manually. Again, at the time of writing, the working version we found was 9.0.0.
$ wget
$ mkdir clang_tmp
$ tar xvfJ clang+llvm-9.0.0-x86_64-linux-gnu-ubuntu-18.04.tar.xz -C ./clang_tmp
$ sudo cp clang_tmp/clang+llvm-9.0.0-x86_64-linux-gnu-ubuntu-18.04/bin/clang-format /usr/bin/clang-format
$ rm -Rf clang*
$ clang-format --version
clang-format version 9.0.0 (tags/RELEASE_900/final)
How to format:
$ cd myClonedWorkspace/src
$ clang-format -i theFilesYouWantToFormat
## License ##
By contributing to OpenAirInterface, you agree that your contributions will be licensed under the [LICENSE](LICENSE) file in the root directory of this source tree.
## Continuous Integration process ##
1. You push your modified code with the new branch onto our [official GitLab repository](
- Please make the name of the branch explicit and short.
2. You create a pull request from the [dedicated web page](
- The `target` (`base` in the web-page) branch **SHALL be `develop`**.
- The `source` (`compare` in the web-page) branch is your branch.
3. Our Continuous Integration (CI) process will be triggered automatically on your proposed modified code and check the validity.
- Check build
- Check some formatting rules
- Run a bunch of tests
4. If at least one of these steps fails, you will have to push corrections onto your source branch.
- The step 3. will be again automatically triggered on this new commit.
- Please wait that your run is finished before committing and pushing new modifications on your source branch.
- That will allow fairness on the CI usage to other contributors.
4. When this automated process passes, one of our CI administrators will review your changes or assign a senior contributor
to do a peer-review.
5. Once the peer reviewer accepts your modification, one of our CI administrators will accept and merge your pull request
- The CI will run again on the new `develop` branch commit.
- The source branch WILL be deleted by one of our CI administrators.
......@@ -56,6 +56,7 @@ The OpenAirInterface CN NRF software is composed of the following parts:
<<<<<<< HEAD
├── 3gpp-specs: Directory containing 3GPP specification files (YAML) used to implement NRF network function.
├── build: Build directory, contains targets and object files generated by compilation of network functions.
├── log: Directory containing build log files.
......@@ -71,4 +72,9 @@ openair-cn5g-nrf
├── oai_nrf: NRF main directory, contains the "main" CMakeLists.txt file.
├── nrf_app: NRF network functions procedures and contexts.
└── test: Directory containing some example profiles for e.g., AMF, SMF.
├── ci-scripts: Directory containing the script files for CI framework.
└── src: Source files of NRF.
├── common: Common header files
>>>>>>> Initial Commit
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment