Commit d337304e authored by Jaroslava Fiedlerova's avatar Jaroslava Fiedlerova

Merge remote-tracking branch 'origin/ci-flexric-integration-test' into integration_2024_w47 (!2670)

chore(ci): adding Flexric-RAN integration test

- Triggering a standalone FLEXRIC + 5G-RAN pipeline: OAI-FLEXRIC-RAN-Integration-Test
  - will be triggered by the RAN-Container-Parent
  - but also by the OAI-FLEXRIC pipeline (to be done once integrated)
- Added an new python option: --FlexRicTag= than if not used, won't have any effect
- Nice addition:
  - if --FlexRicTag=develop or --ranCommitID=develop  --> will use the latest commit
    on either dev or develop branch.
- Scenario-wise
  - Using the cn5g deployment file from Luis in documentation, at least we will use
    it to make sure it is working at all time
- We can add more test and especially checkers on the flexric calls

Linked to !3085 (merged)
parents 683a39c9 14c0d6b3
...@@ -285,6 +285,29 @@ pipeline { ...@@ -285,6 +285,29 @@ pipeline {
} }
} }
} }
stage ("OAI-FLEXRIC-RAN-Integration-Test") {
when { expression {do5Gtest} }
steps {
script {
triggerSlaveJob ('OAI-FLEXRIC-RAN-Integration-Test', 'OAI-FLEXRIC-RAN-Integration-Test')
}
}
post {
always {
script {
// Using a unique variable name for each test stage to avoid overwriting on a global variable
// due to parallel-time concurrency
flexricRAN5GStatus = finalizeSlaveJob('OAI-FLEXRIC-RAN-Integration-Test')
}
}
failure {
script {
currentBuild.result = 'FAILURE'
failingStages += flexricRAN5GStatus
}
}
}
}
stage ("L2-Sim-Test-4G") { stage ("L2-Sim-Test-4G") {
when { expression {do4Gtest} } when { expression {do4Gtest} }
steps { steps {
......
...@@ -58,6 +58,8 @@ def eNB_CommitID ...@@ -58,6 +58,8 @@ def eNB_CommitID
def eNB_AllowMergeRequestProcess = false def eNB_AllowMergeRequestProcess = false
def eNB_TargetBranch def eNB_TargetBranch
def flexricOption = ""
pipeline { pipeline {
agent { agent {
label pythonExecutor label pythonExecutor
...@@ -148,18 +150,24 @@ pipeline { ...@@ -148,18 +150,24 @@ pipeline {
allParametersPresent = false allParametersPresent = false
} }
if (params.Flexric_Tag != null) {
echo "This pipeline is configured to run with a FlexRIC deployment."
echo "Appending FlexRicTag option to the list of options"
flexricOption = "--FlexRicTag=${params.Flexric_Tag}"
echo "Using new Flexric option: ${flexricOption}"
}
if (allParametersPresent) { if (allParametersPresent) {
echo "All parameters are present" echo "All parameters are present"
if (eNB_AllowMergeRequestProcess) { if (eNB_AllowMergeRequestProcess) {
sh "git fetch" sh "git fetch"
sh "./ci-scripts/doGitLabMerge.sh --src-branch ${eNB_Branch} --src-commit ${eNB_CommitID} --target-branch ${eNB_TargetBranch} --target-commit latest" sh "./ci-scripts/doGitLabMerge.sh --src-branch ${eNB_Branch} --src-commit ${eNB_CommitID} --target-branch ${eNB_TargetBranch} --target-commit latest"
} else { } else if (eNB_CommitID != 'develop') {
sh "git fetch" sh "git fetch"
sh "git checkout -f ${eNB_CommitID}" sh "git checkout -f ${eNB_CommitID}"
} }
} else { } else {
echo "Some parameters are missing" error "Some parameters are missing"
sh "./ci-scripts/fail.sh"
} }
} }
} }
...@@ -190,13 +198,13 @@ pipeline { ...@@ -190,13 +198,13 @@ pipeline {
[$class: 'UsernamePasswordMultiBinding', credentialsId: "${params.eNB_Credentials}", usernameVariable: 'eNB_Username', passwordVariable: 'eNB_Password'], [$class: 'UsernamePasswordMultiBinding', credentialsId: "${params.eNB_Credentials}", usernameVariable: 'eNB_Username', passwordVariable: 'eNB_Password'],
[$class: 'UsernamePasswordMultiBinding', credentialsId: "${params.EPC_Credentials}", usernameVariable: 'EPC_Username', passwordVariable: 'EPC_Password'], [$class: 'UsernamePasswordMultiBinding', credentialsId: "${params.EPC_Credentials}", usernameVariable: 'EPC_Username', passwordVariable: 'EPC_Password'],
]) { ]) {
sh "python3 main.py --mode=InitiateHtml --ranRepository=${eNB_Repository} --ranBranch=${eNB_Branch} --ranCommitID=${eNB_CommitID} --ranAllowMerge=${eNB_AllowMergeRequestProcess} --ranTargetBranch=${eNB_TargetBranch} ${mainPythonAllXmlFiles}" sh "python3 main.py --mode=InitiateHtml --ranRepository=${eNB_Repository} --ranBranch=${eNB_Branch} --ranCommitID=${eNB_CommitID} --ranAllowMerge=${eNB_AllowMergeRequestProcess} --ranTargetBranch=${eNB_TargetBranch} ${flexricOption} ${mainPythonAllXmlFiles}"
String[] myXmlTestSuite = testXMLFile.split("\\r?\\n") String[] myXmlTestSuite = testXMLFile.split("\\r?\\n")
for (xmlFile in myXmlTestSuite) { for (xmlFile in myXmlTestSuite) {
if (fileExists(xmlFile)) { if (fileExists(xmlFile)) {
try { try {
timeout (time: 60, unit: 'MINUTES') { timeout (time: 60, unit: 'MINUTES') {
sh "python3 main.py --mode=TesteNB --eNBIPAddress=${params.eNB_IPAddress} --ranRepository=${eNB_Repository} --ranBranch=${eNB_Branch} --ranCommitID=${eNB_CommitID} --ranAllowMerge=${eNB_AllowMergeRequestProcess} --ranTargetBranch=${eNB_TargetBranch} --eNBUserName=${eNB_Username} --eNBPassword=${eNB_Password} --eNBSourceCodePath=${params.eNB_SourceCodePath} --EPCIPAddress=${params.EPC_IPAddress} --EPCType=${params.EPC_Type} --EPCUserName=${EPC_Username} --EPCPassword=${EPC_Password} --EPCSourceCodePath=${params.EPC_SourceCodePath} --XMLTestFile=${xmlFile}" sh "python3 main.py --mode=TesteNB --ranRepository=${eNB_Repository} --ranBranch=${eNB_Branch} --ranCommitID=${eNB_CommitID} --ranAllowMerge=${eNB_AllowMergeRequestProcess} --ranTargetBranch=${eNB_TargetBranch} ${flexricOption} --eNBIPAddress=${params.eNB_IPAddress} --eNBUserName=${eNB_Username} --eNBPassword=${eNB_Password} --eNBSourceCodePath=${params.eNB_SourceCodePath} --EPCIPAddress=${params.EPC_IPAddress} --EPCType=${params.EPC_Type} --EPCUserName=${EPC_Username} --EPCPassword=${EPC_Password} --EPCSourceCodePath=${params.EPC_SourceCodePath} --XMLTestFile=${xmlFile}"
} }
} catch (Exception e) { } catch (Exception e) {
currentBuild.result = 'FAILURE' currentBuild.result = 'FAILURE'
......
...@@ -264,6 +264,9 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,EPC,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER): ...@@ -264,6 +264,9 @@ def ArgsParse(argvs,CiTestObj,RAN,HTML,EPC,CONTAINERS,HELP,SCA,PHYSIM,CLUSTER):
elif re.match('^\-\-BuildId=(.+)$', myArgv, re.IGNORECASE): elif re.match('^\-\-BuildId=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-BuildId=(.+)$', myArgv, re.IGNORECASE) matchReg = re.match('^\-\-BuildId=(.+)$', myArgv, re.IGNORECASE)
RAN.BuildId = matchReg.group(1) RAN.BuildId = matchReg.group(1)
elif re.match('^\-\-FlexRicTag=(.+)$', myArgv, re.IGNORECASE):
matchReg = re.match('^\-\-FlexRicTag=(.+)$', myArgv, re.IGNORECASE)
CONTAINERS.flexricTag = matchReg.group(1)
else: else:
HELP.GenericHelp(CONST.Version) HELP.GenericHelp(CONST.Version)
sys.exit('Invalid Parameter: ' + myArgv) sys.exit('Invalid Parameter: ' + myArgv)
......
...@@ -126,8 +126,6 @@ class Cluster: ...@@ -126,8 +126,6 @@ class Cluster:
self.ranAllowMerge = False self.ranAllowMerge = False
self.ranTargetBranch = "" self.ranTargetBranch = ""
self.cmd = None self.cmd = None
self.imageToPull = ''
self.testSvrId = None
def _recreate_entitlements(self): def _recreate_entitlements(self):
# recreating entitlements, don't care if deletion fails # recreating entitlements, don't care if deletion fails
...@@ -240,44 +238,30 @@ class Cluster: ...@@ -240,44 +238,30 @@ class Cluster:
def _undeploy_pod(self, filename): def _undeploy_pod(self, filename):
self.cmd.run(f'oc delete -f {filename}') self.cmd.run(f'oc delete -f {filename}')
def PullClusterImage(self, HTML, RAN): def PullClusterImage(self, HTML, node, images):
if self.testSvrId == None: self.testSvrId = self.eNBIPAddress logging.debug(f'Pull OC image {images} to server {node}')
if self.imageToPull == '':
HELP.GenericHelp(CONST.Version)
raise ValueError('Insufficient Parameter')
logging.debug(f'Pull OC image {self.imageToPull} to server {self.testSvrId}')
self.testCase_id = HTML.testCase_id self.testCase_id = HTML.testCase_id
cmd = cls_cmd.getConnection(self.testSvrId) with cls_cmd.getConnection(node) as cmd:
logging.info(cmd.run('docker --version'))
succeeded = OC_login(cmd, self.OCUserName, self.OCPassword, CI_OC_RAN_NAMESPACE) succeeded = OC_login(cmd, self.OCUserName, self.OCPassword, CI_OC_RAN_NAMESPACE)
if not succeeded: if not succeeded:
logging.error('\u001B[1m OC Cluster Login Failed\u001B[0m')
HTML.CreateHtmlTestRow('N/A', 'KO', CONST.OC_LOGIN_FAIL) HTML.CreateHtmlTestRow('N/A', 'KO', CONST.OC_LOGIN_FAIL)
return False return False
ret = cmd.run(f'oc whoami -t | docker login -u oaicicd --password-stdin {self.OCRegistry}') ret = cmd.run(f'oc whoami -t | docker login -u oaicicd --password-stdin {self.OCRegistry}')
if ret.returncode != 0: if ret.returncode != 0:
logging.error(f'\u001B[1m Unable to access OC project {CI_OC_RAN_NAMESPACE}\u001B[0m') logging.error(f'cannot authenticate at registry')
OC_logout(cmd) OC_logout(cmd)
cmd.close()
HTML.CreateHtmlTestRow('N/A', 'KO', CONST.OC_LOGIN_FAIL) HTML.CreateHtmlTestRow('N/A', 'KO', CONST.OC_LOGIN_FAIL)
return False return False
for image in self.imageToPull:
imagePrefix = f'{self.OCRegistry}/{CI_OC_RAN_NAMESPACE}'
tag = cls_containerize.CreateTag(self.ranCommitID, self.ranBranch, self.ranAllowMerge) tag = cls_containerize.CreateTag(self.ranCommitID, self.ranBranch, self.ranAllowMerge)
imageTag = f"{image}:{tag}" registry = f'{self.OCRegistry}/{CI_OC_RAN_NAMESPACE}'
ret = cmd.run(f'docker pull {imagePrefix}/{imageTag}') success, msg = cls_containerize.Containerize.Pull_Image(cmd, images, tag, registry, None, None)
if ret.returncode != 0:
logging.error(f'Could not pull {image} from local registry : {self.OCRegistry}')
OC_logout(cmd) OC_logout(cmd)
cmd.close() param = f"on node {node}"
HTML.CreateHtmlTestRow('msg', 'KO', CONST.ALL_PROCESSES_OK) if success:
return False HTML.CreateHtmlTestRowQueue(param, 'OK', [msg])
cmd.run(f'docker tag {imagePrefix}/{imageTag} oai-ci/{imageTag}') else:
cmd.run(f'docker rmi {imagePrefix}/{imageTag}') HTML.CreateHtmlTestRowQueue(param, 'KO', [msg])
OC_logout(cmd) return success
cmd.close()
HTML.CreateHtmlTestRow('N/A', 'OK', CONST.ALL_PROCESSES_OK)
return True
def BuildClusterImage(self, HTML): def BuildClusterImage(self, HTML):
if self.ranRepository == '' or self.ranBranch == '' or self.ranCommitID == '': if self.ranRepository == '' or self.ranBranch == '' or self.ranCommitID == '':
......
...@@ -70,6 +70,8 @@ def CreateWorkspace(host, sourcePath, ranRepository, ranCommitID, ranTargetBranc ...@@ -70,6 +70,8 @@ def CreateWorkspace(host, sourcePath, ranRepository, ranCommitID, ranTargetBranc
return ret.returncode == 0 return ret.returncode == 0
def CreateTag(ranCommitID, ranBranch, ranAllowMerge): def CreateTag(ranCommitID, ranBranch, ranAllowMerge):
if ranCommitID == 'develop':
return 'develop'
shortCommit = ranCommitID[0:8] shortCommit = ranCommitID[0:8]
if ranAllowMerge: if ranAllowMerge:
# Allowing contributor to have a name/branchName format # Allowing contributor to have a name/branchName format
...@@ -159,26 +161,25 @@ def GetContainerHealth(ssh, containerName): ...@@ -159,26 +161,25 @@ def GetContainerHealth(ssh, containerName):
return False return False
if 'db_init' in containerName or 'db-init' in containerName: # exits with 0, there cannot be healthy if 'db_init' in containerName or 'db-init' in containerName: # exits with 0, there cannot be healthy
return True return True
time.sleep(5) for _ in range(8):
for _ in range(3):
result = ssh.run(f'docker inspect --format="{{{{.State.Health.Status}}}}" {containerName}', silent=True) result = ssh.run(f'docker inspect --format="{{{{.State.Health.Status}}}}" {containerName}', silent=True)
if result.stdout == 'healthy': if result.stdout == 'healthy':
return True return True
time.sleep(10) time.sleep(5)
return False return False
def ExistEnvFilePrint(ssh, wd, prompt='env vars in existing'): def ExistEnvFilePrint(ssh, wd, prompt='env vars in existing'):
ret = ssh.run(f'cat {wd}/.env', silent=True) ret = ssh.run(f'cat {wd}/.env', silent=True, reportNonZero=False)
if ret.returncode != 0: if ret.returncode != 0:
return False return False
env_vars = ret.stdout.strip().splitlines() env_vars = ret.stdout.strip().splitlines()
logging.info(f'{prompt} {wd}/.env: {env_vars}') logging.info(f'{prompt} {wd}/.env: {env_vars}')
return True return True
def WriteEnvFile(ssh, services, wd, tag): def WriteEnvFile(ssh, services, wd, tag, flexric_tag):
ret = ssh.run(f'cat {wd}/.env', silent=True) ret = ssh.run(f'cat {wd}/.env', silent=True, reportNonZero=False)
registry = "oai-ci" # pull_images() gives us this registry path registry = "oai-ci" # pull_images() gives us this registry path
envs = {"REGISTRY":registry, "TAG": tag} envs = {"REGISTRY":registry, "TAG": tag, "FLEXRIC_TAG": flexric_tag}
if ret.returncode == 0: # it exists, we have to update if ret.returncode == 0: # it exists, we have to update
# transforms env file to dictionary # transforms env file to dictionary
old_envs = {} old_envs = {}
...@@ -221,7 +222,6 @@ def CopyinContainerLog(ssh, lSourcePath, yaml, containerName, filename): ...@@ -221,7 +222,6 @@ def CopyinContainerLog(ssh, lSourcePath, yaml, containerName, filename):
remote_filename = f"{lSourcePath}/cmake_targets/log/{filename}" remote_filename = f"{lSourcePath}/cmake_targets/log/{filename}"
ssh.run(f'docker logs {containerName} &> {remote_filename}') ssh.run(f'docker logs {containerName} &> {remote_filename}')
local_dir = f"{os.getcwd()}/../cmake_targets/log/{yaml}" local_dir = f"{os.getcwd()}/../cmake_targets/log/{yaml}"
os.system(f'mkdir -p {local_dir}')
local_filename = f"{local_dir}/{filename}" local_filename = f"{local_dir}/{filename}"
return ssh.copyin(remote_filename, local_filename) return ssh.copyin(remote_filename, local_filename)
...@@ -334,12 +334,11 @@ class Containerize(): ...@@ -334,12 +334,11 @@ class Containerize():
self.cliOptions = '' self.cliOptions = ''
self.imageToCopy = '' self.imageToCopy = ''
self.registrySvrId = ''
self.testSvrId = ''
self.imageToPull = []
#checkers from xml #checkers from xml
self.ran_checkers={} self.ran_checkers={}
self.flexricTag = ''
#----------------------------------------------------------- #-----------------------------------------------------------
# Container management functions # Container management functions
#----------------------------------------------------------- #-----------------------------------------------------------
...@@ -723,8 +722,8 @@ class Containerize(): ...@@ -723,8 +722,8 @@ class Containerize():
HTML.CreateHtmlTabFooter(False) HTML.CreateHtmlTabFooter(False)
return False return False
def Push_Image_to_Local_Registry(self, HTML): def Push_Image_to_Local_Registry(self, HTML, svr_id):
lIpAddr, lSourcePath = self.GetCredentials(self.registrySvrId) lIpAddr, lSourcePath = self.GetCredentials(svr_id)
logging.debug('Pushing images from server: ' + lIpAddr) logging.debug('Pushing images from server: ' + lIpAddr)
ssh = cls_cmd.getConnection(lIpAddr) ssh = cls_cmd.getConnection(lIpAddr)
imagePrefix = 'porcepix.sboai.cs.eurecom.fr' imagePrefix = 'porcepix.sboai.cs.eurecom.fr'
...@@ -771,64 +770,66 @@ class Containerize(): ...@@ -771,64 +770,66 @@ class Containerize():
HTML.CreateHtmlTestRow('N/A', 'OK', CONST.ALL_PROCESSES_OK) HTML.CreateHtmlTestRow('N/A', 'OK', CONST.ALL_PROCESSES_OK)
return True return True
def Pull_Image_from_Local_Registry(self, HTML): def Pull_Image(cmd, images, tag, registry, username, password):
lIpAddr, lSourcePath = self.GetCredentials(self.testSvrId) if username is not None and password is not None:
logging.debug('\u001B[1m Pulling image(s) on server: ' + lIpAddr + '\u001B[0m') logging.info(f"logging into registry {username}@{registry}")
myCmd = cls_cmd.getConnection(lIpAddr) response = cmd.run(f'docker login -u {username} -p {password} {registry}', silent=True, reportNonZero=False)
imagePrefix = 'porcepix.sboai.cs.eurecom.fr'
response = myCmd.run(f'docker login -u oaicicd -p oaicicd {imagePrefix}')
if response.returncode != 0: if response.returncode != 0:
msg = 'Could not log into local registry' msg = f'Could not log into registry {username}@{registry}'
logging.error(msg) logging.error(msg)
myCmd.close() return False, msg
HTML.CreateHtmlTestRow(msg, 'KO', CONST.ALL_PROCESSES_OK)
return False
pulled_images = [] pulled_images = []
for image in self.imageToPull: for image in images:
tagToUse = CreateTag(self.ranCommitID, self.ranBranch, self.ranAllowMerge) imageTag = f"{image}:{tag}"
imageTag = f"{image}:{tagToUse}" response = cmd.run(f'docker pull {registry}/{imageTag}')
cmd = f'docker pull {imagePrefix}/{imageTag}'
response = myCmd.run(cmd, timeout=120)
if response.returncode != 0: if response.returncode != 0:
logging.debug(response) msg = f'Could not pull {image} from local registry: {imageTag}'
msg = f'Could not pull {image} from local registry : {imageTag}'
logging.error(msg) logging.error(msg)
myCmd.close() return False, msg
HTML.CreateHtmlTestRow('msg', 'KO', CONST.ALL_PROCESSES_OK) cmd.run(f'docker tag {registry}/{imageTag} oai-ci/{imageTag}')
return False cmd.run(f'docker rmi {registry}/{imageTag}')
myCmd.run(f'docker tag {imagePrefix}/{imageTag} oai-ci/{imageTag}')
myCmd.run(f'docker rmi {imagePrefix}/{imageTag}')
pulled_images += [f"oai-ci/{imageTag}"] pulled_images += [f"oai-ci/{imageTag}"]
response = myCmd.run(f'docker logout {imagePrefix}') if username is not None and password is not None:
if response.returncode != 0: response = cmd.run(f'docker logout {registry}')
msg = 'Could not log off from local registry' # we have the images, if logout fails it's no problem
logging.error(msg)
myCmd.close()
HTML.CreateHtmlTestRow(msg, 'KO', CONST.ALL_PROCESSES_OK)
return False
myCmd.close()
msg = "Pulled Images:\n" + '\n'.join(pulled_images) msg = "Pulled Images:\n" + '\n'.join(pulled_images)
HTML.CreateHtmlTestRowQueue('N/A', 'OK', [msg]) return True, msg
return True
def Clean_Test_Server_Images(self, HTML): def Pull_Image_from_Registry(self, HTML, svr_id, images, tag=None, registry="porcepix.sboai.cs.eurecom.fr", username="oaicicd", password="oaicicd"):
lIpAddr, lSourcePath = self.GetCredentials(self.testSvrId) lIpAddr, lSourcePath = self.GetCredentials(svr_id)
if lIpAddr != 'none': logging.debug('\u001B[1m Pulling image(s) on server: ' + lIpAddr + '\u001B[0m')
logging.debug('Removing test images from server: ' + lIpAddr) if not tag:
myCmd = cls_cmd.RemoteCmd(lIpAddr) tag = CreateTag(self.ranCommitID, self.ranBranch, self.ranAllowMerge)
with cls_cmd.getConnection(lIpAddr) as cmd:
success, msg = Containerize.Pull_Image(cmd, images, tag, registry, username, password)
param = f"on node {lIpAddr}"
if success:
HTML.CreateHtmlTestRowQueue(param, 'OK', [msg])
else: else:
logging.debug('Removing test images locally') HTML.CreateHtmlTestRowQueue(param, 'KO', [msg])
myCmd = cls_cmd.LocalCmd() return success
for image in IMAGES: def Clean_Test_Server_Images(self, HTML, svr_id, images, tag=None):
lIpAddr, lSourcePath = self.GetCredentials(svr_id)
logging.debug(f'\u001B[1m Cleaning image(s) from server: {lIpAddr}\u001B[0m')
if not tag:
tag = CreateTag(self.ranCommitID, self.ranBranch, self.ranAllowMerge) tag = CreateTag(self.ranCommitID, self.ranBranch, self.ranAllowMerge)
imageTag = f"{image}:{tag}"
cmd = f'docker rmi oai-ci/{imageTag}'
myCmd.run(cmd, reportNonZero=False)
myCmd.close() status = True
HTML.CreateHtmlTestRow('N/A', 'OK', CONST.ALL_PROCESSES_OK) with cls_cmd.getConnection(lIpAddr) as myCmd:
return True removed_images = []
for image in images:
fullImage = f"oai-ci/{image}:{tag}"
cmd = f'docker rmi {fullImage}'
if myCmd.run(cmd).returncode != 0:
status = False
removed_images += [fullImage]
msg = "Removed Images:\n" + '\n'.join(removed_images)
s = 'OK' if status else 'KO'
param = f"on node {lIpAddr}"
HTML.CreateHtmlTestRowQueue(param, s, [msg])
return status
def Create_Workspace(self,HTML): def Create_Workspace(self,HTML):
svr = self.eNB_serverId[self.eNB_instance] svr = self.eNB_serverId[self.eNB_instance]
...@@ -845,6 +846,9 @@ class Containerize(): ...@@ -845,6 +846,9 @@ class Containerize():
lIpAddr, lSourcePath = self.GetCredentials(svr) lIpAddr, lSourcePath = self.GetCredentials(svr)
logging.debug('\u001B[1m Deploying OAI Object on server: ' + lIpAddr + '\u001B[0m') logging.debug('\u001B[1m Deploying OAI Object on server: ' + lIpAddr + '\u001B[0m')
yaml = self.yamlPath[self.eNB_instance].strip('/') yaml = self.yamlPath[self.eNB_instance].strip('/')
# creating the log folder by default
local_dir = f"{os.getcwd()}/../cmake_targets/log/{yaml.split('/')[-1]}"
os.system(f'mkdir -p {local_dir}')
wd = f'{lSourcePath}/{yaml}' wd = f'{lSourcePath}/{yaml}'
with cls_cmd.getConnection(lIpAddr) as ssh: with cls_cmd.getConnection(lIpAddr) as ssh:
...@@ -856,7 +860,7 @@ class Containerize(): ...@@ -856,7 +860,7 @@ class Containerize():
return False return False
ExistEnvFilePrint(ssh, wd) ExistEnvFilePrint(ssh, wd)
WriteEnvFile(ssh, services, wd, self.deploymentTag) WriteEnvFile(ssh, services, wd, self.deploymentTag, self.flexricTag)
logging.info(f"will start services {services}") logging.info(f"will start services {services}")
status = ssh.run(f'docker compose -f {wd}/docker-compose.y*ml up -d -- {services}') status = ssh.run(f'docker compose -f {wd}/docker-compose.y*ml up -d -- {services}')
......
...@@ -147,7 +147,7 @@ class HTMLManagement(): ...@@ -147,7 +147,7 @@ class HTMLManagement():
self.htmlFile.write(' <td bgcolor = "lightcyan" > <span class="glyphicon glyphicon-tag"></span> Commit ID </td>\n') self.htmlFile.write(' <td bgcolor = "lightcyan" > <span class="glyphicon glyphicon-tag"></span> Commit ID </td>\n')
self.htmlFile.write(' <td>' + self.ranCommitID + '</td>\n') self.htmlFile.write(' <td>' + self.ranCommitID + '</td>\n')
self.htmlFile.write(' </tr>\n') self.htmlFile.write(' </tr>\n')
if self.ranAllowMerge != '': if self.ranAllowMerge != '' and self.ranCommitID != 'develop':
commit_message = subprocess.check_output("git log -n1 --pretty=format:\"%s\" " + self.ranCommitID, shell=True, universal_newlines=True) commit_message = subprocess.check_output("git log -n1 --pretty=format:\"%s\" " + self.ranCommitID, shell=True, universal_newlines=True)
commit_message = commit_message.strip() commit_message = commit_message.strip()
self.htmlFile.write(' <tr>\n') self.htmlFile.write(' <tr>\n')
......
Active_gNBs = ( "gnb-rfsim");
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity = "none";
gNBs =
(
{
////////// Identification parameters:
gNB_ID = 0xe00;
gNB_name = "gnb-rfsim";
// Tracking area code, 0x0000 and 0xfffe are reserved values
tracking_area_code = 1;
plmn_list = ({ mcc = 001; mnc = 01; mnc_length = 2; snssaiList = ({ sst = 1; }) });
nr_cellid = 12345678L
////////// Physical parameters:
min_rxtxtime = 6;
servingCellConfigCommon = (
{
#spCellConfigCommon
physCellId = 0;
# downlinkConfigCommon
#frequencyInfoDL
# this is 3300.60 MHz + 53*12*30e-3 MHz = 3319.68
absoluteFrequencySSB = 621312;
# this is 3300.60 MHz
dl_absoluteFrequencyPointA = 620040;
#scs-SpecificCarrierList
dl_offstToCarrier = 0;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
dl_subcarrierSpacing = 1;
dl_carrierBandwidth = 106;
#initialDownlinkBWP
#genericParameters
# this is RBstart=0,L=106 (275*(L-1))+RBstart
initialDLBWPlocationAndBandwidth = 28875;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
initialDLBWPsubcarrierSpacing = 1;
#pdcch-ConfigCommon
initialDLBWPcontrolResourceSetZero = 11;
initialDLBWPsearchSpaceZero = 0;
# uplinkConfigCommon
#frequencyInfoUL
ul_frequencyBand = 78;
#scs-SpecificCarrierList
ul_offstToCarrier = 0;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
ul_subcarrierSpacing = 1;
ul_carrierBandwidth = 106;
pMax = 20;
#initialUplinkBWP
#genericParameters
initialULBWPlocationAndBandwidth = 28875;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
initialULBWPsubcarrierSpacing = 1;
#rach-ConfigCommon
#rach-ConfigGeneric
prach_ConfigurationIndex = 98;
#prach_msg1_FDM
#0 = one, 1=two, 2=four, 3=eight
prach_msg1_FDM = 0;
prach_msg1_FrequencyStart = 0;
zeroCorrelationZoneConfig = 12;
preambleReceivedTargetPower = -104;
#preamblTransMax (0...10) = (3,4,5,6,7,8,10,20,50,100,200)
preambleTransMax = 6;
#powerRampingStep
# 0=dB0,1=dB2,2=dB4,3=dB6
powerRampingStep = 1;
#ra_ReponseWindow
#1,2,4,8,10,20,40,80
ra_ResponseWindow = 4;
#ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR
#1=oneeighth,2=onefourth,3=half,4=one,5=two,6=four,7=eight,8=sixteen
ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR = 3;
#oneHalf (0..15) 4,8,12,16,...60,64
ssb_perRACH_OccasionAndCB_PreamblesPerSSB = 15;
#ra_ContentionResolutionTimer
#(0..7) 8,16,24,32,40,48,56,64
ra_ContentionResolutionTimer = 7;
rsrp_ThresholdSSB = 19;
#prach-RootSequenceIndex_PR
#1 = 839, 2 = 139
prach_RootSequenceIndex_PR = 2;
prach_RootSequenceIndex = 1;
# SCS for msg1, can only be 15 for 30 kHz < 6 GHz, takes precendence over the one derived from prach-ConfigIndex
#
msg1_SubcarrierSpacing = 1,
# restrictedSetConfig
# 0=unrestricted, 1=restricted type A, 2=restricted type B
restrictedSetConfig = 0,
msg3_DeltaPreamble = 1;
p0_NominalWithGrant = -90;
# pucch-ConfigCommon setup :
# pucchGroupHopping
# 0 = neither, 1= group hopping, 2=sequence hopping
pucchGroupHopping = 0;
hoppingId = 40;
p0_nominal = -90;
ssb_PositionsInBurst_Bitmap = 1;
# ssb_periodicityServingCell
# 0 = ms5, 1=ms10, 2=ms20, 3=ms40, 4=ms80, 5=ms160, 6=spare2, 7=spare1
ssb_periodicityServingCell = 2;
# dmrs_TypeA_position
# 0 = pos2, 1 = pos3
dmrs_TypeA_Position = 0;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
subcarrierSpacing = 1;
#tdd-UL-DL-ConfigurationCommon
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
referenceSubcarrierSpacing = 1;
# pattern1
# dl_UL_TransmissionPeriodicity
# 0=ms0p5, 1=ms0p625, 2=ms1, 3=ms1p25, 4=ms2, 5=ms2p5, 6=ms5, 7=ms10
dl_UL_TransmissionPeriodicity = 6;
nrofDownlinkSlots = 7;
nrofDownlinkSymbols = 6;
nrofUplinkSlots = 2;
nrofUplinkSymbols = 4;
ssPBCH_BlockPower = -25;
});
# ------- SCTP definitions
SCTP :
{
# Number of streams to use in input/output
SCTP_INSTREAMS = 2;
SCTP_OUTSTREAMS = 2;
};
////////// AMF parameters:
amf_ip_address = ({ ipv4 = "192.168.70.132"; });
NETWORK_INTERFACES :
{
GNB_IPV4_ADDRESS_FOR_NG_AMF = "192.168.70.151";
GNB_IPV4_ADDRESS_FOR_NGU = "192.168.70.151";
GNB_PORT_FOR_S1U = 2152; # Spec 2152
};
}
);
MACRLCs = (
{
num_cc = 1;
tr_s_preference = "local_L1";
tr_n_preference = "local_RRC";
pusch_TargetSNRx10 = 200;
pucch_TargetSNRx10 = 200;
}
);
L1s = (
{
num_cc = 1;
tr_n_preference = "local_mac";
prach_dtx_threshold = 200;
# pucch0_dtx_threshold = 150;
}
);
RUs = (
{
local_rf = "yes";
nb_tx = 1;
nb_rx = 1;
att_tx = 0;
att_rx = 0;
bands = [78];
max_pdschReferenceSignalPower = -27;
max_rxgain = 75;
eNB_instances = [0];
sf_extension = 0;
sdr_addrs = "serial=XXXXXXX";
}
);
rfsimulator: {
serveraddr = "server";
};
security = {
# preferred ciphering algorithms
# the first one of the list that an UE supports in chosen
# valid values: nea0, nea1, nea2, nea3
ciphering_algorithms = ( "nea0" );
# preferred integrity algorithms
# the first one of the list that an UE supports in chosen
# valid values: nia0, nia1, nia2, nia3
integrity_algorithms = ( "nia2", "nia0" );
# setting 'drb_ciphering' to "no" disables ciphering for DRBs, no matter
# what 'ciphering_algorithms' configures; same thing for 'drb_integrity'
drb_ciphering = "yes";
drb_integrity = "no";
};
log_config : {
global_log_level ="info";
hw_log_level ="info";
phy_log_level ="info";
mac_log_level ="info";
rlc_log_level ="info";
pdcp_log_level ="info";
rrc_log_level ="info";
f1ap_log_level ="info";
};
e2_agent = {
near_ric_ip_addr = "192.168.70.150";
#sm_dir = "/path/where/the/SMs/are/located/"
sm_dir = "/usr/local/lib/flexric/"
};
...@@ -370,26 +370,20 @@ def ExecuteActionWithParam(action): ...@@ -370,26 +370,20 @@ def ExecuteActionWithParam(action):
success = SCA.CppCheckAnalysis(HTML) success = SCA.CppCheckAnalysis(HTML)
elif action == 'Push_Local_Registry': elif action == 'Push_Local_Registry':
string_field = test.findtext('registry_svr_id') svr_id = test.findtext('svr_id')
if (string_field is not None): success = CONTAINERS.Push_Image_to_Local_Registry(HTML, svr_id)
CONTAINERS.registrySvrId = string_field
success = CONTAINERS.Push_Image_to_Local_Registry(HTML) elif action == 'Pull_Local_Registry' or action == 'Clean_Test_Server_Images':
svr_id = test.findtext('svr_id')
elif action == 'Pull_Local_Registry': images = test.findtext('images').split()
string_field = test.findtext('test_svr_id') # hack: for FlexRIC, we need to overwrite the tag to use
if (string_field is not None): tag = None
CONTAINERS.testSvrId = string_field if len(images) == 1 and images[0] == "oai-flexric":
CONTAINERS.imageToPull.clear() tag = CONTAINERS.flexricTag
string_field = test.findtext('images_to_pull') if action == "Pull_Local_Registry":
if (string_field is not None): success = CONTAINERS.Pull_Image_from_Registry(HTML, svr_id, images, tag=tag)
CONTAINERS.imageToPull = string_field.split() if action == "Clean_Test_Server_Images":
success = CONTAINERS.Pull_Image_from_Local_Registry(HTML) success = CONTAINERS.Clean_Test_Server_Images(HTML, svr_id, images, tag=tag)
elif action == 'Clean_Test_Server_Images':
string_field = test.findtext('test_svr_id')
if (string_field is not None):
CONTAINERS.testSvrId = string_field
success = CONTAINERS.Clean_Test_Server_Images(HTML)
elif action == 'Custom_Command': elif action == 'Custom_Command':
node = test.findtext('node') node = test.findtext('node')
...@@ -404,13 +398,9 @@ def ExecuteActionWithParam(action): ...@@ -404,13 +398,9 @@ def ExecuteActionWithParam(action):
success = cls_oaicitest.Custom_Script(HTML, node, script, command_fail) success = cls_oaicitest.Custom_Script(HTML, node, script, command_fail)
elif action == 'Pull_Cluster_Image': elif action == 'Pull_Cluster_Image':
string_field = test.findtext('images_to_pull') images = test.findtext('images').split()
if (string_field is not None): node = test.findtext('node')
CLUSTER.imageToPull = string_field.split() success = CLUSTER.PullClusterImage(HTML, node, images)
string_field = test.findtext('test_svr_id')
if (string_field is not None):
CLUSTER.testSvrId = string_field
success = CLUSTER.PullClusterImage(HTML, RAN)
else: else:
logging.warning(f"unknown action {action}, skip step") logging.warning(f"unknown action {action}, skip step")
...@@ -634,7 +624,7 @@ elif re.match('^TesteNB$', mode, re.IGNORECASE) or re.match('^TestUE$', mode, re ...@@ -634,7 +624,7 @@ elif re.match('^TesteNB$', mode, re.IGNORECASE) or re.match('^TestUE$', mode, re
#(6 digits or less than 6 digits followed by +) #(6 digits or less than 6 digits followed by +)
for test in exclusion_tests: for test in exclusion_tests:
if (not re.match('^[0-9]{6}$', test) and if (not re.match('^[0-9]{6}$', test) and
not re.match('^[0-9]{1,5}\+$', test)): not re.match('^[0-9]{1,5}\\+$', test)):
logging.error('exclusion test is invalidly formatted: ' + test) logging.error('exclusion test is invalidly formatted: ' + test)
sys.exit(1) sys.exit(1)
else: else:
...@@ -645,7 +635,7 @@ elif re.match('^TesteNB$', mode, re.IGNORECASE) or re.match('^TestUE$', mode, re ...@@ -645,7 +635,7 @@ elif re.match('^TesteNB$', mode, re.IGNORECASE) or re.match('^TestUE$', mode, re
#be verbose #be verbose
for test in requested_tests: for test in requested_tests:
if (re.match('^[0-9]{6}$', test) or if (re.match('^[0-9]{6}$', test) or
re.match('^[0-9]{1,5}\+$', test)): re.match('^[0-9]{1,5}\\+$', test)):
logging.info('test group/case requested: ' + test) logging.info('test group/case requested: ' + test)
else: else:
logging.error('requested test is invalidly formatted: ' + test) logging.error('requested test is invalidly formatted: ' + test)
......
import sys
import logging
logging.basicConfig(
level=logging.DEBUG,
stream=sys.stdout,
format="[%(asctime)s] %(levelname)8s: %(message)s"
)
import os
os.system(f'rm -rf cmake_targets')
os.system(f'mkdir -p cmake_targets/log')
import unittest
sys.path.append('./') # to find OAI imports below
import cls_oai_html
import cls_cmd
import cls_containerize
class TestDeploymentMethods(unittest.TestCase):
def setUp(self):
self.html = cls_oai_html.HTMLManagement()
self.html.testCaseId = "000000"
self.cont = cls_containerize.Containerize()
self.cont.eNBIPAddress = 'localhost'
self.cont.eNBSourceCodePath = os.getcwd()
def test_pull_clean_local_reg(self):
# the pull function has the authentication at the internal cluster hardcoded
# this is a refactoring opportunity: we should do it in a separate step
# and allow to have pull work with any registry
registry = "porcepix.sboai.cs.eurecom.fr"
with cls_cmd.getConnection("localhost") as cmd:
ret = cmd.run(f"ping -c1 -w1 {registry}")
if ret.returncode != 0: # could not ping once -> skip test
self.skipTest(f"test_pull_clean_local_reg: could not reach {registry} (run inside sboai)")
svr_id = '0'
images = ["oai-gnb"]
tag = "develop"
pull = self.cont.Pull_Image_from_Registry(self.html, svr_id, images, tag=tag)
clean = self.cont.Clean_Test_Server_Images(self.html, svr_id, images, tag=tag)
self.assertTrue(pull)
self.assertTrue(clean)
def test_pull_clean_docker_hub(self):
svr_id = '0'
r = "docker.io"
images = ["hello-world"]
tag = "latest"
pull = self.cont.Pull_Image_from_Registry(self.html, svr_id, images, tag=tag, registry=r, username=None, password=None)
clean = self.cont.Clean_Test_Server_Images(self.html, svr_id, images, tag=tag)
self.assertTrue(pull)
self.assertTrue(clean)
if __name__ == '__main__':unittest.main()
...@@ -44,8 +44,8 @@ ...@@ -44,8 +44,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb oai-lte-ue</images_to_pull> <images>oai-enb oai-lte-ue</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -149,7 +149,8 @@ ...@@ -149,7 +149,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb oai-lte-ue</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -52,8 +52,8 @@ ...@@ -52,8 +52,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb-asan oai-lte-ue-asan</images_to_pull> <images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
<testCase id="000011"> <testCase id="000011">
...@@ -166,7 +166,8 @@ ...@@ -166,7 +166,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -43,8 +43,8 @@ ...@@ -43,8 +43,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb-asan oai-lte-ue-asan</images_to_pull> <images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -137,7 +137,8 @@ ...@@ -137,7 +137,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -47,8 +47,8 @@ ...@@ -47,8 +47,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb-asan oai-lte-ue-asan</images_to_pull> <images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -166,7 +166,8 @@ ...@@ -166,7 +166,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -47,8 +47,8 @@ ...@@ -47,8 +47,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb-asan oai-lte-ue-asan</images_to_pull> <images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -166,7 +166,8 @@ ...@@ -166,7 +166,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -40,8 +40,8 @@ ...@@ -40,8 +40,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb-asan oai-lte-ue-asan</images_to_pull> <images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -104,7 +104,8 @@ ...@@ -104,7 +104,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -40,8 +40,8 @@ ...@@ -40,8 +40,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb-asan oai-lte-ue-asan</images_to_pull> <images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -104,7 +104,8 @@ ...@@ -104,7 +104,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb-asan oai-lte-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -47,8 +47,8 @@ ...@@ -47,8 +47,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb oai-lte-ue</images_to_pull> <images>oai-enb oai-lte-ue</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -159,7 +159,8 @@ ...@@ -159,7 +159,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb oai-lte-ue</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -40,8 +40,8 @@ ...@@ -40,8 +40,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb oai-nr-cuup oai-nr-ue</images_to_pull> <images>oai-gnb oai-nr-cuup oai-nr-ue</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -107,7 +107,8 @@ ...@@ -107,7 +107,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb oai-nr-cuup oai-nr-ue</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -47,8 +47,8 @@ ...@@ -47,8 +47,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb-asan oai-nr-cuup-asan oai-nr-ue-asan</images_to_pull> <images>oai-gnb-asan oai-nr-cuup-asan oai-nr-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -194,7 +194,8 @@ ...@@ -194,7 +194,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-asan oai-nr-cuup-asan oai-nr-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -42,8 +42,8 @@ ...@@ -42,8 +42,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb-asan oai-nr-ue-asan</images_to_pull> <images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -133,7 +133,8 @@ ...@@ -133,7 +133,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
<!--
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
-->
<testCaseList>
<htmlTabRef>rfsim-5gnr-flexric</htmlTabRef>
<htmlTabName>Monolithic SA TDD gNB and FlexRic Integration</htmlTabName>
<htmlTabIcon>wrench</htmlTabIcon>
<repeatCount>1</repeatCount>
<TestCaseRequestedList>
111110
111111
111112
000001
000002
000003
002001
010000
000004
333333
010001
010002
010003
020005
010013
002006
444444
100002
100001
222221
222222
</TestCaseRequestedList>
<TestCaseExclusionList></TestCaseExclusionList>
<testCase id="002001">
<class>IdleSleep</class>
<desc>Sleep</desc>
<idle_sleep_time_in_sec>10</idle_sleep_time_in_sec>
</testCase>
<testCase id="111110">
<class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc>
<svr_id>0</svr_id>
<images>oai-gnb oai-nr-ue</images>
</testCase>
<testCase id="111111">
<class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc>
<svr_id>0</svr_id>
<images>oai-flexric</images>
</testCase>
<testCase id="222221">
<class>Clean_Test_Server_Images</class>
<desc>Clean Test Images on Test Server</desc>
<svr_id>0</svr_id>
<images>oai-gnb oai-nr-ue</images>
<always_exec>true</always_exec>
</testCase>
<testCase id="222222">
<class>Clean_Test_Server_Images</class>
<desc>Clean Test Images on Test Server</desc>
<svr_id>0</svr_id>
<images>oai-flexric</images>
<always_exec>true</always_exec>
</testCase>
<testCase id="111112">
<class>Custom_Command</class>
<desc>Updating CN5G images</desc>
<node>localhost</node>
<command>docker compose -f ../doc/tutorial_resources/oai-cn5g/docker-compose.yaml pull</command>
</testCase>
<testCase id="000001">
<class>Deploy_Object</class>
<desc>Deploy OAI 5G CoreNetwork</desc>
<yaml_path>doc/tutorial_resources/oai-cn5g</yaml_path>
<services>mysql oai-nrf oai-udr oai-udm oai-ausf oai-amf oai-smf oai-upf oai-ext-dn</services>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
</testCase>
<testCase id="000002">
<class>Deploy_Object</class>
<desc>Deploy OAI FlexRIC</desc>
<yaml_path>ci-scripts/yaml_files/5g_rfsimulator_flexric</yaml_path>
<services>oai-flexric</services>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
</testCase>
<testCase id="000003">
<class>Deploy_Object</class>
<desc>Deploy OAI 5G gNB in RF sim SA</desc>
<yaml_path>ci-scripts/yaml_files/5g_rfsimulator_flexric</yaml_path>
<services>oai-gnb</services>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
</testCase>
<testCase id="000004">
<class>Deploy_Object</class>
<desc>Deploy 2 OAI 5G NR-UEs in RF sim SA</desc>
<yaml_path>ci-scripts/yaml_files/5g_rfsimulator_flexric</yaml_path>
<services>oai-nr-ue oai-nr-ue2</services>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
</testCase>
<testCase id="020005">
<class>Ping</class>
<desc>Ping ext-dn from both UEs</desc>
<id>rfsim5g_ue rfsim5g_ue2</id>
<nodes>selfix selfix</nodes>
<ping_args>-c 20 192.168.70.135</ping_args>
<ping_packetloss_threshold>5</ping_packetloss_threshold>
</testCase>
<testCase id="333333">
<class>Attach_UE</class>
<desc>Attach OAI UE 1 and 2</desc>
<id>rfsim5g_ue rfsim5g_ue2</id>
<nodes>selfix selfix</nodes>
</testCase>
<testCase id="444444">
<class>Detach_UE</class>
<desc>Detach OAI UE 1 and 2</desc>
<id>rfsim5g_ue rfsim5g_ue2</id>
<nodes>selfix selfix</nodes>
</testCase>
<testCase id="100001">
<class>Undeploy_Object</class>
<desc>Undeploy Core Network</desc>
<yaml_path>doc/tutorial_resources/oai-cn5g</yaml_path>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
<always_exec>true</always_exec>
</testCase>
<testCase id="100002">
<class>Undeploy_Object</class>
<desc>Undeploy RAN and Flexric</desc>
<yaml_path>ci-scripts/yaml_files/5g_rfsimulator_flexric</yaml_path>
<eNB_instance>0</eNB_instance>
<eNB_serverId>0</eNB_serverId>
<always_exec>true</always_exec>
</testCase>
<testCase id="010000">
<class>Custom_Command</class>
<desc>RC monitoring</desc>
<node>localhost</node>
<command_fail>yes</command_fail>
<command>docker exec oai-flexric bash -c "stdbuf -o0 /usr/local/flexric/xApp/c/monitor/xapp_rc_moni" > ../cmake_targets/log/5g_rfsimulator_flexric/rc-moni-010000.log</command>
</testCase>
<testCase id="010001">
<class>Custom_Command</class>
<desc>KPM monitoring</desc>
<node>localhost</node>
<command_fail>yes</command_fail>
<command>docker exec oai-flexric bash -c "stdbuf -o0 /usr/local/flexric/xApp/c/monitor/xapp_kpm_moni" > ../cmake_targets/log/5g_rfsimulator_flexric/kpm-moni-010001.log</command>
</testCase>
<testCase id="010002">
<class>Custom_Command</class>
<desc>KPM monitoring and RC control</desc>
<node>localhost</node>
<command_fail>yes</command_fail>
<command>docker exec oai-flexric bash -c "stdbuf -o0 /usr/local/flexric/xApp/c/kpm_rc/xapp_kpm_rc" > ../cmake_targets/log/5g_rfsimulator_flexric/kpm_rc-010002.log</command>
</testCase>
<testCase id="010003">
<class>Custom_Command</class>
<desc>Custom SMs monitoring</desc>
<node>localhost</node>
<command_fail>yes</command_fail>
<command>docker exec oai-flexric bash -c "stdbuf -o0 /usr/local/flexric/xApp/c/monitor/xapp_gtp_mac_rlc_pdcp_moni" > ../cmake_targets/log/5g_rfsimulator_flexric/sms-moni-010003.log</command>
</testCase>
<testCase id="010013">
<class>Custom_Command</class>
<desc>Custom SMs monitoring</desc>
<node>localhost</node>
<command_fail>yes</command_fail>
<command>docker exec oai-flexric bash -c "stdbuf -o0 /usr/local/flexric/xApp/c/monitor/xapp_gtp_mac_rlc_pdcp_moni" > ../cmake_targets/log/5g_rfsimulator_flexric/sms-moni-010013.log</command>
</testCase>
</testCaseList>
...@@ -57,8 +57,8 @@ ...@@ -57,8 +57,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb-asan oai-nr-ue</images_to_pull> <images>oai-gnb-asan oai-nr-ue</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -259,7 +259,8 @@ ...@@ -259,7 +259,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-asan oai-nr-ue</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -42,8 +42,8 @@ ...@@ -42,8 +42,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb-asan oai-nr-ue-asan</images_to_pull> <images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -133,7 +133,8 @@ ...@@ -133,7 +133,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -42,8 +42,8 @@ ...@@ -42,8 +42,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb-asan oai-nr-ue-asan</images_to_pull> <images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -133,7 +133,8 @@ ...@@ -133,7 +133,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -42,8 +42,8 @@ ...@@ -42,8 +42,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb-asan oai-nr-ue-asan</images_to_pull> <images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
<testCase id="004000"> <testCase id="004000">
...@@ -133,7 +133,8 @@ ...@@ -133,7 +133,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -39,8 +39,8 @@ ...@@ -39,8 +39,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb-asan oai-nr-ue-asan</images_to_pull> <images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
...@@ -101,7 +101,8 @@ ...@@ -101,7 +101,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -41,8 +41,8 @@ ...@@ -41,8 +41,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb-asan oai-nr-ue-asan</images_to_pull> <images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
...@@ -107,7 +107,8 @@ ...@@ -107,7 +107,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -39,8 +39,8 @@ ...@@ -39,8 +39,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-nr-ue-asan</images_to_pull> <images>oai-nr-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
...@@ -97,7 +97,8 @@ ...@@ -97,7 +97,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-nr-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -41,8 +41,8 @@ ...@@ -41,8 +41,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb-asan oai-nr-ue-asan</images_to_pull> <images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
<testCase id="004000"> <testCase id="004000">
...@@ -116,7 +116,8 @@ ...@@ -116,7 +116,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -42,8 +42,8 @@ ...@@ -42,8 +42,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb-asan oai-nr-ue-asan</images_to_pull> <images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -133,7 +133,8 @@ ...@@ -133,7 +133,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-asan oai-nr-ue-asan</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
<testCase id="000010"> <testCase id="000010">
<class>Push_Local_Registry</class> <class>Push_Local_Registry</class>
<desc>Push Images to Local Registry</desc> <desc>Push Images to Local Registry</desc>
<registry_svr_id>0</registry_svr_id> <svr_id>0</svr_id>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -43,8 +43,8 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1.xml ...@@ -43,8 +43,8 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1.xml
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
...@@ -211,7 +211,8 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1.xml ...@@ -211,7 +211,8 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1.xml
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -42,8 +42,8 @@ ...@@ -42,8 +42,8 @@
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
...@@ -194,7 +194,8 @@ ...@@ -194,7 +194,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -42,8 +42,8 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1_rrc_inactivity_no_flexran.xm ...@@ -42,8 +42,8 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1_rrc_inactivity_no_flexran.xm
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
<class>Custom_Command</class> <class>Custom_Command</class>
...@@ -176,7 +176,8 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1_rrc_inactivity_no_flexran.xm ...@@ -176,7 +176,8 @@ Replaces xml_files/enb_usrp210_band7_test_05mhz_tm1_rrc_inactivity_no_flexran.xm
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -44,8 +44,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml ...@@ -44,8 +44,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
<class>Custom_Command</class> <class>Custom_Command</class>
...@@ -206,7 +206,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml ...@@ -206,7 +206,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -43,8 +43,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml ...@@ -43,8 +43,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
<class>Custom_Command</class> <class>Custom_Command</class>
...@@ -138,7 +138,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml ...@@ -138,7 +138,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -49,14 +49,14 @@ ...@@ -49,14 +49,14 @@
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>1</test_svr_id> <svr_id>1</svr_id>
<images_to_pull>oai-lte-ue</images_to_pull> <images>oai-lte-ue</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
<class>Custom_Command</class> <class>Custom_Command</class>
...@@ -190,14 +190,16 @@ ...@@ -190,14 +190,16 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on eNB Test Server</desc> <desc>Clean Test Images on eNB Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
<testCase id="333333"> <testCase id="333333">
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on LTE-UE Test Server</desc> <desc>Clean Test Images on LTE-UE Test Server</desc>
<test_svr_id>1</test_svr_id> <svr_id>1</svr_id>
<images>oai-lte-ue</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -43,8 +43,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml ...@@ -43,8 +43,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
<class>Custom_Command</class> <class>Custom_Command</class>
...@@ -206,7 +206,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml ...@@ -206,7 +206,8 @@ Replaces xml_files/enb_usrp210_band7_test_10mhz_tm1.xml
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -43,8 +43,8 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm1.xml ...@@ -43,8 +43,8 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm1.xml
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
...@@ -223,7 +223,8 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm1.xml ...@@ -223,7 +223,8 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm1.xml
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -41,8 +41,8 @@ ...@@ -41,8 +41,8 @@
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
...@@ -209,7 +209,8 @@ ...@@ -209,7 +209,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -41,8 +41,8 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm2.xml ...@@ -41,8 +41,8 @@ Replaces xml_files/enb_usrp210_band40_test_05mhz_tm2.xml
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
<class>Custom_Command</class> <class>Custom_Command</class>
......
...@@ -42,8 +42,8 @@ Replaces xml_files/enb_usrp210_band40_test_10mhz_tm1.xml ...@@ -42,8 +42,8 @@ Replaces xml_files/enb_usrp210_band40_test_10mhz_tm1.xml
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
<class>Custom_Command</class> <class>Custom_Command</class>
...@@ -214,7 +214,8 @@ Replaces xml_files/enb_usrp210_band40_test_10mhz_tm1.xml ...@@ -214,7 +214,8 @@ Replaces xml_files/enb_usrp210_band40_test_10mhz_tm1.xml
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -42,8 +42,8 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1.xml ...@@ -42,8 +42,8 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1.xml
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
<class>Custom_Command</class> <class>Custom_Command</class>
...@@ -212,7 +212,8 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1.xml ...@@ -212,7 +212,8 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1.xml
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -42,8 +42,8 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1_default_scheduler.xml ...@@ -42,8 +42,8 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1_default_scheduler.xml
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
...@@ -217,7 +217,8 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1_default_scheduler.xml ...@@ -217,7 +217,8 @@ Replaces xml_files/enb_usrp210_band40_test_20mhz_tm1_default_scheduler.xml
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -48,8 +48,8 @@ ...@@ -48,8 +48,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
...@@ -153,7 +153,8 @@ ...@@ -153,7 +153,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images</desc> <desc>Clean Test Images</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -48,8 +48,8 @@ ...@@ -48,8 +48,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
...@@ -153,7 +153,8 @@ ...@@ -153,7 +153,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images</desc> <desc>Clean Test Images</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
......
...@@ -57,15 +57,15 @@ ...@@ -57,15 +57,15 @@
<testCase id="111110"> <testCase id="111110">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-enb</images_to_pull> <images>oai-enb</images>
</testCase> </testCase>
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>1</test_svr_id> <svr_id>1</svr_id>
<images_to_pull>oai-gnb</images_to_pull> <images>oai-gnb</images>
</testCase> </testCase>
<testCase id = "100000"> <testCase id = "100000">
...@@ -252,14 +252,16 @@ ...@@ -252,14 +252,16 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-enb</images>
</testCase> </testCase>
<testCase id="222221"> <testCase id="222221">
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>1</test_svr_id> <svr_id>1</svr_id>
<images>oai-gnb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -43,8 +43,8 @@ ...@@ -43,8 +43,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb-aerial</images_to_pull> <images>oai-gnb-aerial</images>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
...@@ -128,7 +128,8 @@ ...@@ -128,7 +128,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-aerial</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -65,7 +65,8 @@ ...@@ -65,7 +65,8 @@
<class>Pull_Cluster_Image</class> <class>Pull_Cluster_Image</class>
<desc>Pull Images from Cluster</desc> <desc>Pull Images from Cluster</desc>
<oc_project>oaicicd-ran</oc_project> <oc_project>oaicicd-ran</oc_project>
<images_to_pull>oai-gnb-aw2s</images_to_pull> <images>oai-gnb-aw2s</images>
<node>avra</node>
</testCase> </testCase>
<testCase id="101000"> <testCase id="101000">
...@@ -277,7 +278,8 @@ ...@@ -277,7 +278,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-aw2s</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -64,7 +64,8 @@ ...@@ -64,7 +64,8 @@
<class>Pull_Cluster_Image</class> <class>Pull_Cluster_Image</class>
<desc>Pull Images from Cluster</desc> <desc>Pull Images from Cluster</desc>
<oc_project>oaicicd-ran</oc_project> <oc_project>oaicicd-ran</oc_project>
<images_to_pull>oai-gnb-aw2s</images_to_pull> <images>oai-gnb-aw2s</images>
<node>avra</node>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -274,7 +275,8 @@ ...@@ -274,7 +275,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-aw2s</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -59,8 +59,8 @@ ...@@ -59,8 +59,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb</images_to_pull> <images>oai-gnb</images>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
...@@ -220,7 +220,8 @@ ...@@ -220,7 +220,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -56,8 +56,8 @@ ...@@ -56,8 +56,8 @@
<testCase id="333333"> <testCase id="333333">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb oai-nr-cuup</images_to_pull> <images>oai-gnb oai-nr-cuup</images>
</testCase> </testCase>
<testCase id="310000"> <testCase id="310000">
...@@ -218,7 +218,8 @@ ...@@ -218,7 +218,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb oai-nr-cuup</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -64,8 +64,8 @@ ...@@ -64,8 +64,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb</images_to_pull> <images>oai-gnb</images>
</testCase> </testCase>
<testCase id="110000"> <testCase id="110000">
...@@ -251,7 +251,8 @@ ...@@ -251,7 +251,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -56,7 +56,8 @@ ...@@ -56,7 +56,8 @@
<class>Pull_Cluster_Image</class> <class>Pull_Cluster_Image</class>
<desc>Pull Images from Cluster</desc> <desc>Pull Images from Cluster</desc>
<oc_project>oaicicd-ran</oc_project> <oc_project>oaicicd-ran</oc_project>
<images_to_pull>oai-gnb-fhi72</images_to_pull> <images>oai-gnb-fhi72</images>
<node>cacofonix</node>
</testCase> </testCase>
<testCase id="800813"> <testCase id="800813">
<class>Create_Workspace</class> <class>Create_Workspace</class>
...@@ -153,7 +154,8 @@ ...@@ -153,7 +154,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb-fhi72</images>
</testCase> </testCase>
<testCase id="888888"> <testCase id="888888">
......
...@@ -46,8 +46,8 @@ ...@@ -46,8 +46,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Cluster_Image</class> <class>Pull_Cluster_Image</class>
<desc>Pull Images from Cluster</desc> <desc>Pull Images from Cluster</desc>
<images_to_pull>oai-gnb</images_to_pull> <images>oai-gnb</images>
<test_svr_id>matix</test_svr_id> <node>matix</node>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
...@@ -156,7 +156,8 @@ ...@@ -156,7 +156,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -46,8 +46,8 @@ ...@@ -46,8 +46,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Cluster_Image</class> <class>Pull_Cluster_Image</class>
<desc>Pull Images from Cluster</desc> <desc>Pull Images from Cluster</desc>
<images_to_pull>oai-gnb</images_to_pull> <images>oai-gnb</images>
<test_svr_id>matix</test_svr_id> <node>matix</node>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
...@@ -156,7 +156,8 @@ ...@@ -156,7 +156,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -46,8 +46,8 @@ ...@@ -46,8 +46,8 @@
<testCase id="111111"> <testCase id="111111">
<class>Pull_Cluster_Image</class> <class>Pull_Cluster_Image</class>
<desc>Pull Images from Cluster</desc> <desc>Pull Images from Cluster</desc>
<images_to_pull>oai-gnb</images_to_pull> <images>oai-gnb</images>
<test_svr_id>matix</test_svr_id> <node>matix</node>
</testCase> </testCase>
<testCase id="100000"> <testCase id="100000">
...@@ -156,7 +156,8 @@ ...@@ -156,7 +156,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
...@@ -44,15 +44,15 @@ ...@@ -44,15 +44,15 @@
<testCase id="010000"> <testCase id="010000">
<class>Pull_Cluster_Image</class> <class>Pull_Cluster_Image</class>
<desc>Pull Images from Cluster</desc> <desc>Pull Images from Cluster</desc>
<images_to_pull>oai-gnb</images_to_pull> <images>oai-gnb</images>
<test_svr_id>avra</test_svr_id> <node>avra</node>
</testCase> </testCase>
<testCase id="010001"> <testCase id="010001">
<class>Pull_Cluster_Image</class> <class>Pull_Cluster_Image</class>
<desc>Pull Images from Cluster</desc> <desc>Pull Images from Cluster</desc>
<images_to_pull>oai-nr-ue</images_to_pull> <images>oai-nr-ue</images>
<test_svr_id>caracal</test_svr_id> <node>caracal</node>
</testCase> </testCase>
<testCase id = "030000"> <testCase id = "030000">
...@@ -163,14 +163,16 @@ ...@@ -163,14 +163,16 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb</images>
</testCase> </testCase>
<testCase id="444444"> <testCase id="444444">
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>1</test_svr_id> <svr_id>1</svr_id>
<images>oai-nr-ue</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
...@@ -53,8 +53,8 @@ ...@@ -53,8 +53,8 @@
<testCase id="311111"> <testCase id="311111">
<class>Pull_Local_Registry</class> <class>Pull_Local_Registry</class>
<desc>Pull Images from Local Registry</desc> <desc>Pull Images from Local Registry</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images_to_pull>oai-gnb</images_to_pull> <images>oai-gnb</images>
</testCase> </testCase>
<testCase id="300000"> <testCase id="300000">
...@@ -214,7 +214,8 @@ ...@@ -214,7 +214,8 @@
<class>Clean_Test_Server_Images</class> <class>Clean_Test_Server_Images</class>
<always_exec>true</always_exec> <always_exec>true</always_exec>
<desc>Clean Test Images on Test Server</desc> <desc>Clean Test Images on Test Server</desc>
<test_svr_id>0</test_svr_id> <svr_id>0</svr_id>
<images>oai-gnb</images>
</testCase> </testCase>
</testCaseList> </testCaseList>
......
[NEAR-RIC]
NEAR_RIC_IP = 192.168.70.150
[XAPP]
DB_PATH = /flexric/db/
DB_NAME = xapp_rnis_db
services:
oai-flexric:
image: ${REGISTRY:-oaisoftwarealliance}/oai-flexric:${FLEXRIC_TAG:-develop}
container_name: oai-flexric
networks:
public_net:
ipv4_address: 192.168.70.150
volumes:
- ./conf/flexric.conf:/usr/local/etc/flexric/flexric.conf
- sharedXappLibs:/usr/local/lib/flexric/
healthcheck:
test: /bin/bash -c "pgrep nearRT-RIC"
interval: 10s
timeout: 5s
oai-gnb:
image: ${REGISTRY:-oaisoftwarealliance}/${GNB_IMG:-oai-gnb}:${TAG:-develop}
privileged: true
container_name: rfsim5g-oai-gnb
environment:
USE_ADDITIONAL_OPTIONS: -E --rfsim --log_config.global_log_options level,nocolor,time
ASAN_OPTIONS: detect_leaks=0
depends_on:
- oai-flexric
networks:
public_net:
ipv4_address: 192.168.70.151
volumes:
- ../../conf_files/gnb.sa.band78.106prb.rfsim.flexric.conf:/opt/oai-gnb/etc/gnb.conf
- sharedXappLibs:/usr/local/lib/flexric/
healthcheck:
test: /bin/bash -c "pgrep nr-softmodem"
interval: 10s
timeout: 5s
retries: 5
oai-nr-ue:
image: ${REGISTRY:-oaisoftwarealliance}/${NRUE_IMG:-oai-nr-ue}:${TAG:-develop}
privileged: true
container_name: rfsim5g-oai-nr-ue
environment:
USE_ADDITIONAL_OPTIONS: -E --rfsim -r 106 --numerology 1 -C 3619200000 --uicc0.imsi 001010000000003 --rfsimulator.serveraddr 192.168.70.151 --log_config.global_log_options level,nocolor,time
depends_on:
- oai-gnb
networks:
public_net:
ipv4_address: 192.168.70.152
volumes:
- ../../conf_files/nrue.uicc.conf:/opt/oai-nr-ue/etc/nr-ue.conf
healthcheck:
test: /bin/bash -c "pgrep nr-uesoftmodem"
interval: 10s
timeout: 5s
retries: 5
oai-nr-ue2:
image: ${REGISTRY:-oaisoftwarealliance}/${NRUE_IMG:-oai-nr-ue}:${TAG:-develop}
privileged: true
container_name: rfsim5g-oai-nr-ue2
environment:
USE_ADDITIONAL_OPTIONS: -E --rfsim -r 106 --numerology 1 -C 3619200000 --uicc0.imsi 001010000000004 --rfsimulator.serveraddr 192.168.70.151 --log_config.global_log_options level,nocolor,time
depends_on:
- oai-gnb
networks:
public_net:
ipv4_address: 192.168.70.153
volumes:
- ../../conf_files/nrue.uicc.conf:/opt/oai-nr-ue/etc/nr-ue.conf
healthcheck:
test: /bin/bash -c "pgrep nr-uesoftmodem"
interval: 10s
timeout: 5s
retries: 5
volumes:
sharedXappLibs:
networks:
public_net:
name: oai-cn5g-public-net
external: true
...@@ -128,6 +128,9 @@ information on how the images are built. ...@@ -128,6 +128,9 @@ information on how the images are built.
- [OAI-CN5G-COTS-UE-Test](https://jenkins-oai.eurecom.fr/job/OAI-CN5G-COTS-UE-Test/) - [OAI-CN5G-COTS-UE-Test](https://jenkins-oai.eurecom.fr/job/OAI-CN5G-COTS-UE-Test/)
~5G-NR ~5G-NR
- using 5GC bench (resources `CI-Cetautomatix-OC-oaicicd-session`, `CI-Dogmatix-CN5G-gNB`): Attach/Detach of UE with multiple PDU sessions - using 5GC bench (resources `CI-Cetautomatix-OC-oaicicd-session`, `CI-Dogmatix-CN5G-gNB`): Attach/Detach of UE with multiple PDU sessions
- [OAI-FLEXRIC-RAN-Integration-Test](https://jenkins-oai.eurecom.fr/job/OAI-FLEXRIC-RAN-Integration-Test/) ~5G-NR
- selfix (gNB, nrUE, OAI 5GC, FlexRIC)
- uses RFsimulator, tests FlexRIC/E2 interface and xApps
- [RAN-gNB-N300-Timing-Phytest-LDPC](https://jenkins-oai.eurecom.fr/view/RAN/job/RAN-gNB-N300-Timing-Phytest-LDPC/) - [RAN-gNB-N300-Timing-Phytest-LDPC](https://jenkins-oai.eurecom.fr/view/RAN/job/RAN-gNB-N300-Timing-Phytest-LDPC/)
~5G-NR ~5G-NR
- caracal + N310 - caracal + N310
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment