... | ... | @@ -40,11 +40,55 @@ The Jenkins service is hosted on `oailab.eurecom.fr` server. The requirements fo |
|
|
* Visible for the World Wide Web:
|
|
|
* Build logs can be read by any developer/contributor
|
|
|
* Visible from / to GitLab Eurecom server
|
|
|
* Does not have strong processing power requirements since most of the processing is deported to remote nodes.
|
|
|
|
|
|
## 2.2. Pipeline executor ##
|
|
|
|
|
|
The remote node where the Jenkins Declarative Pipeline will be executed is selected in 2 ways:
|
|
|
|
|
|
* Explicitely inside the Jenkins Pipeline script:
|
|
|
|
|
|
```java
|
|
|
pipeline {
|
|
|
agent {
|
|
|
label 'nodea'
|
|
|
}
|
|
|
...
|
|
|
}
|
|
|
```
|
|
|
|
|
|
* As a Jenkins Job parameter:
|
|
|
|
|
|
```groovy
|
|
|
#!/bin/groovy
|
|
|
def pythonExecutor = params.pythonExecutor
|
|
|
|
|
|
pipeline {
|
|
|
agent {
|
|
|
label pythonExecutor
|
|
|
}
|
|
|
...
|
|
|
}
|
|
|
```
|
|
|
|
|
|
The first method is fundamental for the master CI job since it requires a remote note with:
|
|
|
|
|
|
* A lot of processing power
|
|
|
* Pre-installed uvt-kvm tool with pre-downloaded VM images
|
|
|
|
|
|
The second method is fundamental for the slave jobs since scripts are template and most of the job information are parameters of the Jenkins job.
|
|
|
|
|
|
## 2.3. EPC server dedicated for eNB CI ##
|
|
|
|
|
|
This server is dedicated to eNB continuous integration effort. Developers **SHALL** be using another server for development work since CI can be triggered at anytime and can start/stop EPC functions.
|
|
|
|
|
|
In our eNB CI environment, usually we connect only one eNB at once and only a few COTS-UE. So the processing requirement is not that high.
|
|
|
|
|
|
We are using 2 variants of EPC:
|
|
|
|
|
|
1. ltebox (Nokia Bell Labs LTE EPC software). At time of writing, the version was `2.2.70`.
|
|
|
2. OAI openair-cn
|
|
|
|
|
|
## 2.4. eNB test servers ##
|
|
|
|
|
|
## 2.5. UE control servers ##
|
... | ... | |