Merge remote-tracking branch 'origin/develop-nr' into nr-polar-encoder-optimizations
This commit is contained in:
@@ -118,7 +118,7 @@ pipeline {
|
|||||||
stage ("Start VM -- basic-sim") {
|
stage ("Start VM -- basic-sim") {
|
||||||
steps {
|
steps {
|
||||||
timeout (time: 5, unit: 'MINUTES') {
|
timeout (time: 5, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/buildOnVM.sh --workspace $WORKSPACE --variant basic-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant basic-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -126,7 +126,7 @@ pipeline {
|
|||||||
stage ("Start VM -- gnb-usrp") {
|
stage ("Start VM -- gnb-usrp") {
|
||||||
steps {
|
steps {
|
||||||
timeout (time: 5, unit: 'MINUTES') {
|
timeout (time: 5, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/buildOnVM.sh --workspace $WORKSPACE --variant gnb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant gnb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -134,7 +134,7 @@ pipeline {
|
|||||||
stage ("Start VM -- nu-ue-usrp") {
|
stage ("Start VM -- nu-ue-usrp") {
|
||||||
steps {
|
steps {
|
||||||
timeout (time: 5, unit: 'MINUTES') {
|
timeout (time: 5, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/buildOnVM.sh --workspace $WORKSPACE --variant nu-ue-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant nu-ue-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -142,7 +142,7 @@ pipeline {
|
|||||||
stage ("Start VM -- enb-usrp") {
|
stage ("Start VM -- enb-usrp") {
|
||||||
steps {
|
steps {
|
||||||
timeout (time: 5, unit: 'MINUTES') {
|
timeout (time: 5, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/buildOnVM.sh --workspace $WORKSPACE --variant enb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant enb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -150,7 +150,7 @@ pipeline {
|
|||||||
stage ("Start VM -- enb-ethernet") {
|
stage ("Start VM -- enb-ethernet") {
|
||||||
steps {
|
steps {
|
||||||
timeout (time: 5, unit: 'MINUTES') {
|
timeout (time: 5, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/buildOnVM.sh --workspace $WORKSPACE --variant enb-ethernet --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant enb-ethernet --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -158,7 +158,7 @@ pipeline {
|
|||||||
stage ("Start VM -- ue-ethernet") {
|
stage ("Start VM -- ue-ethernet") {
|
||||||
steps {
|
steps {
|
||||||
timeout (time: 5, unit: 'MINUTES') {
|
timeout (time: 5, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/buildOnVM.sh --workspace $WORKSPACE --variant ue-ethernet --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant ue-ethernet --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -166,7 +166,7 @@ pipeline {
|
|||||||
stage ("Start VM -- phy-sim") {
|
stage ("Start VM -- phy-sim") {
|
||||||
steps {
|
steps {
|
||||||
timeout (time: 5, unit: 'MINUTES') {
|
timeout (time: 5, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/buildOnVM.sh --workspace $WORKSPACE --variant phy-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant phy-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -174,7 +174,7 @@ pipeline {
|
|||||||
stage ("Start VM -- cppcheck") {
|
stage ("Start VM -- cppcheck") {
|
||||||
steps {
|
steps {
|
||||||
timeout (time: 5, unit: 'MINUTES') {
|
timeout (time: 5, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/buildOnVM.sh --workspace $WORKSPACE --variant cppcheck --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
sh "./ci-scripts/oai-ci-vm-tool build --workspace $WORKSPACE --variant cppcheck --job-name ${JOB_NAME} --build-id ${BUILD_ID} --daemon"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -185,7 +185,7 @@ pipeline {
|
|||||||
steps {
|
steps {
|
||||||
gitlabCommitStatus(name: "Analysis with cppcheck") {
|
gitlabCommitStatus(name: "Analysis with cppcheck") {
|
||||||
timeout (time: 20, unit: 'MINUTES') {
|
timeout (time: 20, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/waitBuildOnVM.sh --workspace $WORKSPACE --variant cppcheck --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
sh "./ci-scripts/oai-ci-vm-tool wait --workspace $WORKSPACE --variant cppcheck --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -194,7 +194,7 @@ pipeline {
|
|||||||
steps {
|
steps {
|
||||||
gitlabCommitStatus(name: "Build eNb-USRP") {
|
gitlabCommitStatus(name: "Build eNb-USRP") {
|
||||||
timeout (time: 20, unit: 'MINUTES') {
|
timeout (time: 20, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/waitBuildOnVM.sh --workspace $WORKSPACE --variant enb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
sh "./ci-scripts/oai-ci-vm-tool wait --workspace $WORKSPACE --variant enb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -203,7 +203,7 @@ pipeline {
|
|||||||
steps {
|
steps {
|
||||||
gitlabCommitStatus(name: "Build basic-sim") {
|
gitlabCommitStatus(name: "Build basic-sim") {
|
||||||
timeout (time: 20, unit: 'MINUTES') {
|
timeout (time: 20, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/waitBuildOnVM.sh --workspace $WORKSPACE --variant basic-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
|
sh "./ci-scripts/oai-ci-vm-tool wait --workspace $WORKSPACE --variant basic-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -212,7 +212,7 @@ pipeline {
|
|||||||
steps {
|
steps {
|
||||||
gitlabCommitStatus(name: "Build eNb-ethernet") {
|
gitlabCommitStatus(name: "Build eNb-ethernet") {
|
||||||
timeout (time: 20, unit: 'MINUTES') {
|
timeout (time: 20, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/waitBuildOnVM.sh --workspace $WORKSPACE --variant enb-ethernet --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
|
sh "./ci-scripts/oai-ci-vm-tool wait --workspace $WORKSPACE --variant enb-ethernet --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -221,7 +221,7 @@ pipeline {
|
|||||||
steps {
|
steps {
|
||||||
gitlabCommitStatus(name: "Build UE-ethernet") {
|
gitlabCommitStatus(name: "Build UE-ethernet") {
|
||||||
timeout (time: 20, unit: 'MINUTES') {
|
timeout (time: 20, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/waitBuildOnVM.sh --workspace $WORKSPACE --variant ue-ethernet --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
|
sh "./ci-scripts/oai-ci-vm-tool wait --workspace $WORKSPACE --variant ue-ethernet --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -230,7 +230,7 @@ pipeline {
|
|||||||
steps {
|
steps {
|
||||||
gitlabCommitStatus(name: "Build gNb-usrp") {
|
gitlabCommitStatus(name: "Build gNb-usrp") {
|
||||||
timeout (time: 20, unit: 'MINUTES') {
|
timeout (time: 20, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/waitBuildOnVM.sh --workspace $WORKSPACE --variant gnb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
sh "./ci-scripts/oai-ci-vm-tool wait --workspace $WORKSPACE --variant gnb-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -239,7 +239,7 @@ pipeline {
|
|||||||
steps {
|
steps {
|
||||||
gitlabCommitStatus(name: "Build nr-UE-usrp") {
|
gitlabCommitStatus(name: "Build nr-UE-usrp") {
|
||||||
timeout (time: 20, unit: 'MINUTES') {
|
timeout (time: 20, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/waitBuildOnVM.sh --workspace $WORKSPACE --variant nu-ue-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
sh "./ci-scripts/oai-ci-vm-tool wait --workspace $WORKSPACE --variant nu-ue-usrp --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -248,7 +248,7 @@ pipeline {
|
|||||||
steps {
|
steps {
|
||||||
gitlabCommitStatus(name: "Build phy-sim") {
|
gitlabCommitStatus(name: "Build phy-sim") {
|
||||||
timeout (time: 20, unit: 'MINUTES') {
|
timeout (time: 20, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/waitBuildOnVM.sh --workspace $WORKSPACE --variant phy-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
|
sh "./ci-scripts/oai-ci-vm-tool wait --workspace $WORKSPACE --variant phy-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -286,7 +286,7 @@ pipeline {
|
|||||||
archiveArtifacts artifacts: 'archives/vm_build_logs.zip'
|
archiveArtifacts artifacts: 'archives/vm_build_logs.zip'
|
||||||
}
|
}
|
||||||
if ("MERGE".equals(env.gitlabActionType)) {
|
if ("MERGE".equals(env.gitlabActionType)) {
|
||||||
sh "./ci-scripts/reportBuildLocally.sh --git-url ${GIT_URL} --job-name ${JOB_NAME} --build-id ${BUILD_ID} --trigger merge-request --src-branch ${env.gitlabSourceBranch} --src-commit ${env.gitlabMergeRequestLastCommit} --target-branch ${env.gitlabTargetBranch} --target-commit ${GIT_COMMIT}"
|
sh "./ci-scripts/oai-ci-vm-tool report-build --workspace $WORKSPACE --git-url ${GIT_URL} --job-name ${JOB_NAME} --build-id ${BUILD_ID} --trigger merge-request --src-branch ${env.gitlabSourceBranch} --src-commit ${env.gitlabMergeRequestLastCommit} --target-branch ${env.gitlabTargetBranch} --target-commit ${GIT_COMMIT}"
|
||||||
sh "./ci-scripts/checkAddedWarnings.sh --src-branch ${env.gitlabSourceBranch} --target-branch ${env.gitlabTargetBranch}"
|
sh "./ci-scripts/checkAddedWarnings.sh --src-branch ${env.gitlabSourceBranch} --target-branch ${env.gitlabTargetBranch}"
|
||||||
def res=readFile('./oai_warning_files.txt').trim();
|
def res=readFile('./oai_warning_files.txt').trim();
|
||||||
if ("0".equals(res)) {
|
if ("0".equals(res)) {
|
||||||
@@ -297,7 +297,7 @@ pipeline {
|
|||||||
addGitLabMRComment comment: message
|
addGitLabMRComment comment: message
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
sh "./ci-scripts/reportBuildLocally.sh --git-url ${GIT_URL} --job-name ${JOB_NAME} --build-id ${BUILD_ID} --trigger push --branch ${GIT_BRANCH} --commit ${GIT_COMMIT}"
|
sh "./ci-scripts/oai-ci-vm-tool report-build --workspace $WORKSPACE --git-url ${GIT_URL} --job-name ${JOB_NAME} --build-id ${BUILD_ID} --trigger push --branch ${GIT_BRANCH} --commit ${GIT_COMMIT}"
|
||||||
}
|
}
|
||||||
if(fileExists('build_results.html')) {
|
if(fileExists('build_results.html')) {
|
||||||
sh "sed -i -e 's#Build-ID: ${BUILD_ID}#Build-ID: <a href=\"${BUILD_URL}\">${BUILD_ID}</a>#' -e 's#TEMPLATE_BUILD_TIME#${JOB_TIMESTAMP}#' build_results.html"
|
sh "sed -i -e 's#Build-ID: ${BUILD_ID}#Build-ID: <a href=\"${BUILD_URL}\">${BUILD_ID}</a>#' -e 's#TEMPLATE_BUILD_TIME#${JOB_TIMESTAMP}#' build_results.html"
|
||||||
@@ -313,8 +313,8 @@ pipeline {
|
|||||||
stage ("Test physical simulators") {
|
stage ("Test physical simulators") {
|
||||||
steps {
|
steps {
|
||||||
gitlabCommitStatus(name: "Test phy-sim") {
|
gitlabCommitStatus(name: "Test phy-sim") {
|
||||||
timeout (time: 30, unit: 'MINUTES') {
|
timeout (time: 45, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/runTestOnVM.sh --workspace $WORKSPACE --variant phy-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
sh "./ci-scripts/oai-ci-vm-tool test --workspace $WORKSPACE --variant phy-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -323,7 +323,7 @@ pipeline {
|
|||||||
steps {
|
steps {
|
||||||
gitlabCommitStatus(name: "Test basic-sim") {
|
gitlabCommitStatus(name: "Test basic-sim") {
|
||||||
timeout (time: 20, unit: 'MINUTES') {
|
timeout (time: 20, unit: 'MINUTES') {
|
||||||
sh "./ci-scripts/runTestOnVM.sh --workspace $WORKSPACE --variant basic-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID} --keep-vm-alive"
|
sh "./ci-scripts/oai-ci-vm-tool test --workspace $WORKSPACE --variant basic-sim --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -338,7 +338,8 @@ pipeline {
|
|||||||
string(name: 'eNB_Repository', value: String.valueOf(GIT_URL)),
|
string(name: 'eNB_Repository', value: String.valueOf(GIT_URL)),
|
||||||
string(name: 'eNB_Branch', value: String.valueOf(env.gitlabSourceBranch)),
|
string(name: 'eNB_Branch', value: String.valueOf(env.gitlabSourceBranch)),
|
||||||
string(name: 'eNB_CommitID', value: String.valueOf(env.gitlabMergeRequestLastCommit)),
|
string(name: 'eNB_CommitID', value: String.valueOf(env.gitlabMergeRequestLastCommit)),
|
||||||
booleanParam(name: 'eNB_mergeRequest', value: true)
|
booleanParam(name: 'eNB_mergeRequest', value: true),
|
||||||
|
string(name: 'eNB_TargetBranch', value: String.valueOf(env.gitlabTargetBranch))
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -383,7 +384,8 @@ pipeline {
|
|||||||
string(name: 'eNB_Repository', value: String.valueOf(GIT_URL)),
|
string(name: 'eNB_Repository', value: String.valueOf(GIT_URL)),
|
||||||
string(name: 'eNB_Branch', value: String.valueOf(env.gitlabSourceBranch)),
|
string(name: 'eNB_Branch', value: String.valueOf(env.gitlabSourceBranch)),
|
||||||
string(name: 'eNB_CommitID', value: String.valueOf(env.gitlabMergeRequestLastCommit)),
|
string(name: 'eNB_CommitID', value: String.valueOf(env.gitlabMergeRequestLastCommit)),
|
||||||
booleanParam(name: 'eNB_mergeRequest', value: true)
|
booleanParam(name: 'eNB_mergeRequest', value: true),
|
||||||
|
string(name: 'eNB_TargetBranch', value: String.valueOf(env.gitlabTargetBranch))
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -428,7 +430,8 @@ pipeline {
|
|||||||
string(name: 'eNB_Repository', value: String.valueOf(GIT_URL)),
|
string(name: 'eNB_Repository', value: String.valueOf(GIT_URL)),
|
||||||
string(name: 'eNB_Branch', value: String.valueOf(env.gitlabSourceBranch)),
|
string(name: 'eNB_Branch', value: String.valueOf(env.gitlabSourceBranch)),
|
||||||
string(name: 'eNB_CommitID', value: String.valueOf(env.gitlabMergeRequestLastCommit)),
|
string(name: 'eNB_CommitID', value: String.valueOf(env.gitlabMergeRequestLastCommit)),
|
||||||
booleanParam(name: 'eNB_mergeRequest', value: true)
|
booleanParam(name: 'eNB_mergeRequest', value: true),
|
||||||
|
string(name: 'eNB_TargetBranch', value: String.valueOf(env.gitlabTargetBranch))
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -473,7 +476,8 @@ pipeline {
|
|||||||
string(name: 'eNB_Repository', value: String.valueOf(GIT_URL)),
|
string(name: 'eNB_Repository', value: String.valueOf(GIT_URL)),
|
||||||
string(name: 'eNB_Branch', value: String.valueOf(env.gitlabSourceBranch)),
|
string(name: 'eNB_Branch', value: String.valueOf(env.gitlabSourceBranch)),
|
||||||
string(name: 'eNB_CommitID', value: String.valueOf(env.gitlabMergeRequestLastCommit)),
|
string(name: 'eNB_CommitID', value: String.valueOf(env.gitlabMergeRequestLastCommit)),
|
||||||
booleanParam(name: 'eNB_mergeRequest', value: true)
|
booleanParam(name: 'eNB_mergeRequest', value: true),
|
||||||
|
string(name: 'eNB_TargetBranch', value: String.valueOf(env.gitlabTargetBranch))
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -518,9 +522,9 @@ pipeline {
|
|||||||
if(fileExists('archives/vm_tests_logs.zip')) {
|
if(fileExists('archives/vm_tests_logs.zip')) {
|
||||||
archiveArtifacts artifacts: 'archives/vm_tests_logs.zip'
|
archiveArtifacts artifacts: 'archives/vm_tests_logs.zip'
|
||||||
if ("MERGE".equals(env.gitlabActionType)) {
|
if ("MERGE".equals(env.gitlabActionType)) {
|
||||||
sh "./ci-scripts/reportTestLocally.sh --git-url ${GIT_URL} --job-name ${JOB_NAME} --build-id ${BUILD_ID} --trigger merge-request --src-branch ${env.gitlabSourceBranch} --src-commit ${env.gitlabMergeRequestLastCommit} --target-branch ${env.gitlabTargetBranch} --target-commit ${GIT_COMMIT}"
|
sh "./ci-scripts/oai-ci-vm-tool report-test --workspace $WORKSPACE --git-url ${GIT_URL} --job-name ${JOB_NAME} --build-id ${BUILD_ID} --trigger merge-request --src-branch ${env.gitlabSourceBranch} --src-commit ${env.gitlabMergeRequestLastCommit} --target-branch ${env.gitlabTargetBranch} --target-commit ${GIT_COMMIT}"
|
||||||
} else {
|
} else {
|
||||||
sh "./ci-scripts/reportTestLocally.sh --git-url ${GIT_URL} --job-name ${JOB_NAME} --build-id ${BUILD_ID} --trigger push --branch ${GIT_BRANCH} --commit ${GIT_COMMIT}"
|
sh "./ci-scripts/oai-ci-vm-tool report-test --workspace $WORKSPACE --git-url ${GIT_URL} --job-name ${JOB_NAME} --build-id ${BUILD_ID} --trigger push --branch ${GIT_BRANCH} --commit ${GIT_COMMIT}"
|
||||||
}
|
}
|
||||||
if(fileExists('test_simulator_results.html')) {
|
if(fileExists('test_simulator_results.html')) {
|
||||||
sh "sed -i -e 's#Build-ID: ${BUILD_ID}#Build-ID: <a href=\"${BUILD_URL}\">${BUILD_ID}</a>#' -e 's#TEMPLATE_BUILD_TIME#${JOB_TIMESTAMP}#' test_simulator_results.html"
|
sh "sed -i -e 's#Build-ID: ${BUILD_ID}#Build-ID: <a href=\"${BUILD_URL}\">${BUILD_ID}</a>#' -e 's#TEMPLATE_BUILD_TIME#${JOB_TIMESTAMP}#' test_simulator_results.html"
|
||||||
@@ -533,7 +537,7 @@ pipeline {
|
|||||||
}
|
}
|
||||||
stage ("Destroy all Virtual Machines") {
|
stage ("Destroy all Virtual Machines") {
|
||||||
steps {
|
steps {
|
||||||
sh "./ci-scripts/destroyAllRunningVM.sh --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
sh "./ci-scripts/oai-ci-vm-tool destroy --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -541,7 +545,7 @@ pipeline {
|
|||||||
always {
|
always {
|
||||||
script {
|
script {
|
||||||
// Stage destroy may not be run if error in previous stage
|
// Stage destroy may not be run if error in previous stage
|
||||||
sh "./ci-scripts/destroyAllRunningVM.sh --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
sh "./ci-scripts/oai-ci-vm-tool destroy --job-name ${JOB_NAME} --build-id ${BUILD_ID}"
|
||||||
emailext attachmentsPattern: '*results*.html',
|
emailext attachmentsPattern: '*results*.html',
|
||||||
body: '''Hi,
|
body: '''Hi,
|
||||||
Here are attached HTML report files for $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!
|
Here are attached HTML report files for $PROJECT_NAME - Build # $BUILD_NUMBER - $BUILD_STATUS!
|
||||||
|
|||||||
+19
-318
@@ -20,8 +20,8 @@
|
|||||||
# * contact@openairinterface.org
|
# * contact@openairinterface.org
|
||||||
# */
|
# */
|
||||||
|
|
||||||
function usage {
|
function build_usage {
|
||||||
echo "OAI VM Build Check script"
|
echo "OAI CI VM script"
|
||||||
echo " Original Author: Raphael Defosseux"
|
echo " Original Author: Raphael Defosseux"
|
||||||
echo " Requirements:"
|
echo " Requirements:"
|
||||||
echo " -- uvtool uvtool-libvirt apt-cacher"
|
echo " -- uvtool uvtool-libvirt apt-cacher"
|
||||||
@@ -31,9 +31,9 @@ function usage {
|
|||||||
echo ""
|
echo ""
|
||||||
echo "Usage:"
|
echo "Usage:"
|
||||||
echo "------"
|
echo "------"
|
||||||
echo " buildOnVM.sh [OPTIONS]"
|
echo " oai-ci-vm-tool build [OPTIONS]"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Options:"
|
echo "Mandatory Options:"
|
||||||
echo "--------"
|
echo "--------"
|
||||||
echo " --job-name #### OR -jn ####"
|
echo " --job-name #### OR -jn ####"
|
||||||
echo " Specify the name of the Jenkins job."
|
echo " Specify the name of the Jenkins job."
|
||||||
@@ -44,14 +44,9 @@ function usage {
|
|||||||
echo " --workspace #### OR -ws ####"
|
echo " --workspace #### OR -ws ####"
|
||||||
echo " Specify the workspace."
|
echo " Specify the workspace."
|
||||||
echo ""
|
echo ""
|
||||||
echo " --variant enb-usrp OR -v1"
|
echo "Options:"
|
||||||
echo " --variant basic-sim OR -v2"
|
echo "--------"
|
||||||
echo " --variant phy-sim OR -v3"
|
variant_usage
|
||||||
echo " --variant cppcheck OR -v4"
|
|
||||||
echo " --variant gnb-usrp OR -v5"
|
|
||||||
echo " --variant nu-ue-usrp OR -v6"
|
|
||||||
echo " --variant enb-ethernet OR -v7"
|
|
||||||
echo " --variant ue-ethernet OR -v8"
|
|
||||||
echo " Specify the variant to build."
|
echo " Specify the variant to build."
|
||||||
echo ""
|
echo ""
|
||||||
echo " --keep-vm-alive OR -k"
|
echo " --keep-vm-alive OR -k"
|
||||||
@@ -65,244 +60,24 @@ function usage {
|
|||||||
echo ""
|
echo ""
|
||||||
}
|
}
|
||||||
|
|
||||||
function variant_usage {
|
function build_on_vm {
|
||||||
echo "OAI VM Build Check script"
|
|
||||||
echo " Original Author: Raphael Defosseux"
|
|
||||||
echo ""
|
|
||||||
echo " --variant enb-usrp OR -v1"
|
|
||||||
echo " --variant basic-sim OR -v2"
|
|
||||||
echo " --variant phy-sim OR -v3"
|
|
||||||
echo " --variant cppcheck OR -v4"
|
|
||||||
echo " --variant gnb-usrp OR -v5"
|
|
||||||
echo " --variant nu-ue-usrp OR -v6"
|
|
||||||
echo " --variant enb-ethernet OR -v7"
|
|
||||||
echo " --variant ue-ethernet OR -v8"
|
|
||||||
echo ""
|
|
||||||
}
|
|
||||||
|
|
||||||
if [ $# -lt 1 ] || [ $# -gt 9 ]
|
|
||||||
then
|
|
||||||
echo "Syntax Error: not the correct number of arguments"
|
|
||||||
echo ""
|
|
||||||
usage
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
VM_TEMPLATE=ci-
|
|
||||||
JOB_NAME=XX
|
|
||||||
BUILD_ID=XX
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
VM_MEMORY=2048
|
|
||||||
VM_CPU=4
|
|
||||||
ARCHIVES_LOC=enb_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--eNB -w USRP"
|
|
||||||
KEEP_VM_ALIVE=0
|
|
||||||
DAEMON=0
|
|
||||||
|
|
||||||
while [[ $# -gt 0 ]]
|
|
||||||
do
|
|
||||||
key="$1"
|
|
||||||
|
|
||||||
case $key in
|
|
||||||
-h|--help)
|
|
||||||
shift
|
|
||||||
usage
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
-jn|--job-name)
|
|
||||||
JOB_NAME="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-id|--build-id)
|
|
||||||
BUILD_ID="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-ws|--workspace)
|
|
||||||
JENKINS_WKSP="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-k|--keep-vm-alive)
|
|
||||||
KEEP_VM_ALIVE=1
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-D|--daemon)
|
|
||||||
DAEMON=1
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v1)
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
ARCHIVES_LOC=enb_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--eNB -w USRP --mu"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v2)
|
|
||||||
VM_NAME=ci-basic-sim
|
|
||||||
ARCHIVES_LOC=basic_sim
|
|
||||||
LOG_PATTERN=basic_simulator
|
|
||||||
NB_PATTERN_FILES=2
|
|
||||||
BUILD_OPTIONS="--basic-simulator"
|
|
||||||
VM_MEMORY=8192
|
|
||||||
VM_CPU=4
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v3)
|
|
||||||
VM_NAME=ci-phy-sim
|
|
||||||
ARCHIVES_LOC=phy_sim
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--phy_simulators"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v4)
|
|
||||||
VM_NAME=ci-cppcheck
|
|
||||||
VM_MEMORY=8192
|
|
||||||
ARCHIVES_LOC=cppcheck
|
|
||||||
LOG_PATTERN=cppcheck.xml
|
|
||||||
NB_PATTERN_FILES=1
|
|
||||||
BUILD_OPTIONS="--enable=warning --force --xml --xml-version=2 -i openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_decoder.c"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v5)
|
|
||||||
VM_NAME=ci-gnb-usrp
|
|
||||||
ARCHIVES_LOC=gnb_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--gNB -w USRP"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v6)
|
|
||||||
VM_NAME=ci-ue-nr-usrp
|
|
||||||
ARCHIVES_LOC=nrue_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--nrUE -w USRP"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v7)
|
|
||||||
VM_NAME=ci-enb-ethernet
|
|
||||||
ARCHIVES_LOC=enb_eth
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--eNB -t ETHERNET --noS1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v8)
|
|
||||||
VM_NAME=ci-ue-ethernet
|
|
||||||
ARCHIVES_LOC=ue_eth
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--UE -t ETHERNET --noS1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--variant)
|
|
||||||
variant="$2"
|
|
||||||
case $variant in
|
|
||||||
enb-usrp)
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
ARCHIVES_LOC=enb_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--eNB -w USRP --mu"
|
|
||||||
;;
|
|
||||||
basic-sim)
|
|
||||||
VM_NAME=ci-basic-sim
|
|
||||||
ARCHIVES_LOC=basic_sim
|
|
||||||
LOG_PATTERN=basic_simulator
|
|
||||||
NB_PATTERN_FILES=2
|
|
||||||
BUILD_OPTIONS="--basic-simulator"
|
|
||||||
VM_MEMORY=8192
|
|
||||||
VM_CPU=4
|
|
||||||
;;
|
|
||||||
phy-sim)
|
|
||||||
VM_NAME=ci-phy-sim
|
|
||||||
ARCHIVES_LOC=phy_sim
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--phy_simulators"
|
|
||||||
;;
|
|
||||||
cppcheck)
|
|
||||||
VM_NAME=ci-cppcheck
|
|
||||||
VM_MEMORY=8192
|
|
||||||
ARCHIVES_LOC=cppcheck
|
|
||||||
LOG_PATTERN=cppcheck.xml
|
|
||||||
NB_PATTERN_FILES=1
|
|
||||||
BUILD_OPTIONS="--enable=warning --force --xml --xml-version=2 -i openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_decoder.c"
|
|
||||||
;;
|
|
||||||
gnb-usrp)
|
|
||||||
VM_NAME=ci-gnb-usrp
|
|
||||||
ARCHIVES_LOC=gnb_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--gNB -w USRP"
|
|
||||||
;;
|
|
||||||
nu-ue-usrp)
|
|
||||||
VM_NAME=ci-ue-nr-usrp
|
|
||||||
ARCHIVES_LOC=nrue_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--nrUE -w USRP"
|
|
||||||
;;
|
|
||||||
enb-ethernet)
|
|
||||||
VM_NAME=ci-enb-ethernet
|
|
||||||
ARCHIVES_LOC=enb_eth
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--eNB -t ETHERNET --noS1"
|
|
||||||
;;
|
|
||||||
ue-ethernet)
|
|
||||||
VM_NAME=ci-ue-ethernet
|
|
||||||
ARCHIVES_LOC=ue_eth
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--UE -t ETHERNET --noS1"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: Invalid Variant option -> $variant"
|
|
||||||
echo ""
|
|
||||||
variant_usage
|
|
||||||
exit 1
|
|
||||||
esac
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Syntax Error: unknown option: $key"
|
|
||||||
echo ""
|
|
||||||
usage
|
|
||||||
exit 1
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ ! -f $JENKINS_WKSP/localZip.zip ]
|
if [ ! -f $JENKINS_WKSP/localZip.zip ]
|
||||||
then
|
then
|
||||||
echo "Missing localZip.zip file!"
|
echo "Missing localZip.zip file!"
|
||||||
exit 1
|
STATUS=1
|
||||||
|
return
|
||||||
fi
|
fi
|
||||||
if [ ! -f /etc/apt/apt.conf.d/01proxy ]
|
if [ ! -f /etc/apt/apt.conf.d/01proxy ]
|
||||||
then
|
then
|
||||||
echo "Missing /etc/apt/apt.conf.d/01proxy file!"
|
echo "Missing /etc/apt/apt.conf.d/01proxy file!"
|
||||||
echo "Is apt-cacher installed and configured?"
|
echo "Is apt-cacher installed and configured?"
|
||||||
exit 1
|
STATUS=1
|
||||||
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$JOB_NAME" == "XX" ] || [ "$BUILD_ID" == "XX" ]
|
echo "############################################################"
|
||||||
then
|
echo "OAI CI VM script"
|
||||||
VM_TEMPLATE=ci-
|
echo "############################################################"
|
||||||
else
|
|
||||||
VM_TEMPLATE=${JOB_NAME}-b${BUILD_ID}-
|
|
||||||
fi
|
|
||||||
|
|
||||||
VM_NAME=`echo $VM_NAME | sed -e "s#ci-#$VM_TEMPLATE#"`
|
|
||||||
VM_CMDS=${VM_NAME}_cmds.txt
|
|
||||||
ARCHIVES_LOC=${JENKINS_WKSP}/archives/${ARCHIVES_LOC}
|
|
||||||
|
|
||||||
echo "VM_NAME = $VM_NAME"
|
echo "VM_NAME = $VM_NAME"
|
||||||
echo "VM_CMD_FILE = $VM_CMDS"
|
echo "VM_CMD_FILE = $VM_CMDS"
|
||||||
@@ -314,6 +89,8 @@ IS_VM_ALIVE=`uvt-kvm list | grep -c $VM_NAME`
|
|||||||
|
|
||||||
if [ $IS_VM_ALIVE -eq 0 ]
|
if [ $IS_VM_ALIVE -eq 0 ]
|
||||||
then
|
then
|
||||||
|
echo "VM_MEMORY = $VM_MEMORY MBytes"
|
||||||
|
echo "VM_CPU = $VM_CPU"
|
||||||
echo "############################################################"
|
echo "############################################################"
|
||||||
echo "Creating VM ($VM_NAME) on Ubuntu Cloud Image base"
|
echo "Creating VM ($VM_NAME) on Ubuntu Cloud Image base"
|
||||||
echo "############################################################"
|
echo "############################################################"
|
||||||
@@ -329,7 +106,7 @@ echo "$VM_NAME has for IP addr = $VM_IP_ADDR"
|
|||||||
echo "############################################################"
|
echo "############################################################"
|
||||||
echo "Copying GIT repo into VM ($VM_NAME)"
|
echo "Copying GIT repo into VM ($VM_NAME)"
|
||||||
echo "############################################################"
|
echo "############################################################"
|
||||||
scp -o StrictHostKeyChecking=no localZip.zip ubuntu@$VM_IP_ADDR:/home/ubuntu
|
scp -o StrictHostKeyChecking=no $JENKINS_WKSP/localZip.zip ubuntu@$VM_IP_ADDR:/home/ubuntu
|
||||||
scp -o StrictHostKeyChecking=no /etc/apt/apt.conf.d/01proxy ubuntu@$VM_IP_ADDR:/home/ubuntu
|
scp -o StrictHostKeyChecking=no /etc/apt/apt.conf.d/01proxy ubuntu@$VM_IP_ADDR:/home/ubuntu
|
||||||
|
|
||||||
echo "############################################################"
|
echo "############################################################"
|
||||||
@@ -398,81 +175,5 @@ else
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
ssh -o StrictHostKeyChecking=no ubuntu@$VM_IP_ADDR < $VM_CMDS
|
ssh -o StrictHostKeyChecking=no ubuntu@$VM_IP_ADDR < $VM_CMDS
|
||||||
if [ $DAEMON -eq 1 ]
|
|
||||||
then
|
|
||||||
rm -f $VM_CMDS
|
rm -f $VM_CMDS
|
||||||
echo "STATUS is OK"
|
}
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "############################################################"
|
|
||||||
echo "Creating a tmp folder to store results and artifacts"
|
|
||||||
echo "############################################################"
|
|
||||||
if [ ! -d $JENKINS_WKSP/archives ]
|
|
||||||
then
|
|
||||||
mkdir $JENKINS_WKSP/archives
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -d $ARCHIVES_LOC ]
|
|
||||||
then
|
|
||||||
mkdir $ARCHIVES_LOC
|
|
||||||
fi
|
|
||||||
|
|
||||||
scp -o StrictHostKeyChecking=no ubuntu@$VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/*.txt $ARCHIVES_LOC
|
|
||||||
if [[ "$VM_NAME" == *"-cppcheck"* ]]
|
|
||||||
then
|
|
||||||
scp -o StrictHostKeyChecking=no ubuntu@$VM_IP_ADDR:/home/ubuntu/tmp/cmake_targets/log/*.xml $ARCHIVES_LOC
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $KEEP_VM_ALIVE -eq 0 ]
|
|
||||||
then
|
|
||||||
echo "############################################################"
|
|
||||||
echo "Destroying VM"
|
|
||||||
echo "############################################################"
|
|
||||||
uvt-kvm destroy $VM_NAME
|
|
||||||
ssh-keygen -R $VM_IP_ADDR
|
|
||||||
fi
|
|
||||||
rm -f $VM_CMDS
|
|
||||||
|
|
||||||
echo "############################################################"
|
|
||||||
echo "Checking build status"
|
|
||||||
echo "############################################################"
|
|
||||||
|
|
||||||
LOG_FILES=`ls $ARCHIVES_LOC/*.txt $ARCHIVES_LOC/*.xml`
|
|
||||||
STATUS=0
|
|
||||||
NB_FOUND_FILES=0
|
|
||||||
|
|
||||||
for FULLFILE in $LOG_FILES
|
|
||||||
do
|
|
||||||
if [[ $FULLFILE == *"$LOG_PATTERN"* ]]
|
|
||||||
then
|
|
||||||
filename=$(basename -- "$FULLFILE")
|
|
||||||
if [ "$LOG_PATTERN" == ".Rel15.txt" ]
|
|
||||||
then
|
|
||||||
PASS_PATTERN=`echo $filename | sed -e "s#$LOG_PATTERN##"`
|
|
||||||
fi
|
|
||||||
if [ "$LOG_PATTERN" == "basic_simulator" ]
|
|
||||||
then
|
|
||||||
PASS_PATTERN="lte-"
|
|
||||||
fi
|
|
||||||
if [ "$LOG_PATTERN" == "cppcheck.xml" ]
|
|
||||||
then
|
|
||||||
PASS_PATTERN="results version"
|
|
||||||
LOCAL_STAT=`egrep -c "$PASS_PATTERN" $FULLFILE`
|
|
||||||
else
|
|
||||||
LOCAL_STAT=`egrep -c "Built target $PASS_PATTERN" $FULLFILE`
|
|
||||||
fi
|
|
||||||
if [ $LOCAL_STAT -eq 0 ]; then STATUS=-1; fi
|
|
||||||
NB_FOUND_FILES=$((NB_FOUND_FILES + 1))
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ $NB_PATTERN_FILES -ne $NB_FOUND_FILES ]; then STATUS=-1; fi
|
|
||||||
|
|
||||||
if [ $STATUS -eq 0 ]
|
|
||||||
then
|
|
||||||
echo "STATUS seems OK"
|
|
||||||
else
|
|
||||||
echo "STATUS failed?"
|
|
||||||
fi
|
|
||||||
exit $STATUS
|
|
||||||
|
|||||||
@@ -134,7 +134,7 @@ eNBs =
|
|||||||
};
|
};
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "10.0.0.2";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -144,13 +144,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
|
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -134,7 +134,7 @@ eNBs =
|
|||||||
};
|
};
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "10.0.0.2";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -144,13 +144,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
|
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -134,7 +134,7 @@ eNBs =
|
|||||||
};
|
};
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "10.0.0.2";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -144,13 +144,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
|
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -171,7 +171,7 @@ eNBs =
|
|||||||
|
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "192.168.12.26";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -181,12 +181,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -171,7 +171,7 @@ eNBs =
|
|||||||
|
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "192.168.12.26";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -181,12 +181,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -171,7 +171,7 @@ eNBs =
|
|||||||
|
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "192.168.12.26";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -181,12 +181,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -186,7 +186,6 @@ eNBs =
|
|||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -145,11 +145,9 @@ eNBs =
|
|||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
|
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -137,7 +137,7 @@ eNBs =
|
|||||||
};
|
};
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "10.0.0.2";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -147,13 +147,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
|
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -137,7 +137,7 @@ eNBs =
|
|||||||
};
|
};
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "10.0.0.2";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -147,13 +147,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
|
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -137,7 +137,7 @@ eNBs =
|
|||||||
};
|
};
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "10.0.0.2";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -147,13 +147,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
|
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "10.0.0.1/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ eNBs =
|
|||||||
|
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "192.168.12.26";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -184,12 +184,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ eNBs =
|
|||||||
|
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "192.168.12.26";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -184,12 +184,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ eNBs =
|
|||||||
|
|
||||||
|
|
||||||
////////// MME parameters:
|
////////// MME parameters:
|
||||||
mme_ip_address = ( { ipv4 = "192.168.12.26";
|
mme_ip_address = ( { ipv4 = "CI_MME_IP_ADDR";
|
||||||
ipv6 = "192:168:30::17";
|
ipv6 = "192:168:30::17";
|
||||||
active = "yes";
|
active = "yes";
|
||||||
preference = "ipv4";
|
preference = "ipv4";
|
||||||
@@ -184,12 +184,11 @@ eNBs =
|
|||||||
NETWORK_INTERFACES :
|
NETWORK_INTERFACES :
|
||||||
{
|
{
|
||||||
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1_MME = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1_MME = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1_MME = "CI_ENB_IP_ADDR";
|
||||||
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
ENB_INTERFACE_NAME_FOR_S1U = "eth0";
|
||||||
ENB_IPV4_ADDRESS_FOR_S1U = "192.168.12.111/24";
|
ENB_IPV4_ADDRESS_FOR_S1U = "CI_ENB_IP_ADDR";
|
||||||
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
ENB_PORT_FOR_S1U = 2152; # Spec 2152
|
||||||
|
ENB_IPV4_ADDRESS_FOR_X2C = "CI_ENB_IP_ADDR";
|
||||||
ENB_IPV4_ADDRESS_FOR_X2C = "192.168.12.111/24";
|
|
||||||
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
ENB_PORT_FOR_X2C = 36422; # Spec 36422
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
+10
-154
@@ -20,8 +20,8 @@
|
|||||||
# * contact@openairinterface.org
|
# * contact@openairinterface.org
|
||||||
# */
|
# */
|
||||||
|
|
||||||
function usage {
|
function create_usage {
|
||||||
echo "OAI VM Creation script"
|
echo "OAI CI VM script"
|
||||||
echo " Original Author: Raphael Defosseux"
|
echo " Original Author: Raphael Defosseux"
|
||||||
echo " Requirements:"
|
echo " Requirements:"
|
||||||
echo " -- uvtool uvtool-libvirt apt-cacher"
|
echo " -- uvtool uvtool-libvirt apt-cacher"
|
||||||
@@ -31,9 +31,9 @@ function usage {
|
|||||||
echo ""
|
echo ""
|
||||||
echo "Usage:"
|
echo "Usage:"
|
||||||
echo "------"
|
echo "------"
|
||||||
echo " createVM.sh [OPTIONS]"
|
echo " oai-ci-vm-tool create [OPTIONS]"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Options:"
|
echo "Mandatory Options:"
|
||||||
echo "--------"
|
echo "--------"
|
||||||
echo " --job-name #### OR -jn ####"
|
echo " --job-name #### OR -jn ####"
|
||||||
echo " Specify the name of the Jenkins job."
|
echo " Specify the name of the Jenkins job."
|
||||||
@@ -41,14 +41,7 @@ function usage {
|
|||||||
echo " --build-id #### OR -id ####"
|
echo " --build-id #### OR -id ####"
|
||||||
echo " Specify the build ID of the Jenkins job."
|
echo " Specify the build ID of the Jenkins job."
|
||||||
echo ""
|
echo ""
|
||||||
echo " --variant enb-usrp OR -v1"
|
variant_usage
|
||||||
echo " --variant basic-sim OR -v2"
|
|
||||||
echo " --variant phy-sim OR -v3"
|
|
||||||
echo " --variant cppcheck OR -v4"
|
|
||||||
echo " --variant gnb-usrp OR -v5"
|
|
||||||
echo " --variant nu-ue-usrp OR -v6"
|
|
||||||
echo " --variant enb-ethernet OR -v7"
|
|
||||||
echo " --variant ue-ethernet OR -v8"
|
|
||||||
echo " Specify the variant to build."
|
echo " Specify the variant to build."
|
||||||
echo ""
|
echo ""
|
||||||
echo " --help OR -h"
|
echo " --help OR -h"
|
||||||
@@ -56,147 +49,10 @@ function usage {
|
|||||||
echo ""
|
echo ""
|
||||||
}
|
}
|
||||||
|
|
||||||
function variant_usage {
|
function create_vm {
|
||||||
echo "OAI VM Build Check script"
|
echo "############################################################"
|
||||||
echo " Original Author: Raphael Defosseux"
|
echo "OAI CI VM script"
|
||||||
echo ""
|
echo "############################################################"
|
||||||
echo " --variant enb-usrp OR -v1"
|
|
||||||
echo " --variant basic-sim OR -v2"
|
|
||||||
echo " --variant phy-sim OR -v3"
|
|
||||||
echo " --variant cppcheck OR -v4"
|
|
||||||
echo " --variant gnb-usrp OR -v5"
|
|
||||||
echo " --variant nu-ue-usrp OR -v6"
|
|
||||||
echo " --variant enb-ethernet OR -v7"
|
|
||||||
echo " --variant ue-ethernet OR -v8"
|
|
||||||
echo ""
|
|
||||||
}
|
|
||||||
|
|
||||||
if [ $# -lt 1 ] || [ $# -gt 6 ]
|
|
||||||
then
|
|
||||||
echo "Syntax Error: not the correct number of arguments"
|
|
||||||
echo ""
|
|
||||||
usage
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
VM_TEMPLATE=ci-
|
|
||||||
JOB_NAME=XX
|
|
||||||
BUILD_ID=XX
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
VM_MEMORY=2048
|
|
||||||
VM_CPU=4
|
|
||||||
|
|
||||||
while [[ $# -gt 0 ]]
|
|
||||||
do
|
|
||||||
key="$1"
|
|
||||||
|
|
||||||
case $key in
|
|
||||||
-h|--help)
|
|
||||||
shift
|
|
||||||
usage
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
-jn|--job-name)
|
|
||||||
JOB_NAME="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-id|--build-id)
|
|
||||||
BUILD_ID="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v1)
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v2)
|
|
||||||
VM_NAME=ci-basic-sim
|
|
||||||
VM_MEMORY=8192
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v3)
|
|
||||||
VM_NAME=ci-phy-sim
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v4)
|
|
||||||
VM_NAME=ci-cppcheck
|
|
||||||
VM_MEMORY=8192
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v5)
|
|
||||||
VM_NAME=ci-gnb-usrp
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v6)
|
|
||||||
VM_NAME=ci-ue-nr-usrp
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v7)
|
|
||||||
VM_NAME=ci-enb-ethernet
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v8)
|
|
||||||
VM_NAME=ci-ue-ethernet
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--variant)
|
|
||||||
variant="$2"
|
|
||||||
case $variant in
|
|
||||||
enb-usrp)
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
;;
|
|
||||||
basic-sim)
|
|
||||||
VM_NAME=ci-basic-sim
|
|
||||||
VM_MEMORY=8192
|
|
||||||
;;
|
|
||||||
phy-sim)
|
|
||||||
VM_NAME=ci-phy-sim
|
|
||||||
;;
|
|
||||||
cppcheck)
|
|
||||||
VM_NAME=ci-cppcheck
|
|
||||||
VM_MEMORY=8192
|
|
||||||
;;
|
|
||||||
gnb-usrp)
|
|
||||||
VM_NAME=ci-gnb-usrp
|
|
||||||
;;
|
|
||||||
nu-ue-usrp)
|
|
||||||
VM_NAME=ci-ue-nr-usrp
|
|
||||||
;;
|
|
||||||
enb-ethernet)
|
|
||||||
VM_NAME=ci-enb-ethernet
|
|
||||||
;;
|
|
||||||
ue-ethernet)
|
|
||||||
VM_NAME=ci-ue-ethernet
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: Invalid Variant option -> $variant"
|
|
||||||
echo ""
|
|
||||||
variant_usage
|
|
||||||
exit 1
|
|
||||||
esac
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Syntax Error: unknown option: $key"
|
|
||||||
echo ""
|
|
||||||
usage
|
|
||||||
exit 1
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ "$JOB_NAME" == "XX" ] || [ "$BUILD_ID" == "XX" ]
|
|
||||||
then
|
|
||||||
VM_TEMPLATE=ci-
|
|
||||||
else
|
|
||||||
VM_TEMPLATE=${JOB_NAME}-b${BUILD_ID}-
|
|
||||||
fi
|
|
||||||
|
|
||||||
VM_NAME=`echo $VM_NAME | sed -e "s#ci-#$VM_TEMPLATE#"`
|
|
||||||
VM_CMDS=${VM_NAME}_cmds.txt
|
|
||||||
|
|
||||||
echo "VM_NAME = $VM_NAME"
|
echo "VM_NAME = $VM_NAME"
|
||||||
echo "VM_MEMORY = $VM_MEMORY MBytes"
|
echo "VM_MEMORY = $VM_MEMORY MBytes"
|
||||||
echo "VM_CPU = $VM_CPU"
|
echo "VM_CPU = $VM_CPU"
|
||||||
@@ -210,4 +66,4 @@ uvt-kvm wait $VM_NAME --insecure
|
|||||||
|
|
||||||
VM_IP_ADDR=`uvt-kvm ip $VM_NAME`
|
VM_IP_ADDR=`uvt-kvm ip $VM_NAME`
|
||||||
echo "$VM_NAME has for IP addr = $VM_IP_ADDR"
|
echo "$VM_NAME has for IP addr = $VM_IP_ADDR"
|
||||||
exit 0
|
}
|
||||||
|
|||||||
@@ -20,15 +20,17 @@
|
|||||||
# * contact@openairinterface.org
|
# * contact@openairinterface.org
|
||||||
# */
|
# */
|
||||||
|
|
||||||
function usage {
|
function destroy_usage {
|
||||||
echo "OAI VM Destroy script"
|
echo "OAI CI VM script"
|
||||||
echo " Original Author: Raphael Defosseux"
|
echo " Original Author: Raphael Defosseux"
|
||||||
|
echo " Requirements:"
|
||||||
|
echo " -- uvtool uvtool-libvirt apt-cacher"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Usage:"
|
echo "Usage:"
|
||||||
echo "------"
|
echo "------"
|
||||||
echo " destroyAllRunningVM.sh [OPTIONS]"
|
echo " oai-ci-vm-tool destroy [OPTIONS]"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Options:"
|
echo "Mandatory Options:"
|
||||||
echo "--------"
|
echo "--------"
|
||||||
echo " --job-name #### OR -jn ####"
|
echo " --job-name #### OR -jn ####"
|
||||||
echo " Specify the name of the Jenkins job."
|
echo " Specify the name of the Jenkins job."
|
||||||
@@ -36,56 +38,18 @@ function usage {
|
|||||||
echo " --build-id #### OR -id ####"
|
echo " --build-id #### OR -id ####"
|
||||||
echo " Specify the build ID of the Jenkins job."
|
echo " Specify the build ID of the Jenkins job."
|
||||||
echo ""
|
echo ""
|
||||||
|
echo "Options:"
|
||||||
|
echo "--------"
|
||||||
echo " --help OR -h"
|
echo " --help OR -h"
|
||||||
echo " Print this help message."
|
echo " Print this help message."
|
||||||
echo ""
|
echo ""
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ $# -gt 4 ]
|
function destroy_vm {
|
||||||
then
|
echo "############################################################"
|
||||||
echo "Syntax Error: not the correct number of arguments"
|
echo "OAI CI VM script"
|
||||||
echo ""
|
echo "############################################################"
|
||||||
usage
|
echo "VM_TEMPLATE = $VM_TEMPLATE"
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
VM_TEMPLATE=ci-
|
|
||||||
JOB_NAME=XX
|
|
||||||
BUILD_ID=XX
|
|
||||||
|
|
||||||
while [[ $# -gt 0 ]]
|
|
||||||
do
|
|
||||||
key="$1"
|
|
||||||
case $key in
|
|
||||||
-h|--help)
|
|
||||||
shift
|
|
||||||
usage
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
-jn|--job-name)
|
|
||||||
JOB_NAME="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-id|--build-id)
|
|
||||||
BUILD_ID="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Syntax Error: unknown option: $key"
|
|
||||||
echo ""
|
|
||||||
usage
|
|
||||||
exit 1
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ "$JOB_NAME" == "XX" ] || [ "$BUILD_ID" == "XX" ]
|
|
||||||
then
|
|
||||||
VM_TEMPLATE=ci-
|
|
||||||
else
|
|
||||||
VM_TEMPLATE=${JOB_NAME}-b${BUILD_ID}-
|
|
||||||
fi
|
|
||||||
|
|
||||||
LIST_CI_VM=`uvt-kvm list | grep $VM_TEMPLATE`
|
LIST_CI_VM=`uvt-kvm list | grep $VM_TEMPLATE`
|
||||||
|
|
||||||
@@ -96,6 +60,4 @@ do
|
|||||||
uvt-kvm destroy $CI_VM
|
uvt-kvm destroy $CI_VM
|
||||||
ssh-keygen -R $VM_IP_ADDR
|
ssh-keygen -R $VM_IP_ADDR
|
||||||
done
|
done
|
||||||
|
}
|
||||||
exit 0
|
|
||||||
|
|
||||||
|
|||||||
+2
-4
@@ -367,10 +367,8 @@ class SSHConnection():
|
|||||||
rruCheck = True
|
rruCheck = True
|
||||||
# Make a copy and adapt to EPC / eNB IP addresses
|
# Make a copy and adapt to EPC / eNB IP addresses
|
||||||
self.command('cp ' + full_config_file + ' ' + ci_full_config_file, '\$', 5)
|
self.command('cp ' + full_config_file + ' ' + ci_full_config_file, '\$', 5)
|
||||||
self.command('sed -i -e \'s/mme_ip_address.*$/mme_ip_address = ( { ipv4 = "' + self.EPCIPAddress + '";/\' ' + ci_full_config_file, '\$', 2);
|
self.command('sed -i -e \'s/CI_MME_IP_ADDR/' + self.EPCIPAddress + '/\' ' + ci_full_config_file, '\$', 2);
|
||||||
self.command('sed -i -e \'s/ENB_IPV4_ADDRESS_FOR_S1_MME.*$/ENB_IPV4_ADDRESS_FOR_S1_MME = "' + self.eNBIPAddress + '";/\' ' + ci_full_config_file, '\$', 2);
|
self.command('sed -i -e \'s/CI_ENB_IP_ADDR/' + self.eNBIPAddress + '/\' ' + ci_full_config_file, '\$', 2);
|
||||||
self.command('sed -i -e \'s/ENB_IPV4_ADDRESS_FOR_S1U.*$/ENB_IPV4_ADDRESS_FOR_S1U = "' + self.eNBIPAddress + '";/\' ' + ci_full_config_file, '\$', 2);
|
|
||||||
self.command('sed -i -e \'s/ENB_IPV4_ADDRESS_FOR_X2C.*$/ENB_IPV4_ADDRESS_FOR_X2C = "' + self.eNBIPAddress + '";/\' ' + ci_full_config_file, '\$', 2);
|
|
||||||
# Launch eNB with the modified config file
|
# Launch eNB with the modified config file
|
||||||
self.command('source oaienv', '\$', 5)
|
self.command('source oaienv', '\$', 5)
|
||||||
self.command('cd cmake_targets', '\$', 5)
|
self.command('cd cmake_targets', '\$', 5)
|
||||||
|
|||||||
Executable
+573
@@ -0,0 +1,573 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#/*
|
||||||
|
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
|
||||||
|
# * contributor license agreements. See the NOTICE file distributed with
|
||||||
|
# * this work for additional information regarding copyright ownership.
|
||||||
|
# * The OpenAirInterface Software Alliance licenses this file to You under
|
||||||
|
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
|
||||||
|
# * except in compliance with the License.
|
||||||
|
# * You may obtain a copy of the License at
|
||||||
|
# *
|
||||||
|
# * http://www.openairinterface.org/?page_id=698
|
||||||
|
# *
|
||||||
|
# * Unless required by applicable law or agreed to in writing, software
|
||||||
|
# * distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# * See the License for the specific language governing permissions and
|
||||||
|
# * limitations under the License.
|
||||||
|
# *-------------------------------------------------------------------------------
|
||||||
|
# * For more information about the OpenAirInterface (OAI) Software Alliance:
|
||||||
|
# * contact@openairinterface.org
|
||||||
|
# */
|
||||||
|
|
||||||
|
function top_usage {
|
||||||
|
echo "OAI CI VM script"
|
||||||
|
echo " Original Author: Raphael Defosseux"
|
||||||
|
echo " Requirements:"
|
||||||
|
echo " -- uvtool uvtool-libvirt apt-cacher"
|
||||||
|
echo " -- xenial image already synced"
|
||||||
|
echo ""
|
||||||
|
echo "Usage:"
|
||||||
|
echo "------"
|
||||||
|
echo " oai-ci-vm-tool (-h|--help) {create,destroy,build,wait,test,report-build,report-test} ..."
|
||||||
|
echo ""
|
||||||
|
}
|
||||||
|
|
||||||
|
function variant_usage {
|
||||||
|
echo " --variant enb-usrp OR -v1"
|
||||||
|
echo " --variant basic-sim OR -v2"
|
||||||
|
echo " --variant phy-sim OR -v3"
|
||||||
|
echo " --variant cppcheck OR -v4"
|
||||||
|
echo " --variant gnb-usrp OR -v5"
|
||||||
|
echo " --variant nu-ue-usrp OR -v6"
|
||||||
|
echo " --variant enb-ethernet OR -v7"
|
||||||
|
echo " --variant ue-ethernet OR -v8"
|
||||||
|
}
|
||||||
|
|
||||||
|
MY_DIR=$(dirname $(readlink -f $0))
|
||||||
|
. $MY_DIR/createVM.sh
|
||||||
|
. $MY_DIR/buildOnVM.sh
|
||||||
|
. $MY_DIR/waitBuildOnVM.sh
|
||||||
|
. $MY_DIR/destroyAllRunningVM.sh
|
||||||
|
. $MY_DIR/runTestOnVM.sh
|
||||||
|
. $MY_DIR/reportBuildLocally.sh
|
||||||
|
. $MY_DIR/reportTestLocally.sh
|
||||||
|
|
||||||
|
if [ $# -lt 1 ]
|
||||||
|
then
|
||||||
|
echo "Syntax Error: too few arguments"
|
||||||
|
echo ""
|
||||||
|
top_usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
VM_TEMPLATE=ci-
|
||||||
|
JOB_NAME=XX
|
||||||
|
BUILD_ID=XX
|
||||||
|
VM_NAME=ci-enb-usrp
|
||||||
|
VM_MEMORY=2048
|
||||||
|
VM_CPU=4
|
||||||
|
ARCHIVES_LOC=enb_usrp
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=4
|
||||||
|
BUILD_OPTIONS="--eNB -w USRP"
|
||||||
|
KEEP_VM_ALIVE=0
|
||||||
|
RUN_OPTIONS="none"
|
||||||
|
DAEMON=0
|
||||||
|
MR_TRIG=0
|
||||||
|
PU_TRIG=0
|
||||||
|
|
||||||
|
HELP_CMD=0
|
||||||
|
CREATE_CMD=0
|
||||||
|
BUILD_CMD=0
|
||||||
|
WAIT_CMD=0
|
||||||
|
DESTROY_CMD=0
|
||||||
|
TEST_CMD=0
|
||||||
|
REPORT_BUILD_CMD=0
|
||||||
|
REPORT_TEST_CMD=0
|
||||||
|
NBARGS=0
|
||||||
|
|
||||||
|
while [[ $# -gt 0 ]]
|
||||||
|
do
|
||||||
|
key="$1"
|
||||||
|
|
||||||
|
case $key in
|
||||||
|
-h|--help)
|
||||||
|
HELP_CMD=1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
create)
|
||||||
|
CREATE_CMD=1
|
||||||
|
# It is implied to keep the VM when creating it
|
||||||
|
KEEP_VM_ALIVE=1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
build)
|
||||||
|
BUILD_CMD=1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
wait)
|
||||||
|
WAIT_CMD=1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
test)
|
||||||
|
TEST_CMD=1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
destroy)
|
||||||
|
DESTROY_CMD=1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
report-build)
|
||||||
|
REPORT_BUILD_CMD=1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
report-test)
|
||||||
|
REPORT_TEST_CMD=1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-jn|--job-name)
|
||||||
|
JOB_NAME="$2"
|
||||||
|
NBARGS=$[$NBARGS+1]
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-id|--build-id)
|
||||||
|
BUILD_ID="$2"
|
||||||
|
NBARGS=$[$NBARGS+2]
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-ws|--workspace)
|
||||||
|
JENKINS_WKSP="$2"
|
||||||
|
NBARGS=$[$NBARGS+4]
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-k|--keep-vm-alive)
|
||||||
|
KEEP_VM_ALIVE=1
|
||||||
|
NBARGS=$[$NBARGS+8]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-D|--daemon)
|
||||||
|
DAEMON=1
|
||||||
|
NBARGS=$[$NBARGS+16]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-gu|--git-url)
|
||||||
|
GIT_URL="$2"
|
||||||
|
NBARGS=$[$NBARGS+32]
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
--trigger)
|
||||||
|
TRIG="$2"
|
||||||
|
case $TRIG in
|
||||||
|
merge-request)
|
||||||
|
MR_TRIG=1
|
||||||
|
;;
|
||||||
|
push)
|
||||||
|
PU_TRIG=1
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo ""
|
||||||
|
echo "Syntax Error: Invalid Trigger option -> $TRIG"
|
||||||
|
echo ""
|
||||||
|
trigger_usage
|
||||||
|
exit
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
NBARGS=$[$NBARGS+64]
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-mr)
|
||||||
|
MR_TRIG=1
|
||||||
|
NBARGS=$[$NBARGS+64]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-pu)
|
||||||
|
PU_TRIG=1
|
||||||
|
NBARGS=$[$NBARGS+64]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-sb|--src-branch)
|
||||||
|
SOURCE_BRANCH="$2"
|
||||||
|
NBARGS=$[$NBARGS+1024]
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-sc|--src-commit)
|
||||||
|
SOURCE_COMMIT_ID="$2"
|
||||||
|
NBARGS=$[$NBARGS+2048]
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-tb|--target-branch)
|
||||||
|
TARGET_BRANCH="$2"
|
||||||
|
NBARGS=$[$NBARGS+4096]
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-tc|--target-commit)
|
||||||
|
TARGET_COMMIT_ID="$2"
|
||||||
|
NBARGS=$[$NBARGS+8192]
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-br|--branch)
|
||||||
|
SOURCE_BRANCH="$2"
|
||||||
|
NBARGS=$[$NBARGS+16384]
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-co|--commit)
|
||||||
|
SOURCE_COMMIT_ID="$2"
|
||||||
|
NBARGS=$[$NBARGS+32768]
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-v1)
|
||||||
|
VM_NAME=ci-enb-usrp
|
||||||
|
ARCHIVES_LOC=enb_usrp
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=4
|
||||||
|
BUILD_OPTIONS="--eNB -w USRP --mu"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-v2)
|
||||||
|
VM_NAME=ci-basic-sim
|
||||||
|
ARCHIVES_LOC=basic_sim
|
||||||
|
LOG_PATTERN=basic_simulator
|
||||||
|
NB_PATTERN_FILES=2
|
||||||
|
BUILD_OPTIONS="--basic-simulator"
|
||||||
|
VM_MEMORY=8192
|
||||||
|
VM_CPU=4
|
||||||
|
RUN_OPTIONS="complex"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-v3)
|
||||||
|
VM_NAME=ci-phy-sim
|
||||||
|
ARCHIVES_LOC=phy_sim
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=6
|
||||||
|
BUILD_OPTIONS="--phy_simulators"
|
||||||
|
RUN_OPTIONS="./run_exec_autotests.bash -g \"01510*\" -q -np -b"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-v4)
|
||||||
|
VM_NAME=ci-cppcheck
|
||||||
|
VM_MEMORY=8192
|
||||||
|
ARCHIVES_LOC=cppcheck
|
||||||
|
LOG_PATTERN=cppcheck.xml
|
||||||
|
NB_PATTERN_FILES=1
|
||||||
|
BUILD_OPTIONS="--enable=warning --force --xml --xml-version=2 -i openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_decoder.c"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-v5)
|
||||||
|
VM_NAME=ci-gnb-usrp
|
||||||
|
ARCHIVES_LOC=gnb_usrp
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=4
|
||||||
|
BUILD_OPTIONS="--gNB -w USRP"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-v6)
|
||||||
|
VM_NAME=ci-ue-nr-usrp
|
||||||
|
ARCHIVES_LOC=nrue_usrp
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=4
|
||||||
|
BUILD_OPTIONS="--nrUE -w USRP"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-v7)
|
||||||
|
VM_NAME=ci-enb-ethernet
|
||||||
|
ARCHIVES_LOC=enb_eth
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=6
|
||||||
|
BUILD_OPTIONS="--eNB -t ETHERNET --noS1"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-v8)
|
||||||
|
VM_NAME=ci-ue-ethernet
|
||||||
|
ARCHIVES_LOC=ue_eth
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=6
|
||||||
|
BUILD_OPTIONS="--UE -t ETHERNET --noS1"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
--variant)
|
||||||
|
variant="$2"
|
||||||
|
case $variant in
|
||||||
|
enb-usrp)
|
||||||
|
VM_NAME=ci-enb-usrp
|
||||||
|
ARCHIVES_LOC=enb_usrp
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=4
|
||||||
|
BUILD_OPTIONS="--eNB -w USRP --mu"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
;;
|
||||||
|
basic-sim)
|
||||||
|
VM_NAME=ci-basic-sim
|
||||||
|
ARCHIVES_LOC=basic_sim
|
||||||
|
LOG_PATTERN=basic_simulator
|
||||||
|
NB_PATTERN_FILES=2
|
||||||
|
BUILD_OPTIONS="--basic-simulator"
|
||||||
|
VM_MEMORY=8192
|
||||||
|
VM_CPU=4
|
||||||
|
RUN_OPTIONS="complex"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
;;
|
||||||
|
phy-sim)
|
||||||
|
VM_NAME=ci-phy-sim
|
||||||
|
ARCHIVES_LOC=phy_sim
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=6
|
||||||
|
BUILD_OPTIONS="--phy_simulators"
|
||||||
|
RUN_OPTIONS="./run_exec_autotests.bash -g \"01510*\" -q -np -b"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
;;
|
||||||
|
cppcheck)
|
||||||
|
VM_NAME=ci-cppcheck
|
||||||
|
VM_MEMORY=8192
|
||||||
|
ARCHIVES_LOC=cppcheck
|
||||||
|
LOG_PATTERN=cppcheck.xml
|
||||||
|
NB_PATTERN_FILES=1
|
||||||
|
BUILD_OPTIONS="--enable=warning --force --xml --xml-version=2 -i openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_decoder.c"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
;;
|
||||||
|
gnb-usrp)
|
||||||
|
VM_NAME=ci-gnb-usrp
|
||||||
|
ARCHIVES_LOC=gnb_usrp
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=4
|
||||||
|
BUILD_OPTIONS="--gNB -w USRP"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
;;
|
||||||
|
nu-ue-usrp)
|
||||||
|
VM_NAME=ci-ue-nr-usrp
|
||||||
|
ARCHIVES_LOC=nrue_usrp
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=4
|
||||||
|
BUILD_OPTIONS="--nrUE -w USRP"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
;;
|
||||||
|
enb-ethernet)
|
||||||
|
VM_NAME=ci-enb-ethernet
|
||||||
|
ARCHIVES_LOC=enb_eth
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=6
|
||||||
|
BUILD_OPTIONS="--eNB -t ETHERNET --noS1"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
;;
|
||||||
|
ue-ethernet)
|
||||||
|
VM_NAME=ci-ue-ethernet
|
||||||
|
ARCHIVES_LOC=ue_eth
|
||||||
|
LOG_PATTERN=.Rel15.txt
|
||||||
|
NB_PATTERN_FILES=6
|
||||||
|
BUILD_OPTIONS="--UE -t ETHERNET --noS1"
|
||||||
|
NBARGS=$[$NBARGS+256]
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo ""
|
||||||
|
echo "Syntax Error: Invalid Variant option -> $variant"
|
||||||
|
echo ""
|
||||||
|
variant_usage
|
||||||
|
exit 1
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Syntax Error: unknown option: $key"
|
||||||
|
echo ""
|
||||||
|
top_usage
|
||||||
|
exit 1
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
MANY_CMDS=$[$CREATE_CMD+$BUILD_CMD+$WAIT_CMD+$DESTROY_CMD+$TEST_CMD+$REPORT_BUILD_CMD+$REPORT_TEST_CMD]
|
||||||
|
if [ $MANY_CMDS -gt 1 ]
|
||||||
|
then
|
||||||
|
echo "Syntax Error: too many commands"
|
||||||
|
top_usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ $HELP_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
if [ $MANY_CMDS -eq 0 ]
|
||||||
|
then
|
||||||
|
top_usage
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
if [ $CREATE_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
create_usage
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
if [ $BUILD_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
build_usage
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
if [ $WAIT_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
wait_usage
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
if [ $TEST_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
run_test_usage
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
if [ $DESTROY_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
destroy_usage
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
if [ $REPORT_BUILD_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
report_build_usage
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
if [ $REPORT_TEST_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
report_test_usage
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [ $MANY_CMDS -eq 0 ]
|
||||||
|
then
|
||||||
|
echo "Syntax Error: no command"
|
||||||
|
top_usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# For create, mandatory options: jn, id. Optional: variant
|
||||||
|
if [ $CREATE_CMD -eq 1 ] && [ $NBARGS -ne 3 ] && [ $NBARGS -ne 259 ]
|
||||||
|
then
|
||||||
|
echo "Syntax Error: unsupported option(s) for create command"
|
||||||
|
create_usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# For build, mandatory options: jn, id, ws. Optional: variant, k, D
|
||||||
|
if [ $BUILD_CMD -eq 1 ] && [ $NBARGS -ne 7 ] && [ $NBARGS -ne 263 ] && [ $NBARGS -ne 15 ] && [ $NBARGS -ne 271 ] && [ $NBARGS -ne 23 ] && [ $NBARGS -ne 279 ] && [ $NBARGS -ne 31 ] && [ $NBARGS -ne 287 ]
|
||||||
|
then
|
||||||
|
echo "Syntax Error: unsupported option(s) for build command"
|
||||||
|
build_usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# For wait, mandatory options: jn, id, ws. Optional: variant, k
|
||||||
|
if [ $WAIT_CMD -eq 1 ] && [ $NBARGS -ne 7 ] && [ $NBARGS -ne 263 ] && [ $NBARGS -ne 15 ] && [ $NBARGS -ne 271 ]
|
||||||
|
then
|
||||||
|
echo "Syntax Error: unsupported option(s) for wait command"
|
||||||
|
wait_usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# For test, mandatory options: jn, id, ws. Optional: variant, k
|
||||||
|
if [ $TEST_CMD -eq 1 ] && [ $NBARGS -ne 7 ] && [ $NBARGS -ne 263 ] && [ $NBARGS -ne 15 ] && [ $NBARGS -ne 271 ]
|
||||||
|
then
|
||||||
|
echo "Syntax Error: unsupported option(s) for test command"
|
||||||
|
run_test_usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# For destroy, mandatory options: jn, id.
|
||||||
|
if [ $DESTROY_CMD -eq 1 ] && [ $NBARGS -ne 3 ]
|
||||||
|
then
|
||||||
|
echo "Syntax Error: unsupported option(s) for destroy command"
|
||||||
|
destroy_usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# For report-build, mandatory options: jn, id, ws, gu, pu, br,co.
|
||||||
|
# or: jn, id, ws, gu, mr, sb, sc, tb, tc.
|
||||||
|
if [ $REPORT_BUILD_CMD -eq 1 ] && [ $NBARGS -ne 15463 ] && [ $NBARGS -ne 49255 ]
|
||||||
|
then
|
||||||
|
echo "Syntax Error: unsupported option(s) for report-build command"
|
||||||
|
report_build_usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# For report-test, mandatory options: jn, id, ws, gu, pu, br,co.
|
||||||
|
# or: jn, id, ws, gu, mr, sb, sc, tb, tc.
|
||||||
|
if [ $REPORT_TEST_CMD -eq 1 ] && [ $NBARGS -ne 15463 ] && [ $NBARGS -ne 49255 ]
|
||||||
|
then
|
||||||
|
echo "Syntax Error: unsupported option(s) for report-test command"
|
||||||
|
report_test_usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Checking uvt-kvm is installed
|
||||||
|
UVT_KVM_PATH=`which uvt-kvm | grep -c uvt-kvm`
|
||||||
|
if [ $UVT_KVM_PATH -eq 0 ]
|
||||||
|
then
|
||||||
|
echo "Error: uvt-kvm is not installed"
|
||||||
|
top_usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$JOB_NAME" == "XX" ] || [ "$BUILD_ID" == "XX" ]
|
||||||
|
then
|
||||||
|
VM_TEMPLATE=ci-
|
||||||
|
else
|
||||||
|
VM_TEMPLATE=${JOB_NAME}-b${BUILD_ID}-
|
||||||
|
fi
|
||||||
|
|
||||||
|
VM_NAME=`echo $VM_NAME | sed -e "s#ci-#$VM_TEMPLATE#"`
|
||||||
|
VM_CMDS=${VM_NAME}_cmds.txt
|
||||||
|
ARCHIVES_LOC=${JENKINS_WKSP}/archives/${ARCHIVES_LOC}
|
||||||
|
|
||||||
|
STATUS=0
|
||||||
|
if [ $CREATE_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
create_vm
|
||||||
|
fi
|
||||||
|
if [ $BUILD_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
build_on_vm
|
||||||
|
if [ $DAEMON -eq 0 ] && [ $STATUS -eq 0 ]
|
||||||
|
then
|
||||||
|
check_on_vm_build
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if [ $WAIT_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
wait_on_vm_build
|
||||||
|
if [ $STATUS -eq 0 ]
|
||||||
|
then
|
||||||
|
check_on_vm_build
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if [ $TEST_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
ARCHIVES_LOC=${ARCHIVES_LOC}/test
|
||||||
|
run_test_on_vm
|
||||||
|
fi
|
||||||
|
if [ $DESTROY_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
destroy_vm
|
||||||
|
fi
|
||||||
|
if [ $REPORT_BUILD_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
report_build
|
||||||
|
fi
|
||||||
|
if [ $REPORT_TEST_CMD -eq 1 ]
|
||||||
|
then
|
||||||
|
report_test
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Did command pass or fail?
|
||||||
|
if [ $STATUS -eq 0 ]
|
||||||
|
then
|
||||||
|
echo "STATUS seems OK"
|
||||||
|
else
|
||||||
|
echo "STATUS failed?"
|
||||||
|
fi
|
||||||
|
exit $STATUS
|
||||||
@@ -20,14 +20,13 @@
|
|||||||
# * contact@openairinterface.org
|
# * contact@openairinterface.org
|
||||||
# */
|
# */
|
||||||
|
|
||||||
function usage {
|
function report_build_usage {
|
||||||
echo "OAI Local Build Report script"
|
echo "OAI CI VM script"
|
||||||
echo " Original Author: Raphael Defosseux"
|
echo " Original Author: Raphael Defosseux"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Usage:"
|
echo "Usage:"
|
||||||
echo "------"
|
echo "------"
|
||||||
echo ""
|
echo " oai-ci-vm-tool report-build [OPTIONS]"
|
||||||
echo " reportBuildLocally.sh [OPTIONS]"
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "Options:"
|
echo "Options:"
|
||||||
echo "--------"
|
echo "--------"
|
||||||
@@ -47,6 +46,9 @@ function usage {
|
|||||||
echo " --build-id #### OR -id ####"
|
echo " --build-id #### OR -id ####"
|
||||||
echo " Specify the build ID of the Jenkins job."
|
echo " Specify the build ID of the Jenkins job."
|
||||||
echo ""
|
echo ""
|
||||||
|
echo " --workspace #### OR -ws ####"
|
||||||
|
echo " Specify the workspace."
|
||||||
|
echo ""
|
||||||
echo " --trigger merge-request OR -mr"
|
echo " --trigger merge-request OR -mr"
|
||||||
echo " --trigger push OR -pu"
|
echo " --trigger push OR -pu"
|
||||||
echo " Specify trigger action of the Jenkins job. Either a merge-request event or a push event."
|
echo " Specify trigger action of the Jenkins job. Either a merge-request event or a push event."
|
||||||
@@ -79,7 +81,7 @@ function usage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function trigger_usage {
|
function trigger_usage {
|
||||||
echo "OAI Local Build Report script"
|
echo "OAI CI VM script"
|
||||||
echo " Original Author: Raphael Defosseux"
|
echo " Original Author: Raphael Defosseux"
|
||||||
echo ""
|
echo ""
|
||||||
echo " --trigger merge-request OR -mr"
|
echo " --trigger merge-request OR -mr"
|
||||||
@@ -153,8 +155,8 @@ function summary_table_row {
|
|||||||
echo " <td bgcolor = \"lightcyan\" >$1</th>" >> ./build_results.html
|
echo " <td bgcolor = \"lightcyan\" >$1</th>" >> ./build_results.html
|
||||||
if [ -f $2 ]
|
if [ -f $2 ]
|
||||||
then
|
then
|
||||||
STATUS=`egrep -c "$3" $2`
|
BUILD_STATUS=`egrep -c "$3" $2`
|
||||||
if [ $STATUS -eq 1 ]
|
if [ $BUILD_STATUS -eq 1 ]
|
||||||
then
|
then
|
||||||
echo " <td bgcolor = \"green\" >OK</th>" >> ./build_results.html
|
echo " <td bgcolor = \"green\" >OK</th>" >> ./build_results.html
|
||||||
else
|
else
|
||||||
@@ -263,158 +265,14 @@ function sca_summary_table_footer {
|
|||||||
echo " <p style=\"margin-left: 30px\">Graphical Interface tool : <strong><code>cppcheck-gui -l cppcheck/cppcheck.xml</code></strong></p>" >> ./build_results.html
|
echo " <p style=\"margin-left: 30px\">Graphical Interface tool : <strong><code>cppcheck-gui -l cppcheck/cppcheck.xml</code></strong></p>" >> ./build_results.html
|
||||||
}
|
}
|
||||||
|
|
||||||
jb_checker=0
|
function report_build {
|
||||||
mr_checker=0
|
echo "############################################################"
|
||||||
pu_checker=0
|
echo "OAI CI VM script"
|
||||||
MR_TRIG=0
|
echo "############################################################"
|
||||||
PU_TRIG=0
|
|
||||||
while [[ $# -gt 0 ]]
|
|
||||||
do
|
|
||||||
key="$1"
|
|
||||||
|
|
||||||
case $key in
|
echo "JENKINS_WKSP = $JENKINS_WKSP"
|
||||||
-h|--help)
|
|
||||||
shift
|
|
||||||
usage
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
-gu|--git-url)
|
|
||||||
GIT_URL="$2"
|
|
||||||
let "jb_checker|=0x1"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-jn|--job-name)
|
|
||||||
JOB_NAME="$2"
|
|
||||||
let "jb_checker|=0x2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-id|--build-id)
|
|
||||||
BUILD_ID="$2"
|
|
||||||
let "jb_checker|=0x4"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--trigger)
|
|
||||||
TRIG="$2"
|
|
||||||
case $TRIG in
|
|
||||||
merge-request)
|
|
||||||
MR_TRIG=1
|
|
||||||
;;
|
|
||||||
push)
|
|
||||||
PU_TRIG=1
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: Invalid Trigger option -> $TRIG"
|
|
||||||
echo ""
|
|
||||||
trigger_usage
|
|
||||||
exit
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
let "jb_checker|=0x8"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-mr)
|
|
||||||
MR_TRIG=1
|
|
||||||
let "jb_checker|=0x8"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-pu)
|
|
||||||
PU_TRIG=1
|
|
||||||
let "jb_checker|=0x8"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-sb|--src-branch)
|
|
||||||
SOURCE_BRANCH="$2"
|
|
||||||
let "mr_checker|=0x1"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-sc|--src-commit)
|
|
||||||
SOURCE_COMMIT_ID="$2"
|
|
||||||
let "mr_checker|=0x2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-tb|--target-branch)
|
|
||||||
TARGET_BRANCH="$2"
|
|
||||||
let "mr_checker|=0x4"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-tc|--target-commit)
|
|
||||||
TARGET_COMMIT_ID="$2"
|
|
||||||
let "mr_checker|=0x8"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-br|--branch)
|
|
||||||
SOURCE_BRANCH="$2"
|
|
||||||
let "pu_checker|=0x1"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-co|--commit)
|
|
||||||
SOURCE_COMMIT_ID="$2"
|
|
||||||
let "pu_checker|=0x2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Syntax Error: unknown option: $key"
|
|
||||||
echo ""
|
|
||||||
usage
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ $jb_checker -ne 15 ]
|
|
||||||
then
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: missing job information."
|
|
||||||
# TODO : list missing info
|
|
||||||
echo ""
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $PU_TRIG -eq 1 ] && [ $MR_TRIG -eq 1 ]
|
|
||||||
then
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: trigger action incoherent."
|
|
||||||
echo ""
|
|
||||||
trigger_usage
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $PU_TRIG -eq 1 ]
|
|
||||||
then
|
|
||||||
if [ $pu_checker -ne 3 ]
|
|
||||||
then
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: missing push information."
|
|
||||||
# TODO : list missing info
|
|
||||||
echo ""
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $MR_TRIG -eq 1 ]
|
|
||||||
then
|
|
||||||
if [ $mr_checker -ne 15 ]
|
|
||||||
then
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: missing merge-request information."
|
|
||||||
# TODO : list missing info
|
|
||||||
echo ""
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
cd ${JENKINS_WKSP}
|
||||||
echo "<!DOCTYPE html>" > ./build_results.html
|
echo "<!DOCTYPE html>" > ./build_results.html
|
||||||
echo "<html class=\"no-js\" lang=\"en-US\">" >> ./build_results.html
|
echo "<html class=\"no-js\" lang=\"en-US\">" >> ./build_results.html
|
||||||
echo "<head>" >> ./build_results.html
|
echo "<head>" >> ./build_results.html
|
||||||
@@ -594,6 +452,8 @@ summary_table_row "RB Tools - Release 15" ./archives/ue_eth/rb_tool.Rel15.txt "B
|
|||||||
summary_table_row "NAS Mesh - Release 15" ./archives/ue_eth/nasmesh.Rel15.txt "Built target nasmesh" ./ue_eth_row6.html
|
summary_table_row "NAS Mesh - Release 15" ./archives/ue_eth/nasmesh.Rel15.txt "Built target nasmesh" ./ue_eth_row6.html
|
||||||
summary_table_footer
|
summary_table_footer
|
||||||
|
|
||||||
|
if [ -e ./archives/red_hat ]
|
||||||
|
then
|
||||||
echo " <h2>Red Hat (CentOS Linux release 7.4.1708) -- Summary</h2>" >> ./build_results.html
|
echo " <h2>Red Hat (CentOS Linux release 7.4.1708) -- Summary</h2>" >> ./build_results.html
|
||||||
|
|
||||||
summary_table_header "Red Hat -- OAI Build eNB -- USRP option"
|
summary_table_header "Red Hat -- OAI Build eNB -- USRP option"
|
||||||
@@ -602,6 +462,7 @@ summary_table_row "Coding - Release 15" ./archives/red_hat/coding.Rel15.txt "Bui
|
|||||||
summary_table_row "OAI USRP device if - Release 15" ./archives/red_hat/oai_usrpdevif.Rel15.txt "Built target oai_usrpdevif" ./enb_usrp_rh_row3.html
|
summary_table_row "OAI USRP device if - Release 15" ./archives/red_hat/oai_usrpdevif.Rel15.txt "Built target oai_usrpdevif" ./enb_usrp_rh_row3.html
|
||||||
summary_table_row "Parameters Lib Config - Release 15" ./archives/red_hat/params_libconfig.Rel15.txt "Built target params_libconfig" ./enb_usrp_rh_row4.html
|
summary_table_row "Parameters Lib Config - Release 15" ./archives/red_hat/params_libconfig.Rel15.txt "Built target params_libconfig" ./enb_usrp_rh_row4.html
|
||||||
summary_table_footer
|
summary_table_footer
|
||||||
|
fi
|
||||||
|
|
||||||
echo " <h3>Details</h3>" >> ./build_results.html
|
echo " <h3>Details</h3>" >> ./build_results.html
|
||||||
|
|
||||||
@@ -634,13 +495,15 @@ for DETAILS_TABLE in `ls ./ue_eth_row*.html`
|
|||||||
do
|
do
|
||||||
cat $DETAILS_TABLE >> ./build_results.html
|
cat $DETAILS_TABLE >> ./build_results.html
|
||||||
done
|
done
|
||||||
|
if [ -e ./archives/red_hat ]
|
||||||
|
then
|
||||||
for DETAILS_TABLE in `ls ./enb_usrp_rh_row*.html`
|
for DETAILS_TABLE in `ls ./enb_usrp_rh_row*.html`
|
||||||
do
|
do
|
||||||
cat $DETAILS_TABLE >> ./build_results.html
|
cat $DETAILS_TABLE >> ./build_results.html
|
||||||
done
|
done
|
||||||
rm -f ./enb_usrp_row*.html ./basic_sim_row*.html ./phy_sim_row*.html ./enb_eth_row*.html ./ue_eth_row*.html ./enb_usrp_rh_row*.html
|
fi
|
||||||
|
rm -f ./*_row*.html
|
||||||
|
|
||||||
echo "</body>" >> ./build_results.html
|
echo "</body>" >> ./build_results.html
|
||||||
echo "</html>" >> ./build_results.html
|
echo "</html>" >> ./build_results.html
|
||||||
|
}
|
||||||
exit 0
|
|
||||||
|
|||||||
+34
-170
@@ -20,14 +20,13 @@
|
|||||||
# * contact@openairinterface.org
|
# * contact@openairinterface.org
|
||||||
# */
|
# */
|
||||||
|
|
||||||
function usage {
|
function report_test_usage {
|
||||||
echo "OAI Test Report script"
|
echo "OAI CI VM script"
|
||||||
echo " Original Author: Raphael Defosseux"
|
echo " Original Author: Raphael Defosseux"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Usage:"
|
echo "Usage:"
|
||||||
echo "------"
|
echo "------"
|
||||||
echo ""
|
echo " oai-ci-vm-tool report-test [OPTIONS]"
|
||||||
echo " reportTestLocally.sh [OPTIONS]"
|
|
||||||
echo ""
|
echo ""
|
||||||
echo "Options:"
|
echo "Options:"
|
||||||
echo "--------"
|
echo "--------"
|
||||||
@@ -47,6 +46,9 @@ function usage {
|
|||||||
echo " --build-id #### OR -id ####"
|
echo " --build-id #### OR -id ####"
|
||||||
echo " Specify the build ID of the Jenkins job."
|
echo " Specify the build ID of the Jenkins job."
|
||||||
echo ""
|
echo ""
|
||||||
|
echo " --workspace #### OR -ws ####"
|
||||||
|
echo " Specify the workspace."
|
||||||
|
echo ""
|
||||||
echo " --trigger merge-request OR -mr"
|
echo " --trigger merge-request OR -mr"
|
||||||
echo " --trigger push OR -pu"
|
echo " --trigger push OR -pu"
|
||||||
echo " Specify trigger action of the Jenkins job. Either a merge-request event or a push event."
|
echo " Specify trigger action of the Jenkins job. Either a merge-request event or a push event."
|
||||||
@@ -78,167 +80,14 @@ function usage {
|
|||||||
echo ""
|
echo ""
|
||||||
}
|
}
|
||||||
|
|
||||||
function trigger_usage {
|
function report_test {
|
||||||
echo "OAI Test Report script"
|
echo "############################################################"
|
||||||
echo " Original Author: Raphael Defosseux"
|
echo "OAI CI VM script"
|
||||||
echo ""
|
echo "############################################################"
|
||||||
echo " --trigger merge-request OR -mr"
|
|
||||||
echo " --trigger push OR -pu"
|
|
||||||
echo " Specify trigger action of the Jenkins job. Either a merge-request event or a push event."
|
|
||||||
echo ""
|
|
||||||
}
|
|
||||||
|
|
||||||
jb_checker=0
|
echo "JENKINS_WKSP = $JENKINS_WKSP"
|
||||||
mr_checker=0
|
|
||||||
pu_checker=0
|
|
||||||
MR_TRIG=0
|
|
||||||
PU_TRIG=0
|
|
||||||
while [[ $# -gt 0 ]]
|
|
||||||
do
|
|
||||||
key="$1"
|
|
||||||
|
|
||||||
case $key in
|
cd ${JENKINS_WKSP}
|
||||||
-h|--help)
|
|
||||||
shift
|
|
||||||
usage
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
-gu|--git-url)
|
|
||||||
GIT_URL="$2"
|
|
||||||
let "jb_checker|=0x1"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-jn|--job-name)
|
|
||||||
JOB_NAME="$2"
|
|
||||||
let "jb_checker|=0x2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-id|--build-id)
|
|
||||||
BUILD_ID="$2"
|
|
||||||
let "jb_checker|=0x4"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--trigger)
|
|
||||||
TRIG="$2"
|
|
||||||
case $TRIG in
|
|
||||||
merge-request)
|
|
||||||
MR_TRIG=1
|
|
||||||
;;
|
|
||||||
push)
|
|
||||||
PU_TRIG=1
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: Invalid Trigger option -> $TRIG"
|
|
||||||
echo ""
|
|
||||||
trigger_usage
|
|
||||||
exit
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
let "jb_checker|=0x8"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-mr)
|
|
||||||
MR_TRIG=1
|
|
||||||
let "jb_checker|=0x8"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-pu)
|
|
||||||
PU_TRIG=1
|
|
||||||
let "jb_checker|=0x8"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-sb|--src-branch)
|
|
||||||
SOURCE_BRANCH="$2"
|
|
||||||
let "mr_checker|=0x1"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-sc|--src-commit)
|
|
||||||
SOURCE_COMMIT_ID="$2"
|
|
||||||
let "mr_checker|=0x2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-tb|--target-branch)
|
|
||||||
TARGET_BRANCH="$2"
|
|
||||||
let "mr_checker|=0x4"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-tc|--target-commit)
|
|
||||||
TARGET_COMMIT_ID="$2"
|
|
||||||
let "mr_checker|=0x8"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-br|--branch)
|
|
||||||
SOURCE_BRANCH="$2"
|
|
||||||
let "pu_checker|=0x1"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-co|--commit)
|
|
||||||
SOURCE_COMMIT_ID="$2"
|
|
||||||
let "pu_checker|=0x2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Syntax Error: unknown option: $key"
|
|
||||||
echo ""
|
|
||||||
usage
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ $jb_checker -ne 15 ]
|
|
||||||
then
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: missing job information."
|
|
||||||
# TODO : list missing info
|
|
||||||
echo ""
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $PU_TRIG -eq 1 ] && [ $MR_TRIG -eq 1 ]
|
|
||||||
then
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: trigger action incoherent."
|
|
||||||
echo ""
|
|
||||||
trigger_usage
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $PU_TRIG -eq 1 ]
|
|
||||||
then
|
|
||||||
if [ $pu_checker -ne 3 ]
|
|
||||||
then
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: missing push information."
|
|
||||||
# TODO : list missing info
|
|
||||||
echo ""
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $MR_TRIG -eq 1 ]
|
|
||||||
then
|
|
||||||
if [ $mr_checker -ne 15 ]
|
|
||||||
then
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: missing merge-request information."
|
|
||||||
# TODO : list missing info
|
|
||||||
echo ""
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "<!DOCTYPE html>" > ./test_simulator_results.html
|
echo "<!DOCTYPE html>" > ./test_simulator_results.html
|
||||||
echo "<html class=\"no-js\" lang=\"en-US\">" >> ./test_simulator_results.html
|
echo "<html class=\"no-js\" lang=\"en-US\">" >> ./test_simulator_results.html
|
||||||
@@ -561,22 +410,38 @@ then
|
|||||||
echo " <th>Result</th>" >> ./test_simulator_results.html
|
echo " <th>Result</th>" >> ./test_simulator_results.html
|
||||||
echo " <th>Time</th>" >> ./test_simulator_results.html
|
echo " <th>Time</th>" >> ./test_simulator_results.html
|
||||||
echo " </tr>" >> ./test_simulator_results.html
|
echo " </tr>" >> ./test_simulator_results.html
|
||||||
|
PREV_SECTION=0
|
||||||
|
PREV_TIME_IN_SECS=0
|
||||||
TESTCASES_LIST=`sed -e "s# #@#g" $XML_FILE | grep testcase`
|
TESTCASES_LIST=`sed -e "s# #@#g" $XML_FILE | grep testcase`
|
||||||
for TESTCASE in $TESTCASES_LIST
|
for TESTCASE in $TESTCASES_LIST
|
||||||
do
|
do
|
||||||
echo " <tr>" >> ./test_simulator_results.html
|
|
||||||
NAME=`echo $TESTCASE | sed -e "s#^.*name='##" -e "s#'@description=.*##" | sed -e "s#@# #g"`
|
NAME=`echo $TESTCASE | sed -e "s#^.*name='##" -e "s#'@description=.*##" | sed -e "s#@# #g"`
|
||||||
echo " <td>$NAME</td>" >> ./test_simulator_results.html
|
SECTION=`echo $NAME | sed -e "s#\..*##"`
|
||||||
|
if [ $SECTION != $PREV_SECTION ]
|
||||||
|
then
|
||||||
|
echo " <tr bgcolor = \"#8FBC8F\" >" >> ./test_simulator_results.html
|
||||||
|
echo " <td align = \"center\" colspan = 4 >\"$SECTION\" series</td>" >> ./test_simulator_results.html
|
||||||
|
echo " </tr>" >> ./test_simulator_results.html
|
||||||
|
PREV_SECTION=$SECTION
|
||||||
|
PREV_TIME_IN_SECS=0
|
||||||
|
fi
|
||||||
DESC=`echo $TESTCASE | sed -e "s#^.*description='##" -e "s#'@Run_result=.*##" | sed -e "s#@# #g"`
|
DESC=`echo $TESTCASE | sed -e "s#^.*description='##" -e "s#'@Run_result=.*##" | sed -e "s#@# #g"`
|
||||||
echo " <td>$DESC</td>" >> ./test_simulator_results.html
|
|
||||||
RESULT=`echo $TESTCASE | sed -e "s#^.*RESULT='##" -e "s#'.*##" | sed -e "s#@# #g"`
|
RESULT=`echo $TESTCASE | sed -e "s#^.*RESULT='##" -e "s#'.*##" | sed -e "s#@# #g"`
|
||||||
|
TIME_IN_SECS=`echo $TESTCASE | sed -e "s#^.*time='##" -e "s#'@RESULT=.*##" | sed -e "s#@# #g" -e "s# s.*##"`
|
||||||
|
TIME=`echo "$TIME_IN_SECS - $PREV_TIME_IN_SECS" | bc -l | awk '{printf "%.2f s", $0}'`
|
||||||
|
PREV_TIME_IN_SECS=$TIME_IN_SECS
|
||||||
|
echo " <tr>" >> ./test_simulator_results.html
|
||||||
|
echo " <td>$NAME</td>" >> ./test_simulator_results.html
|
||||||
|
echo " <td>$DESC</td>" >> ./test_simulator_results.html
|
||||||
if [[ $RESULT =~ .*PASS.* ]]
|
if [[ $RESULT =~ .*PASS.* ]]
|
||||||
then
|
then
|
||||||
echo " <td bgcolor = \"green\" >$RESULT</td>" >> ./test_simulator_results.html
|
echo " <td bgcolor = \"green\" >$RESULT</td>" >> ./test_simulator_results.html
|
||||||
else
|
else
|
||||||
echo " <td bgcolor = \"red\" >$RESULT</td>" >> ./test_simulator_results.html
|
SPLITTED_LINE=`echo -e $TESTCASE | sed -e "s#@#\n#g"`
|
||||||
|
NB_RUNS=`echo -e "${SPLITTED_LINE}" | grep -v Run_result | egrep -c "Run_"`
|
||||||
|
NB_FAILS=`echo -e "${SPLITTED_LINE}" | grep -v Run_result | egrep -c "=FAIL"`
|
||||||
|
echo " <td bgcolor = \"red\" >${RESULT} (${NB_FAILS}/${NB_RUNS})</td>" >> ./test_simulator_results.html
|
||||||
fi
|
fi
|
||||||
TIME=`echo $TESTCASE | sed -e "s#^.*time='##" -e "s#'@RESULT=.*##" | sed -e "s#@# #g"`
|
|
||||||
echo " <td>$TIME</td>" >> ./test_simulator_results.html
|
echo " <td>$TIME</td>" >> ./test_simulator_results.html
|
||||||
echo " </tr>" >> ./test_simulator_results.html
|
echo " </tr>" >> ./test_simulator_results.html
|
||||||
done
|
done
|
||||||
@@ -586,5 +451,4 @@ fi
|
|||||||
|
|
||||||
echo "</body>" >> ./test_simulator_results.html
|
echo "</body>" >> ./test_simulator_results.html
|
||||||
echo "</html>" >> ./test_simulator_results.html
|
echo "</html>" >> ./test_simulator_results.html
|
||||||
|
}
|
||||||
exit 0
|
|
||||||
|
|||||||
+25
-159
@@ -20,15 +20,18 @@
|
|||||||
# * contact@openairinterface.org
|
# * contact@openairinterface.org
|
||||||
# */
|
# */
|
||||||
|
|
||||||
function usage {
|
function run_test_usage {
|
||||||
echo "OAI VM Test Run script"
|
echo "OAI CI VM script"
|
||||||
echo " Original Author: Raphael Defosseux"
|
echo " Original Author: Raphael Defosseux"
|
||||||
|
echo " Requirements:"
|
||||||
|
echo " -- uvtool uvtool-libvirt apt-cacher"
|
||||||
|
echo " -- xenial image already synced"
|
||||||
echo " Default:"
|
echo " Default:"
|
||||||
echo " -- eNB with USRP"
|
echo " -- eNB with USRP"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Usage:"
|
echo "Usage:"
|
||||||
echo "------"
|
echo "------"
|
||||||
echo " runTestOnVM.sh [OPTIONS]"
|
echo " oai-ci-vm-tool test [OPTIONS]"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Options:"
|
echo "Options:"
|
||||||
echo "--------"
|
echo "--------"
|
||||||
@@ -41,12 +44,7 @@ function usage {
|
|||||||
echo " --workspace #### OR -ws ####"
|
echo " --workspace #### OR -ws ####"
|
||||||
echo " Specify the workspace."
|
echo " Specify the workspace."
|
||||||
echo ""
|
echo ""
|
||||||
echo " --variant enb-usrp OR -v1"
|
variant_usage
|
||||||
echo " --variant basic-sim OR -v2"
|
|
||||||
echo " --variant phy-sim OR -v3"
|
|
||||||
echo " --variant cppcheck OR -v4"
|
|
||||||
echo " --variant enb-ethernet OR -v7"
|
|
||||||
echo " --variant ue-ethernet OR -v8"
|
|
||||||
echo " Specify the variant to build."
|
echo " Specify the variant to build."
|
||||||
echo ""
|
echo ""
|
||||||
echo " --keep-vm-alive OR -k"
|
echo " --keep-vm-alive OR -k"
|
||||||
@@ -57,19 +55,6 @@ function usage {
|
|||||||
echo ""
|
echo ""
|
||||||
}
|
}
|
||||||
|
|
||||||
function variant_usage {
|
|
||||||
echo "OAI VM Test Run script"
|
|
||||||
echo " Original Author: Raphael Defosseux"
|
|
||||||
echo ""
|
|
||||||
echo " --variant enb-usrp OR -v1"
|
|
||||||
echo " --variant basic-sim OR -v2"
|
|
||||||
echo " --variant phy-sim OR -v3"
|
|
||||||
echo " --variant cppcheck OR -v4"
|
|
||||||
echo " --variant enb-ethernet OR -v7"
|
|
||||||
echo " --variant ue-ethernet OR -v8"
|
|
||||||
echo ""
|
|
||||||
}
|
|
||||||
|
|
||||||
function start_basic_sim_enb {
|
function start_basic_sim_enb {
|
||||||
local LOC_VM_IP_ADDR=$2
|
local LOC_VM_IP_ADDR=$2
|
||||||
local LOC_EPC_IP_ADDR=$3
|
local LOC_EPC_IP_ADDR=$3
|
||||||
@@ -95,6 +80,7 @@ function start_basic_sim_enb {
|
|||||||
echo "echo \"ulimit -c unlimited && ./lte-softmodem -O /home/ubuntu/tmp/ci-scripts/conf_files/ci-$LOC_CONF_FILE\" > ./my-lte-softmodem-run.sh " >> $1
|
echo "echo \"ulimit -c unlimited && ./lte-softmodem -O /home/ubuntu/tmp/ci-scripts/conf_files/ci-$LOC_CONF_FILE\" > ./my-lte-softmodem-run.sh " >> $1
|
||||||
echo "chmod 775 ./my-lte-softmodem-run.sh" >> $1
|
echo "chmod 775 ./my-lte-softmodem-run.sh" >> $1
|
||||||
echo "cat ./my-lte-softmodem-run.sh" >> $1
|
echo "cat ./my-lte-softmodem-run.sh" >> $1
|
||||||
|
echo "if [ -e /home/ubuntu/tmp/cmake_targets/log/$LOC_LOG_FILE ]; then sudo sudo rm -f /home/ubuntu/tmp/cmake_targets/log/$LOC_LOG_FILE; fi" >> $1
|
||||||
echo "sudo -E daemon --inherit --unsafe --name=enb_daemon --chdir=/home/ubuntu/tmp/cmake_targets/basic_simulator/enb -o /home/ubuntu/tmp/cmake_targets/log/$LOC_LOG_FILE ./my-lte-softmodem-run.sh" >> $1
|
echo "sudo -E daemon --inherit --unsafe --name=enb_daemon --chdir=/home/ubuntu/tmp/cmake_targets/basic_simulator/enb -o /home/ubuntu/tmp/cmake_targets/log/$LOC_LOG_FILE ./my-lte-softmodem-run.sh" >> $1
|
||||||
|
|
||||||
ssh -o StrictHostKeyChecking=no ubuntu@$LOC_VM_IP_ADDR < $1
|
ssh -o StrictHostKeyChecking=no ubuntu@$LOC_VM_IP_ADDR < $1
|
||||||
@@ -112,6 +98,7 @@ function start_basic_sim_ue {
|
|||||||
echo "echo \"./lte-uesoftmodem -C ${LOC_FREQUENCY}000000 -r $LOC_NB_RBS --ue-rxgain 140\" > ./my-lte-uesoftmodem-run.sh" >> $1
|
echo "echo \"./lte-uesoftmodem -C ${LOC_FREQUENCY}000000 -r $LOC_NB_RBS --ue-rxgain 140\" > ./my-lte-uesoftmodem-run.sh" >> $1
|
||||||
echo "chmod 775 ./my-lte-uesoftmodem-run.sh" >> $1
|
echo "chmod 775 ./my-lte-uesoftmodem-run.sh" >> $1
|
||||||
echo "cat ./my-lte-uesoftmodem-run.sh" >> $1
|
echo "cat ./my-lte-uesoftmodem-run.sh" >> $1
|
||||||
|
echo "if [ -e /home/ubuntu/tmp/cmake_targets/log/$LOC_UE_LOG_FILE ]; then sudo sudo rm -f /home/ubuntu/tmp/cmake_targets/log/$LOC_UE_LOG_FILE; fi" >> $1
|
||||||
echo "sudo -E daemon --inherit --unsafe --name=ue_daemon --chdir=/home/ubuntu/tmp/cmake_targets/basic_simulator/ue -o /home/ubuntu/tmp/cmake_targets/log/$LOC_UE_LOG_FILE ./my-lte-uesoftmodem-run.sh" >> $1
|
echo "sudo -E daemon --inherit --unsafe --name=ue_daemon --chdir=/home/ubuntu/tmp/cmake_targets/basic_simulator/ue -o /home/ubuntu/tmp/cmake_targets/log/$LOC_UE_LOG_FILE ./my-lte-uesoftmodem-run.sh" >> $1
|
||||||
|
|
||||||
ssh -o StrictHostKeyChecking=no ubuntu@$2 < $1
|
ssh -o StrictHostKeyChecking=no ubuntu@$2 < $1
|
||||||
@@ -299,134 +286,10 @@ function terminate_ltebox_epc {
|
|||||||
rm $1
|
rm $1
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ $# -lt 1 ] || [ $# -gt 9 ]
|
function run_test_on_vm {
|
||||||
then
|
echo "############################################################"
|
||||||
echo "Syntax Error: not the correct number of arguments"
|
echo "OAI CI VM script"
|
||||||
echo ""
|
echo "############################################################"
|
||||||
usage
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
VM_TEMPLATE=ci-
|
|
||||||
JOB_NAME=XX
|
|
||||||
BUILD_ID=XX
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
ARCHIVES_LOC=enb_usrp/test
|
|
||||||
KEEP_VM_ALIVE=0
|
|
||||||
RUN_OPTIONS="none"
|
|
||||||
STATUS=0
|
|
||||||
|
|
||||||
while [[ $# -gt 0 ]]
|
|
||||||
do
|
|
||||||
key="$1"
|
|
||||||
|
|
||||||
case $key in
|
|
||||||
-h|--help)
|
|
||||||
shift
|
|
||||||
usage
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
-jn|--job-name)
|
|
||||||
JOB_NAME="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-id|--build-id)
|
|
||||||
BUILD_ID="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-ws|--workspace)
|
|
||||||
JENKINS_WKSP="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-k|--keep-vm-alive)
|
|
||||||
KEEP_VM_ALIVE=1
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v1)
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v2)
|
|
||||||
VM_NAME=ci-basic-sim
|
|
||||||
RUN_OPTIONS="complex"
|
|
||||||
ARCHIVES_LOC=basic_sim/test
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v3)
|
|
||||||
VM_NAME=ci-phy-sim
|
|
||||||
RUN_OPTIONS="./run_exec_autotests.bash -g \"01510*\" -q -np -b"
|
|
||||||
ARCHIVES_LOC=phy_sim/test
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v4)
|
|
||||||
VM_NAME=ci-cppcheck
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v7)
|
|
||||||
VM_NAME=ci-enb-ethernet
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v8)
|
|
||||||
VM_NAME=ci-ue-ethernet
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--variant)
|
|
||||||
variant="$2"
|
|
||||||
case $variant in
|
|
||||||
enb-usrp)
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
;;
|
|
||||||
basic-sim)
|
|
||||||
VM_NAME=ci-basic-sim
|
|
||||||
RUN_OPTIONS="complex"
|
|
||||||
ARCHIVES_LOC=basic_sim/test
|
|
||||||
;;
|
|
||||||
phy-sim)
|
|
||||||
VM_NAME=ci-phy-sim
|
|
||||||
RUN_OPTIONS="./run_exec_autotests.bash -g \"01510*\" -q -np -b"
|
|
||||||
ARCHIVES_LOC=phy_sim/test
|
|
||||||
;;
|
|
||||||
cppcheck)
|
|
||||||
VM_NAME=ci-cppcheck
|
|
||||||
;;
|
|
||||||
enb-ethernet)
|
|
||||||
VM_NAME=ci-enb-ethernet
|
|
||||||
;;
|
|
||||||
ue-ethernet)
|
|
||||||
VM_NAME=ci-ue-ethernet
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: Invalid Variant option -> $variant"
|
|
||||||
echo ""
|
|
||||||
variant_usage
|
|
||||||
exit 1
|
|
||||||
esac
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Syntax Error: unknown option: $key"
|
|
||||||
echo ""
|
|
||||||
usage
|
|
||||||
exit 1
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ "$JOB_NAME" == "XX" ] || [ "$BUILD_ID" == "XX" ]
|
|
||||||
then
|
|
||||||
VM_TEMPLATE=ci-
|
|
||||||
else
|
|
||||||
VM_TEMPLATE=${JOB_NAME}-b${BUILD_ID}-
|
|
||||||
fi
|
|
||||||
|
|
||||||
VM_NAME=`echo $VM_NAME | sed -e "s#ci-#$VM_TEMPLATE#"`
|
|
||||||
VM_CMDS=${VM_NAME}_cmds.txt
|
|
||||||
ARCHIVES_LOC=${JENKINS_WKSP}/archives/${ARCHIVES_LOC}
|
|
||||||
|
|
||||||
echo "VM_NAME = $VM_NAME"
|
echo "VM_NAME = $VM_NAME"
|
||||||
echo "VM_CMD_FILE = $VM_CMDS"
|
echo "VM_CMD_FILE = $VM_CMDS"
|
||||||
echo "JENKINS_WKSP = $JENKINS_WKSP"
|
echo "JENKINS_WKSP = $JENKINS_WKSP"
|
||||||
@@ -1019,6 +882,17 @@ then
|
|||||||
terminate_ltebox_epc $EPC_VM_CMDS $EPC_VM_IP_ADDR
|
terminate_ltebox_epc $EPC_VM_CMDS $EPC_VM_IP_ADDR
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ $KEEP_VM_ALIVE -eq 0 ]
|
||||||
|
then
|
||||||
|
echo "############################################################"
|
||||||
|
echo "Destroying VMs"
|
||||||
|
echo "############################################################"
|
||||||
|
uvt-kvm destroy $VM_NAME
|
||||||
|
ssh-keygen -R $VM_IP_ADDR
|
||||||
|
uvt-kvm destroy $EPC_VM_NAME
|
||||||
|
ssh-keygen -R $EPC_VM_IP_ADDR
|
||||||
|
fi
|
||||||
|
|
||||||
echo "############################################################"
|
echo "############################################################"
|
||||||
echo "Checking run status"
|
echo "Checking run status"
|
||||||
echo "############################################################"
|
echo "############################################################"
|
||||||
@@ -1027,12 +901,4 @@ then
|
|||||||
if [ $IPERF_STATUS -ne 0 ]; then STATUS=-1; fi
|
if [ $IPERF_STATUS -ne 0 ]; then STATUS=-1; fi
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
}
|
||||||
if [ $STATUS -eq 0 ]
|
|
||||||
then
|
|
||||||
echo "STATUS seems OK"
|
|
||||||
else
|
|
||||||
echo "STATUS failed?"
|
|
||||||
fi
|
|
||||||
|
|
||||||
exit $STATUS
|
|
||||||
|
|||||||
+17
-253
@@ -20,8 +20,8 @@
|
|||||||
# * contact@openairinterface.org
|
# * contact@openairinterface.org
|
||||||
# */
|
# */
|
||||||
|
|
||||||
function usage {
|
function wait_usage {
|
||||||
echo "OAI VM Build Check script"
|
echo "OAI CI VM script"
|
||||||
echo " Original Author: Raphael Defosseux"
|
echo " Original Author: Raphael Defosseux"
|
||||||
echo " Requirements:"
|
echo " Requirements:"
|
||||||
echo " -- uvtool uvtool-libvirt apt-cacher"
|
echo " -- uvtool uvtool-libvirt apt-cacher"
|
||||||
@@ -31,9 +31,9 @@ function usage {
|
|||||||
echo ""
|
echo ""
|
||||||
echo "Usage:"
|
echo "Usage:"
|
||||||
echo "------"
|
echo "------"
|
||||||
echo " waitBuildOnVM.sh [OPTIONS]"
|
echo " oai-ci-vm-tool wait [OPTIONS]"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Options:"
|
echo "Mandatory Options:"
|
||||||
echo "--------"
|
echo "--------"
|
||||||
echo " --job-name #### OR -jn ####"
|
echo " --job-name #### OR -jn ####"
|
||||||
echo " Specify the name of the Jenkins job."
|
echo " Specify the name of the Jenkins job."
|
||||||
@@ -44,16 +44,11 @@ function usage {
|
|||||||
echo " --workspace #### OR -ws ####"
|
echo " --workspace #### OR -ws ####"
|
||||||
echo " Specify the workspace."
|
echo " Specify the workspace."
|
||||||
echo ""
|
echo ""
|
||||||
echo " --variant enb-usrp OR -v1"
|
variant_usage
|
||||||
echo " --variant basic-sim OR -v2"
|
|
||||||
echo " --variant phy-sim OR -v3"
|
|
||||||
echo " --variant cppcheck OR -v4"
|
|
||||||
echo " --variant gnb-usrp OR -v5"
|
|
||||||
echo " --variant nu-ue-usrp OR -v6"
|
|
||||||
echo " --variant enb-ethernet OR -v7"
|
|
||||||
echo " --variant ue-ethernet OR -v8"
|
|
||||||
echo " Specify the variant to build."
|
echo " Specify the variant to build."
|
||||||
echo ""
|
echo ""
|
||||||
|
echo "Options:"
|
||||||
|
echo "--------"
|
||||||
echo " --keep-vm-alive OR -k"
|
echo " --keep-vm-alive OR -k"
|
||||||
echo " Keep the VM alive after the build."
|
echo " Keep the VM alive after the build."
|
||||||
echo ""
|
echo ""
|
||||||
@@ -62,239 +57,10 @@ function usage {
|
|||||||
echo ""
|
echo ""
|
||||||
}
|
}
|
||||||
|
|
||||||
function variant_usage {
|
function wait_on_vm_build {
|
||||||
echo "OAI VM Build Check script"
|
echo "############################################################"
|
||||||
echo " Original Author: Raphael Defosseux"
|
echo "OAI CI VM script"
|
||||||
echo ""
|
echo "############################################################"
|
||||||
echo " --variant enb-usrp OR -v1"
|
|
||||||
echo " --variant basic-sim OR -v2"
|
|
||||||
echo " --variant phy-sim OR -v3"
|
|
||||||
echo " --variant cppcheck OR -v4"
|
|
||||||
echo " --variant gnb-usrp OR -v5"
|
|
||||||
echo " --variant nu-ue-usrp OR -v6"
|
|
||||||
echo " --variant enb-ethernet OR -v7"
|
|
||||||
echo " --variant ue-ethernet OR -v8"
|
|
||||||
echo ""
|
|
||||||
}
|
|
||||||
|
|
||||||
if [ $# -lt 1 ] || [ $# -gt 9 ]
|
|
||||||
then
|
|
||||||
echo "Syntax Error: not the correct number of arguments"
|
|
||||||
echo ""
|
|
||||||
usage
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
VM_TEMPLATE=ci-
|
|
||||||
JOB_NAME=XX
|
|
||||||
BUILD_ID=XX
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
VM_MEMORY=2048
|
|
||||||
VM_CPU=4
|
|
||||||
ARCHIVES_LOC=enb_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--eNB -w USRP"
|
|
||||||
KEEP_VM_ALIVE=0
|
|
||||||
|
|
||||||
while [[ $# -gt 0 ]]
|
|
||||||
do
|
|
||||||
key="$1"
|
|
||||||
|
|
||||||
case $key in
|
|
||||||
-h|--help)
|
|
||||||
shift
|
|
||||||
usage
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
-jn|--job-name)
|
|
||||||
JOB_NAME="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-id|--build-id)
|
|
||||||
BUILD_ID="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-ws|--workspace)
|
|
||||||
JENKINS_WKSP="$2"
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-k|--keep-vm-alive)
|
|
||||||
KEEP_VM_ALIVE=1
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v1)
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
ARCHIVES_LOC=enb_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--eNB -w USRP --mu"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v2)
|
|
||||||
VM_NAME=ci-basic-sim
|
|
||||||
ARCHIVES_LOC=basic_sim
|
|
||||||
LOG_PATTERN=basic_simulator
|
|
||||||
NB_PATTERN_FILES=2
|
|
||||||
BUILD_OPTIONS="--basic-simulator"
|
|
||||||
VM_MEMORY=8192
|
|
||||||
VM_CPU=4
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v3)
|
|
||||||
VM_NAME=ci-phy-sim
|
|
||||||
ARCHIVES_LOC=phy_sim
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--phy_simulators"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v4)
|
|
||||||
VM_NAME=ci-cppcheck
|
|
||||||
VM_MEMORY=8192
|
|
||||||
ARCHIVES_LOC=cppcheck
|
|
||||||
LOG_PATTERN=cppcheck.xml
|
|
||||||
NB_PATTERN_FILES=1
|
|
||||||
BUILD_OPTIONS="--enable=warning --force --xml --xml-version=2 -i openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_decoder.c"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v5)
|
|
||||||
VM_NAME=ci-gnb-usrp
|
|
||||||
ARCHIVES_LOC=gnb_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--gNB -w USRP"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v6)
|
|
||||||
VM_NAME=ci-ue-nr-usrp
|
|
||||||
ARCHIVES_LOC=nrue_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--nrUE -w USRP"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v7)
|
|
||||||
VM_NAME=ci-enb-ethernet
|
|
||||||
ARCHIVES_LOC=enb_eth
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--eNB -t ETHERNET --noS1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-v8)
|
|
||||||
VM_NAME=ci-ue-ethernet
|
|
||||||
ARCHIVES_LOC=ue_eth
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--UE -t ETHERNET --noS1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--variant)
|
|
||||||
variant="$2"
|
|
||||||
case $variant in
|
|
||||||
enb-usrp)
|
|
||||||
VM_NAME=ci-enb-usrp
|
|
||||||
ARCHIVES_LOC=enb_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--eNB -w USRP --mu"
|
|
||||||
;;
|
|
||||||
basic-sim)
|
|
||||||
VM_NAME=ci-basic-sim
|
|
||||||
ARCHIVES_LOC=basic_sim
|
|
||||||
LOG_PATTERN=basic_simulator
|
|
||||||
NB_PATTERN_FILES=2
|
|
||||||
BUILD_OPTIONS="--basic-simulator"
|
|
||||||
VM_MEMORY=8192
|
|
||||||
VM_CPU=4
|
|
||||||
;;
|
|
||||||
phy-sim)
|
|
||||||
VM_NAME=ci-phy-sim
|
|
||||||
ARCHIVES_LOC=phy_sim
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--phy_simulators"
|
|
||||||
;;
|
|
||||||
cppcheck)
|
|
||||||
VM_NAME=ci-cppcheck
|
|
||||||
VM_MEMORY=8192
|
|
||||||
ARCHIVES_LOC=cppcheck
|
|
||||||
LOG_PATTERN=cppcheck.xml
|
|
||||||
NB_PATTERN_FILES=1
|
|
||||||
BUILD_OPTIONS="--enable=warning --force --xml --xml-version=2 -i openair1/PHY/CODING/nrLDPC_decoder/nrLDPC_decoder.c"
|
|
||||||
;;
|
|
||||||
gnb-usrp)
|
|
||||||
VM_NAME=ci-gnb-usrp
|
|
||||||
ARCHIVES_LOC=gnb_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--gNB -w USRP"
|
|
||||||
;;
|
|
||||||
nu-ue-usrp)
|
|
||||||
VM_NAME=ci-ue-nr-usrp
|
|
||||||
ARCHIVES_LOC=nrue_usrp
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=4
|
|
||||||
BUILD_OPTIONS="--nrUE -w USRP"
|
|
||||||
;;
|
|
||||||
enb-ethernet)
|
|
||||||
VM_NAME=ci-enb-ethernet
|
|
||||||
ARCHIVES_LOC=enb_eth
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--eNB -t ETHERNET --noS1"
|
|
||||||
;;
|
|
||||||
ue-ethernet)
|
|
||||||
VM_NAME=ci-ue-ethernet
|
|
||||||
ARCHIVES_LOC=ue_eth
|
|
||||||
LOG_PATTERN=.Rel15.txt
|
|
||||||
NB_PATTERN_FILES=6
|
|
||||||
BUILD_OPTIONS="--UE -t ETHERNET --noS1"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo ""
|
|
||||||
echo "Syntax Error: Invalid Variant option -> $variant"
|
|
||||||
echo ""
|
|
||||||
variant_usage
|
|
||||||
exit 1
|
|
||||||
esac
|
|
||||||
shift
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Syntax Error: unknown option: $key"
|
|
||||||
echo ""
|
|
||||||
usage
|
|
||||||
exit 1
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ ! -f $JENKINS_WKSP/localZip.zip ]
|
|
||||||
then
|
|
||||||
echo "Missing localZip.zip file!"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
if [ ! -f /etc/apt/apt.conf.d/01proxy ]
|
|
||||||
then
|
|
||||||
echo "Missing /etc/apt/apt.conf.d/01proxy file!"
|
|
||||||
echo "Is apt-cacher installed and configured?"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$JOB_NAME" == "XX" ] || [ "$BUILD_ID" == "XX" ]
|
|
||||||
then
|
|
||||||
VM_TEMPLATE=ci-
|
|
||||||
else
|
|
||||||
VM_TEMPLATE=${JOB_NAME}-b${BUILD_ID}-
|
|
||||||
fi
|
|
||||||
|
|
||||||
VM_NAME=`echo $VM_NAME | sed -e "s#ci-#$VM_TEMPLATE#"`
|
|
||||||
VM_CMDS=${VM_NAME}_cmds.txt
|
|
||||||
ARCHIVES_LOC=${JENKINS_WKSP}/archives/${ARCHIVES_LOC}
|
|
||||||
|
|
||||||
echo "VM_NAME = $VM_NAME"
|
echo "VM_NAME = $VM_NAME"
|
||||||
echo "VM_CMD_FILE = $VM_CMDS"
|
echo "VM_CMD_FILE = $VM_CMDS"
|
||||||
@@ -309,7 +75,8 @@ then
|
|||||||
echo "############################################################"
|
echo "############################################################"
|
||||||
echo "You should have created the VM before doing anything"
|
echo "You should have created the VM before doing anything"
|
||||||
echo "############################################################"
|
echo "############################################################"
|
||||||
exit 1
|
STATUS=1
|
||||||
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Waiting for VM to be started"
|
echo "Waiting for VM to be started"
|
||||||
@@ -332,7 +99,10 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
ssh -o StrictHostKeyChecking=no ubuntu@$VM_IP_ADDR < $VM_CMDS
|
ssh -o StrictHostKeyChecking=no ubuntu@$VM_IP_ADDR < $VM_CMDS
|
||||||
|
rm -f $VM_CMDS
|
||||||
|
}
|
||||||
|
|
||||||
|
function check_on_vm_build {
|
||||||
echo "############################################################"
|
echo "############################################################"
|
||||||
echo "Creating a tmp folder to store results and artifacts"
|
echo "Creating a tmp folder to store results and artifacts"
|
||||||
echo "############################################################"
|
echo "############################################################"
|
||||||
@@ -397,10 +167,4 @@ done
|
|||||||
|
|
||||||
if [ $NB_PATTERN_FILES -ne $NB_FOUND_FILES ]; then STATUS=-1; fi
|
if [ $NB_PATTERN_FILES -ne $NB_FOUND_FILES ]; then STATUS=-1; fi
|
||||||
|
|
||||||
if [ $STATUS -eq 0 ]
|
}
|
||||||
then
|
|
||||||
echo "STATUS seems OK"
|
|
||||||
else
|
|
||||||
echo "STATUS failed?"
|
|
||||||
fi
|
|
||||||
exit $STATUS
|
|
||||||
|
|||||||
@@ -303,7 +303,8 @@ function test_compile_and_run() {
|
|||||||
do
|
do
|
||||||
global_result=1
|
global_result=1
|
||||||
result_string=""
|
result_string=""
|
||||||
PROPER_DESC=`echo ${desc_array[$tags_array_index]} | sed -e "s@^.*lsim.*est case.*(Test@Test@" -e "s@^ *(@@" -e "s/),$//"`
|
PROPER_DESC=`echo ${desc_array[$tags_array_index]} | sed -e "s@^.*Test cases.*(Test@Test@" -e "s@^ *(@@" -e"s/)$//" -e "s/),$//"`
|
||||||
|
echo_info "$PROPER_DESC"
|
||||||
|
|
||||||
for (( run_index=1; run_index <= $nruns; run_index++ ))
|
for (( run_index=1; run_index <= $nruns; run_index++ ))
|
||||||
do
|
do
|
||||||
|
|||||||
@@ -933,23 +933,20 @@
|
|||||||
|
|
||||||
<testCase id="015100">
|
<testCase id="015100">
|
||||||
<class>execution</class>
|
<class>execution</class>
|
||||||
<desc>dlsim test cases (Test 1: 10 MHz, R2.FDD (MCS 5), EVA5, -1dB),
|
<desc>dlsim Test cases. (Test 1: 10 MHz, R2.FDD (MCS 5), EVA5, -1dB),
|
||||||
(Test 5: 1.4 MHz, R4.FDD (MCS 4), EVA5, 0dB (70%)),
|
(Test 5: 1.4 MHz, R4.FDD (MCS 4), EVA5, 0dB (70%)),
|
||||||
(Test 6, 10 MHz, R3.FDD (MCS 15), EVA5, 6.7dB (70%)),
|
(Test 6: 10 MHz, R3.FDD (MCS 15), EVA5, 6.7dB (70%)),
|
||||||
(Test 6b, 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (70%)),
|
(Test 6b: 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (70%)),
|
||||||
(Test 7, 5 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (30%)),
|
(Test 7: 10 MHz, R3-1.FDD (MCS 15), EVA5, 6.7dB (30%)),
|
||||||
(Test 7b, 5 MHz, R3-1.FDD (MCS 15), ETU70, 1.4 dB (30%)),
|
(Test 7b: 5 MHz, R3-1.FDD (MCS 15), ETU70, 1.4 dB (30%)),
|
||||||
(Test 10, 5 MHz, R6.FDD (MCS 25), EVA5, 17.4 dB (70%)),
|
(Test 10: 5 MHz, R6.FDD (MCS 25), EVA5, 17.4 dB (70%)),
|
||||||
(Test 10b, 5 MHz, R6-1.FDD (MCS 24,18 PRB), EVA5, 17.5dB (70%)),
|
(Test 10b: 5 MHz, R6-1.FDD (MCS 24,18 PRB), EVA5, 17.5dB (70%)),
|
||||||
(Test 11, 10 MHz, R7.FDD (MCS 25), EVA5, 17.7dB (70%)),
|
(Test 11: 10 MHz, R7.FDD (MCS 25), EVA5, 17.7dB (70%)),
|
||||||
(Test 11b, 10 MHz, R7-1.FDD (MCS 25), EVA5, 16.7dB (70%)),
|
(Test 15: 20 MHz, R.9 FDD (MCS 26), EVA5, 17.6dB (70%)),
|
||||||
(Test 15, 20 MHz, R.9 FDD (MCS 26), EVA5, 17.6dB (70%)),
|
(Test 15b: 20 MHz, R.9-2 FDD (MCS 26, 17PRB), EVA5, 17.3dB (70%)),
|
||||||
(Test 15b, 20 MHz, R.9-2 FDD (MCS 26, 17PRB), EVA5, 17.3dB (70%)),
|
(Test 15c: 20 MHz, R.9-1 FDD (MCS 26, 83 PRB), EVA5, 16.6dB (70%)),
|
||||||
(Test 15c, 20 MHz, R.9-1 FDD (MCS 26, 83 PRB), EVA5, 16.6dB (70%)),
|
(TM2 Test 1: 10 MHz, R.11 FDD (MCS 14), EVA5, 6.8 dB (70%)),
|
||||||
|
(TM2 Test 1b: 5 MHz, R.11-2 FDD (MCS 13), EVA5, 5.9 dB (70%))</desc>
|
||||||
(TM2 Test 1 10 MHz, R.11 FDD (MCS 14), EVA5, 6.8 dB (70%)),
|
|
||||||
(TM2 Test 1b 5 MHz, R.11-2 FDD (MCS 13), EVA5, 5.9 dB (70%)),
|
|
||||||
</desc>
|
|
||||||
<pre_compile_prog></pre_compile_prog>
|
<pre_compile_prog></pre_compile_prog>
|
||||||
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
||||||
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
||||||
@@ -970,7 +967,7 @@
|
|||||||
-m26 -gF -s16.6 -w1.0 -f.2 -n500 -B100 -c2 -z2 -r1899 -O60
|
-m26 -gF -s16.6 -w1.0 -f.2 -n500 -B100 -c2 -z2 -r1899 -O60
|
||||||
-m14 -gF -s6.8 -w1.0 -f.2 -n500 -B50 -c2 -x2 -y2 -z2 -O60
|
-m14 -gF -s6.8 -w1.0 -f.2 -n500 -B50 -c2 -x2 -y2 -z2 -O60
|
||||||
-m13 -gF -s5.9 -w1.0 -f.2 -n500 -B25 -c3 -x2 -y2 -z2 -O60</main_exec_args>
|
-m13 -gF -s5.9 -w1.0 -f.2 -n500 -B25 -c3 -x2 -y2 -z2 -O60</main_exec_args>
|
||||||
<tags>dlsim.test1 dlsim.test5 dlsim.test6 dlsim.test6b dlsim.test7 dlsim.test7b dlsim.test10 dlsim.test10b dlsim.test11 dlsim.TM2_test1 dlsim.TM2_test1b</tags>
|
<tags>dlsim.test1 dlsim.test5 dlsim.test6 dlsim.test6b dlsim.test7 dlsim.test7b dlsim.test10 dlsim.test10b dlsim.test11 dlsim.test11a dlsim.test11b dlsim.test11c dlsim.TM2_test1 dlsim.TM2_test1b</tags>
|
||||||
<search_expr_true>"passed"</search_expr_true>
|
<search_expr_true>"passed"</search_expr_true>
|
||||||
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
|
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
|
||||||
<nruns>3</nruns>
|
<nruns>3</nruns>
|
||||||
@@ -978,12 +975,12 @@
|
|||||||
|
|
||||||
<testCase id="015101">
|
<testCase id="015101">
|
||||||
<class>execution</class>
|
<class>execution</class>
|
||||||
<desc>ulsim Test cases. (Test 1, 5 MHz, FDD (MCS 5), AWGN, 6dB),
|
<desc>ulsim Test cases. (Test 1: 5 MHz, FDD (MCS 5), AWGN, 6dB),
|
||||||
(Test 2, 5 MHz, FDD (MCS 16), AWGN , 12dB (70%)),
|
(Test 2: 5 MHz, FDD (MCS 16), AWGN , 12dB (70%)),
|
||||||
(Test 3, 10 MHz, R3.FDD (MCS 5), AWGN, 6dB (70%)),
|
(Test 3: 10 MHz, R3.FDD (MCS 5), AWGN, 6dB (70%)),
|
||||||
(Test 4, 10 MHz, R3-1.FDD (MCS 16), AWGN, 12dB (70%)),
|
(Test 4: 10 MHz, R3-1.FDD (MCS 16), AWGN, 12dB (70%)),
|
||||||
(Test 5, 20 MHz, FDD (MCS 5), AWGN, 6dB (70%)),
|
(Test 5: 20 MHz, FDD (MCS 5), AWGN, 6dB (70%)),
|
||||||
(Test 6, 20 MHz, FDD (MCS 16), AWGN, 12 dB (70%))</desc>
|
(Test 6: 20 MHz, FDD (MCS 16), AWGN, 12 dB (70%))</desc>
|
||||||
<pre_compile_prog></pre_compile_prog>
|
<pre_compile_prog></pre_compile_prog>
|
||||||
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
||||||
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
||||||
@@ -1004,7 +1001,16 @@
|
|||||||
|
|
||||||
<testCase id="015102">
|
<testCase id="015102">
|
||||||
<class>execution</class>
|
<class>execution</class>
|
||||||
<desc>ldpctest test cases.</desc>
|
<desc>ldpc Test cases. (Test1: block length = 3872),
|
||||||
|
(Test2: block length = 4224),
|
||||||
|
(Test3: block length = 4576),
|
||||||
|
(Test4: block length = 4928),
|
||||||
|
(Test5: block length = 5280),
|
||||||
|
(Test6: block length = 5632),
|
||||||
|
(Test7: block length = 6336),
|
||||||
|
(Test8: block length = 7040),
|
||||||
|
(Test9: block length = 7744),
|
||||||
|
(Test10: block length = 8448)</desc>
|
||||||
<pre_compile_prog></pre_compile_prog>
|
<pre_compile_prog></pre_compile_prog>
|
||||||
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
||||||
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
||||||
@@ -1021,7 +1027,7 @@
|
|||||||
-l7040 -s10 -n100
|
-l7040 -s10 -n100
|
||||||
-l7744 -s10 -n100
|
-l7744 -s10 -n100
|
||||||
-l8448 -s10 -n100</main_exec_args>
|
-l8448 -s10 -n100</main_exec_args>
|
||||||
<tags>ldpctest.test1</tags>
|
<tags>ldpctest.test1 ldpctest.test2 ldpctest.test3 ldpctest.test4 ldpctest.test5 ldpctest.test6 ldpctest.test7 ldpctest.test8 ldpctest.test9 ldpctest.test10</tags>
|
||||||
<search_expr_true>BLER 0.000000</search_expr_true>
|
<search_expr_true>BLER 0.000000</search_expr_true>
|
||||||
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
|
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
|
||||||
<nruns>3</nruns>
|
<nruns>3</nruns>
|
||||||
@@ -1029,7 +1035,7 @@
|
|||||||
|
|
||||||
<testCase id="015103">
|
<testCase id="015103">
|
||||||
<class>execution</class>
|
<class>execution</class>
|
||||||
<desc>polartest test cases.</desc>
|
<desc>polartest Test cases. (Test1: PBCH polar test)</desc>
|
||||||
<pre_compile_prog></pre_compile_prog>
|
<pre_compile_prog></pre_compile_prog>
|
||||||
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
||||||
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
||||||
@@ -1045,7 +1051,8 @@
|
|||||||
|
|
||||||
<testCase id="015104">
|
<testCase id="015104">
|
||||||
<class>execution</class>
|
<class>execution</class>
|
||||||
<desc>nr_pbchsim test cases.</desc>
|
<desc>nr_pbchsim Test cases. (Test1: PBCH-only),
|
||||||
|
(Test2: PBCH and synchronization)</desc>
|
||||||
<pre_compile_prog></pre_compile_prog>
|
<pre_compile_prog></pre_compile_prog>
|
||||||
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
<compile_prog>$OPENAIR_DIR/cmake_targets/build_oai</compile_prog>
|
||||||
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
<compile_prog_args> --phy_simulators -c </compile_prog_args>
|
||||||
@@ -1054,8 +1061,8 @@
|
|||||||
<main_exec> $OPENAIR_DIR/targets/bin/nr_pbchsim.Rel15</main_exec>
|
<main_exec> $OPENAIR_DIR/targets/bin/nr_pbchsim.Rel15</main_exec>
|
||||||
<main_exec_args>-s-11 -S-10 -n1000
|
<main_exec_args>-s-11 -S-10 -n1000
|
||||||
-s-11 -S-10 -n10 -I</main_exec_args>
|
-s-11 -S-10 -n10 -I</main_exec_args>
|
||||||
<tags>nr_pbchsim.test1</tags>
|
<tags>nr_pbchsim.test1 nr_pbchsim.test2</tags>
|
||||||
<search_expr_true>n_errors \(negative CRC\) = 0</search_expr_true>
|
<search_expr_true>PBCH test OK</search_expr_true>
|
||||||
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
|
<search_expr_false>segmentation fault|assertion|exiting|fatal</search_expr_false>
|
||||||
<nruns>3</nruns>
|
<nruns>3</nruns>
|
||||||
</testCase>
|
</testCase>
|
||||||
|
|||||||
@@ -384,7 +384,7 @@ void nr_phy_config_request_sim(PHY_VARS_gNB *gNB,int N_RB_DL,int N_RB_UL,int mu)
|
|||||||
gNB_config->rf_config.ul_carrier_bandwidth.value = N_RB_UL;
|
gNB_config->rf_config.ul_carrier_bandwidth.value = N_RB_UL;
|
||||||
gNB_config->sch_config.half_frame_index.value = 0;
|
gNB_config->sch_config.half_frame_index.value = 0;
|
||||||
gNB_config->sch_config.ssb_subcarrier_offset.value = 0;
|
gNB_config->sch_config.ssb_subcarrier_offset.value = 0;
|
||||||
gNB_config->sch_config.n_ssb_crb.value = (N_RB_DL-20)>>1;
|
gNB_config->sch_config.n_ssb_crb.value = (N_RB_DL-20);
|
||||||
gNB_config->sch_config.ssb_subcarrier_offset.value = 0;
|
gNB_config->sch_config.ssb_subcarrier_offset.value = 0;
|
||||||
|
|
||||||
|
|
||||||
@@ -419,7 +419,7 @@ void nr_phy_config_request(NR_PHY_Config_t *phy_config)
|
|||||||
gNB_config->rf_config.ul_carrier_bandwidth.value = phy_config->cfg->rf_config.ul_carrier_bandwidth.value;//106;
|
gNB_config->rf_config.ul_carrier_bandwidth.value = phy_config->cfg->rf_config.ul_carrier_bandwidth.value;//106;
|
||||||
gNB_config->sch_config.half_frame_index.value = 0;
|
gNB_config->sch_config.half_frame_index.value = 0;
|
||||||
gNB_config->sch_config.ssb_subcarrier_offset.value = phy_config->cfg->sch_config.ssb_subcarrier_offset.value;//0;
|
gNB_config->sch_config.ssb_subcarrier_offset.value = phy_config->cfg->sch_config.ssb_subcarrier_offset.value;//0;
|
||||||
gNB_config->sch_config.n_ssb_crb.value = (phy_config->cfg->rf_config.dl_carrier_bandwidth.value-20)>>1;
|
gNB_config->sch_config.n_ssb_crb.value = (phy_config->cfg->rf_config.dl_carrier_bandwidth.value-20);
|
||||||
gNB_config->sch_config.physical_cell_id.value = phy_config->cfg->sch_config.physical_cell_id.value;
|
gNB_config->sch_config.physical_cell_id.value = phy_config->cfg->sch_config.physical_cell_id.value;
|
||||||
|
|
||||||
if (phy_config->cfg->subframe_config.duplex_mode.value == 0) {
|
if (phy_config->cfg->subframe_config.duplex_mode.value == 0) {
|
||||||
|
|||||||
@@ -655,7 +655,7 @@ int init_nr_ue_signal(PHY_VARS_NR_UE *ue,
|
|||||||
int i,j,k,l;
|
int i,j,k,l;
|
||||||
int eNB_id;
|
int eNB_id;
|
||||||
int th_id;
|
int th_id;
|
||||||
int n_ssb_crb=(fp->N_RB_DL-20)>>1;
|
int n_ssb_crb=(fp->N_RB_DL-20);
|
||||||
abstraction_flag = 0;
|
abstraction_flag = 0;
|
||||||
fp->nb_antennas_tx = 1;
|
fp->nb_antennas_tx = 1;
|
||||||
fp->nb_antennas_rx=1;
|
fp->nb_antennas_rx=1;
|
||||||
|
|||||||
@@ -49,7 +49,7 @@
|
|||||||
|
|
||||||
//#define NR_LTE_PDCCH_DCI_SWITCH
|
//#define NR_LTE_PDCCH_DCI_SWITCH
|
||||||
#define NR_PDCCH_DCI_RUN // activates new nr functions
|
#define NR_PDCCH_DCI_RUN // activates new nr functions
|
||||||
//#define NR_PDCCH_DCI_DEBUG // activates NR_PDCCH_DCI_DEBUG logs
|
#define NR_PDCCH_DCI_DEBUG // activates NR_PDCCH_DCI_DEBUG logs
|
||||||
#define NR_NBR_CORESET_ACT_BWP 3 // The number of CoreSets per BWP is limited to 3 (including initial CORESET: ControlResourceId 0)
|
#define NR_NBR_CORESET_ACT_BWP 3 // The number of CoreSets per BWP is limited to 3 (including initial CORESET: ControlResourceId 0)
|
||||||
#define NR_NBR_SEARCHSPACE_ACT_BWP 10 // The number of SearSpaces per BWP is limited to 10 (including initial SEARCHSPACE: SearchSpaceId 0)
|
#define NR_NBR_SEARCHSPACE_ACT_BWP 10 // The number of SearSpaces per BWP is limited to 10 (including initial SEARCHSPACE: SearchSpaceId 0)
|
||||||
#define PDCCH_TEST_POLAR_TEMP_FIX
|
#define PDCCH_TEST_POLAR_TEMP_FIX
|
||||||
|
|||||||
@@ -149,7 +149,7 @@ int nr_initial_sync(PHY_VARS_NR_UE *ue, runmode_t mode)
|
|||||||
int rx_power=0; //aarx,
|
int rx_power=0; //aarx,
|
||||||
//nfapi_nr_config_request_t* config;
|
//nfapi_nr_config_request_t* config;
|
||||||
|
|
||||||
int n_ssb_crb=(fp->N_RB_DL-20)>>1;
|
int n_ssb_crb=(fp->N_RB_DL-20);
|
||||||
// First try TDD normal prefix, mu 1
|
// First try TDD normal prefix, mu 1
|
||||||
fp->Ncp=NORMAL;
|
fp->Ncp=NORMAL;
|
||||||
fp->frame_type=TDD;
|
fp->frame_type=TDD;
|
||||||
@@ -213,12 +213,12 @@ int nr_initial_sync(PHY_VARS_NR_UE *ue, runmode_t mode)
|
|||||||
|
|
||||||
nr_gold_pdcch(ue,0, 2);
|
nr_gold_pdcch(ue,0, 2);
|
||||||
/*
|
/*
|
||||||
int nb_prefix_samples0 = frame_parms->nb_prefix_samples0;
|
int nb_prefix_samples0 = fp->nb_prefix_samples0;
|
||||||
frame_parms->nb_prefix_samples0 = frame_parms->nb_prefix_samples.
|
fp->nb_prefix_samples0 = fp->nb_prefix_samples;
|
||||||
|
|
||||||
nr_slot_fep(ue,0, 0, ue->ssb_offset, 0, 1, NR_PDCCH_EST);
|
nr_slot_fep(ue,0, 0, ue->ssb_offset, 0, 1, NR_PDCCH_EST);
|
||||||
nr_slot_fep(ue,1, 0, ue->ssb_offset, 0, 1, NR_PDCCH_EST);
|
nr_slot_fep(ue,1, 0, ue->ssb_offset, 0, 1, NR_PDCCH_EST);
|
||||||
frame_parms->nb_prefix_samples0 = nb_prefix_samples0;
|
fp->nb_prefix_samples0 = nb_prefix_samples0;
|
||||||
|
|
||||||
LOG_I(PHY,"[UE %d] AUTOTEST Cell Sync : frame = %d, rx_offset %d, freq_offset %d \n",
|
LOG_I(PHY,"[UE %d] AUTOTEST Cell Sync : frame = %d, rx_offset %d, freq_offset %d \n",
|
||||||
ue->Mod_id,
|
ue->Mod_id,
|
||||||
|
|||||||
@@ -5913,8 +5913,8 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue,UE_nr_rxtx_proc_t *proc,uint8_t eN
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
//nr_gold_pdcch(ue,0, 2);
|
//nr_gold_pdcch(ue,0, 2);
|
||||||
/*
|
|
||||||
for (l=0; l<2; l++) {
|
for (int l=0; l<2; l++) {
|
||||||
if (abstraction_flag == 0) {
|
if (abstraction_flag == 0) {
|
||||||
#if UE_TIMING_TRACE
|
#if UE_TIMING_TRACE
|
||||||
start_meas(&ue->ofdm_demod_stats);
|
start_meas(&ue->ofdm_demod_stats);
|
||||||
@@ -5925,7 +5925,7 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue,UE_nr_rxtx_proc_t *proc,uint8_t eN
|
|||||||
l,
|
l,
|
||||||
nr_tti_rx,
|
nr_tti_rx,
|
||||||
0,
|
0,
|
||||||
1,
|
0,
|
||||||
1,
|
1,
|
||||||
NR_PDCCH_EST);
|
NR_PDCCH_EST);
|
||||||
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_UE_SLOT_FEP, VCD_FUNCTION_OUT);
|
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_UE_SLOT_FEP, VCD_FUNCTION_OUT);
|
||||||
@@ -5933,7 +5933,10 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue,UE_nr_rxtx_proc_t *proc,uint8_t eN
|
|||||||
stop_meas(&ue->ofdm_demod_stats);
|
stop_meas(&ue->ofdm_demod_stats);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
}*/
|
}
|
||||||
|
|
||||||
|
write_output("rxdataF.m","rxF",ue->common_vars.common_vars_rx_data_per_thread[ue->current_thread_id[nr_tti_rx>>1]].rxdataF[0],ue->frame_parms.ofdm_symbol_size*2,1,1);
|
||||||
|
|
||||||
//ue_measurement_procedures(l-1,ue,proc,eNB_id,(nr_tti_rx<<1),abstraction_flag,mode);
|
//ue_measurement_procedures(l-1,ue,proc,eNB_id,(nr_tti_rx<<1),abstraction_flag,mode);
|
||||||
|
|
||||||
//if (do_pdcch_flag) {
|
//if (do_pdcch_flag) {
|
||||||
|
|||||||
@@ -133,6 +133,8 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
int loglvl=OAILOG_WARNING;
|
int loglvl=OAILOG_WARNING;
|
||||||
|
|
||||||
|
float target_error_rate = 0.01;
|
||||||
|
|
||||||
cpuf = get_cpu_freq_GHz();
|
cpuf = get_cpu_freq_GHz();
|
||||||
|
|
||||||
if ( load_configmodule(argc,argv) == 0) {
|
if ( load_configmodule(argc,argv) == 0) {
|
||||||
@@ -296,6 +298,7 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
case 'I':
|
case 'I':
|
||||||
run_initial_sync=1;
|
run_initial_sync=1;
|
||||||
|
target_error_rate=0.1;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'L':
|
case 'L':
|
||||||
@@ -442,11 +445,10 @@ int main(int argc, char **argv)
|
|||||||
for (int i=0;i<4;i++) gNB->pbch_pdu[i]=i+1;
|
for (int i=0;i<4;i++) gNB->pbch_pdu[i]=i+1;
|
||||||
nr_common_signal_procedures (gNB,frame,subframe);
|
nr_common_signal_procedures (gNB,frame,subframe);
|
||||||
|
|
||||||
/*
|
|
||||||
LOG_M("txsigF0.m","txsF0", gNB->common_vars.txdataF[0],frame_length_complex_samples_no_prefix,1,1);
|
LOG_M("txsigF0.m","txsF0", gNB->common_vars.txdataF[0],frame_length_complex_samples_no_prefix,1,1);
|
||||||
if (gNB->frame_parms.nb_antennas_tx>1)
|
if (gNB->frame_parms.nb_antennas_tx>1)
|
||||||
LOG_M("txsigF1.m","txsF1", gNB->common_vars.txdataF[1],frame_length_complex_samples_no_prefix,1,1);
|
LOG_M("txsigF1.m","txsF1", gNB->common_vars.txdataF[1],frame_length_complex_samples_no_prefix,1,1);
|
||||||
*/
|
|
||||||
//TODO: loop over slots
|
//TODO: loop over slots
|
||||||
for (aa=0; aa<gNB->frame_parms.nb_antennas_tx; aa++) {
|
for (aa=0; aa<gNB->frame_parms.nb_antennas_tx; aa++) {
|
||||||
if (gNB_config->subframe_config.dl_cyclic_prefix_type.value == 1) {
|
if (gNB_config->subframe_config.dl_cyclic_prefix_type.value == 1) {
|
||||||
@@ -571,6 +573,11 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
printf("SNR %f : n_errors (negative CRC) = %d/%d\n", SNR,n_errors,n_trials);
|
printf("SNR %f : n_errors (negative CRC) = %d/%d\n", SNR,n_errors,n_trials);
|
||||||
|
|
||||||
|
if ((float)n_errors/(float)n_trials <= target_error_rate) {
|
||||||
|
printf("PBCH test OK\n");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
if (n_trials==1)
|
if (n_trials==1)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|||||||
+37
-6
@@ -956,7 +956,7 @@ void *UE_thread(void *arg) {
|
|||||||
#if BASIC_SIMULATOR
|
#if BASIC_SIMULATOR
|
||||||
{
|
{
|
||||||
int t;
|
int t;
|
||||||
for (t = 0; t < 2; t++) {
|
for (t = 0; t < RX_NB_TH; t++) {
|
||||||
UE_rxtx_proc_t *proc = &UE->proc.proc_rxtx[t];
|
UE_rxtx_proc_t *proc = &UE->proc.proc_rxtx[t];
|
||||||
pthread_mutex_lock(&proc->mutex_rxtx);
|
pthread_mutex_lock(&proc->mutex_rxtx);
|
||||||
while (proc->instance_cnt_rxtx >= 0) pthread_cond_wait( &proc->cond_rxtx, &proc->mutex_rxtx );
|
while (proc->instance_cnt_rxtx >= 0) pthread_cond_wait( &proc->cond_rxtx, &proc->mutex_rxtx );
|
||||||
@@ -964,13 +964,13 @@ void *UE_thread(void *arg) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
LOG_D(PHY,"Process subframe %d thread Idx %d \n", subframe_nr, UE->current_thread_id[subframe_nr]);
|
LOG_D(PHY,"Process subframe %d thread Idx %d \n", subframe_nr, UE->current_thread_id[subframe_nr]);
|
||||||
|
|
||||||
thread_idx++;
|
thread_idx++;
|
||||||
if(thread_idx>=RX_NB_TH)
|
if(thread_idx>=RX_NB_TH)
|
||||||
thread_idx = 0;
|
thread_idx = 0;
|
||||||
|
|
||||||
|
|
||||||
if (UE->mode != loop_through_memory) {
|
if (UE->mode != loop_through_memory) {
|
||||||
for (i=0; i<UE->frame_parms.nb_antennas_rx; i++)
|
for (i=0; i<UE->frame_parms.nb_antennas_rx; i++)
|
||||||
rxp[i] = (void*)&UE->common_vars.rxdata[i][UE->frame_parms.ofdm_symbol_size+
|
rxp[i] = (void*)&UE->common_vars.rxdata[i][UE->frame_parms.ofdm_symbol_size+
|
||||||
@@ -1033,9 +1033,6 @@ void *UE_thread(void *arg) {
|
|||||||
if ( first_symbols <0 )
|
if ( first_symbols <0 )
|
||||||
LOG_E(PHY,"can't compensate: diff =%d\n", first_symbols);
|
LOG_E(PHY,"can't compensate: diff =%d\n", first_symbols);
|
||||||
}
|
}
|
||||||
} //UE->mode != loop_through_memory
|
|
||||||
else
|
|
||||||
rt_sleep_ns(1000*1000);
|
|
||||||
|
|
||||||
pickTime(gotIQs);
|
pickTime(gotIQs);
|
||||||
// operate on thread sf mod 2
|
// operate on thread sf mod 2
|
||||||
@@ -1071,7 +1068,7 @@ void *UE_thread(void *arg) {
|
|||||||
proc->frame_tx = (proc->frame_tx + 1)%MAX_FRAME_NUMBER;
|
proc->frame_tx = (proc->frame_tx + 1)%MAX_FRAME_NUMBER;
|
||||||
proc->nr_tti_tx %= NR_NUMBER_OF_SUBFRAMES_PER_FRAME;
|
proc->nr_tti_tx %= NR_NUMBER_OF_SUBFRAMES_PER_FRAME;
|
||||||
}
|
}
|
||||||
proc->subframe_tx=subframe_nr + DURATION_RX_TO_TX;
|
proc->subframe_tx=proc->nr_tti_rx;
|
||||||
proc->timestamp_tx = timestamp+
|
proc->timestamp_tx = timestamp+
|
||||||
(DURATION_RX_TO_TX*UE->frame_parms.samples_per_subframe)-
|
(DURATION_RX_TO_TX*UE->frame_parms.samples_per_subframe)-
|
||||||
UE->frame_parms.ofdm_symbol_size-UE->frame_parms.nb_prefix_samples0;
|
UE->frame_parms.ofdm_symbol_size-UE->frame_parms.nb_prefix_samples0;
|
||||||
@@ -1107,7 +1104,41 @@ void *UE_thread(void *arg) {
|
|||||||
// initStaticTime(lastTime);
|
// initStaticTime(lastTime);
|
||||||
// updateTimes(lastTime, &t1, 20000, "Delay between two IQ acquisitions (case 1)");
|
// updateTimes(lastTime, &t1, 20000, "Delay between two IQ acquisitions (case 1)");
|
||||||
// pickStaticTime(lastTime);
|
// pickStaticTime(lastTime);
|
||||||
|
} //UE->mode != loop_through_memory
|
||||||
|
else {
|
||||||
|
proc->nr_tti_rx=subframe_nr;
|
||||||
|
proc->subframe_rx=subframe_nr;
|
||||||
|
if(subframe_nr == 0) {
|
||||||
|
for (th_id=0; th_id < RX_NB_TH; th_id++) {
|
||||||
|
UE->proc.proc_rxtx[th_id].frame_rx++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
proc->frame_tx = proc->frame_rx;
|
||||||
|
proc->nr_tti_tx= subframe_nr + DURATION_RX_TO_TX;
|
||||||
|
if (proc->nr_tti_tx > NR_NUMBER_OF_SUBFRAMES_PER_FRAME) {
|
||||||
|
proc->frame_tx = (proc->frame_tx + 1)%MAX_FRAME_NUMBER;
|
||||||
|
proc->nr_tti_tx %= NR_NUMBER_OF_SUBFRAMES_PER_FRAME;
|
||||||
|
}
|
||||||
|
proc->subframe_tx=proc->nr_tti_tx;
|
||||||
|
|
||||||
|
printf("Processing subframe %d\n",proc->subframe_rx);
|
||||||
|
|
||||||
|
if(UE->if_inst != NULL && UE->if_inst->ul_indication != NULL){
|
||||||
|
UE->ul_indication.module_id = 0;
|
||||||
|
UE->ul_indication.gNB_index = 0;
|
||||||
|
UE->ul_indication.cc_id = 0;
|
||||||
|
UE->ul_indication.slot = 0; // to be fill
|
||||||
|
UE->ul_indication.frame = 0; // to be fill
|
||||||
|
// [TODO] mapping right after NR initial sync
|
||||||
|
UE->ul_indication.frame = proc->frame_rx;
|
||||||
|
UE->ul_indication.slot = proc->nr_tti_rx;
|
||||||
|
|
||||||
|
UE->if_inst->ul_indication(&UE->ul_indication);
|
||||||
|
}
|
||||||
|
|
||||||
|
phy_procedures_nrUE_RX( UE, proc, 0, 0, 1, UE->mode, no_relay);
|
||||||
|
getchar();
|
||||||
|
} // else loop_through_memory
|
||||||
} // start_rx_stream==1
|
} // start_rx_stream==1
|
||||||
} // UE->is_synchronized==1
|
} // UE->is_synchronized==1
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user