This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
dongxiaoyan-tsg-autotest/01-TestCase/tsg_oam/OamApi.robot

315 lines
20 KiB
Plaintext
Raw Normal View History

2020-06-04 18:09:44 +08:00
*** Settings ***
Force Tags tsg_oam tsg_device
Library REST
Resource ../../03-Variable/BifangApiVariable.txt
Library OperatingSystem
Library Selenium2Library
Library RequestsLibrary
Library Collections
Library REST http://${oamHost}:${oamPort}/
*** Variables ***
${url} chassis-daji-00001
${profileId} ${EMPTY}
*** Keywords ***
OamGetRequest
[Arguments] ${requestUri} ${data}
${headers} set variable {"Content-Type":"application/json"}
create session api http://${oamHost}:${oamPort}/ ${headers}
${response} Get Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
${rescode} Set Variable ${response}[code]
Should Be Equal As Strings ${rescode} 200
[Return] ${response}
OamPostRequest
[Arguments] ${requestUri} ${data}
${headers} set variable {"Content-Type":"application/json"}
create session api http://${oamHost}:${oamPort}/ ${headers}
${response}= Post Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
${rescode} Set Variable ${response}[code]
Should Be Equal As Strings ${rescode} 200
[Return] ${response}
OamDeleteRequest
[Arguments] ${requestUri} ${data}
${headers} set variable {"Content-Type":"application/json"}
create session api http://${oamHost}:${oamPort}/ ${headers}
${response}= Delete Request api ${requestUri} data=${data}
log return data =${response}
Should Be Equal As Strings ${response.status_code} 200
${response} to json ${response.content}
${rescode} Set Variable ${response}[code]
Should Be Equal As Strings ${rescode} 200
${datalist} Get From Dictionary ${response}[data] list
${len} Get Length ${datalist}
FOR ${var} IN RANGE ${len}
Should Contain ${datalist}[${var}][result] success
END
[Return] ${response}
*** Test Cases ***
writestarttime
${starttime} Get Time
Append To File ${path}/OamApi_file.txt ${starttime}----------------------------------------------
chassis-danji-00165
#获取单个板卡的信息
#${caseName} set variable chassis-danji-00001
Comment chassis-danji-00165
${response} OamGetRequest /tsgoam/cm/chassis/192.168.40.165 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 165:${response}
chassis-danji-00170
${response} OamGetRequest /tsgoam/cm/chassis/192.168.40.170 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 170:${response}
chassis-danji-00175
${response} OamGetRequest /tsgoam/cm/chassis/192.168.40.175 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 175:${response}
chassis-danji-0025
${response} OamGetRequest /tsgoam/cm/chassis/192.168.40.25 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 25:${response}
fru-sled-00001-165
#获取单个板卡的FRU信息 获取单个板卡的FRU信息
#${caseName} set variable chassis-danji-00001
Comment fru-sled-00001
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.165/0 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 165:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.165/1 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 165:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.165/2 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 165:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.165/3 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 165:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.165/100 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 165:${response}
fru-sled-00002-170
#获取单个板卡的FRU信息 获取单个板卡的FRU信息
#${caseName} set variable chassis-danji-00001
Comment fru-sled-00002
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.170/100 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 170:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.170/0 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 170:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.170/1 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 170:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.170/2 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 170:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.170/3 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 170:${response}
fru-sled-00003-175
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.175/100 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 175:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.175/0 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 175:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.175/1 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 175:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.175/2 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 175:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.175/3 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 175:${response}
fru-sled-00003-25
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.25/100 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 25:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.25/0 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 25:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.25/1 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 25:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.25/2 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 25:${response}
${response} OamGetRequest /tsgoam/cm/FRU/192.168.40.25/3 ${EMPTY}
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 25:${response}
hostname-sled-00001可以在170xxg-adc03-mxn
Comment ntpsrv-sled-00001更新hostname更新板卡CentOS的hostname需要用户手动重启network service或reboot后才能生效
${response} OamPostRequest /tsgoam/cm/hostname/ [{"chassis_ip":"192.168.40.170","sled_id":0,"hostname":"hy-adc03-mxn"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 170:${response}
${response} OamPostRequest /tsgoam/cm/hostname/ [{"chassis_ip":"192.168.40.170","sled_id":0,"hostname":"xxg-adc03-mxn"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
ntpsrv-sled-00001
Comment ntpsrv-sled-00001更新ntp server设置设置ntp server注意调用此方法会同时更新TSG上所有板卡的ntp配置即将计算板的ntp server指向交换板将交换板的ntp server指向目标机器。
${response} OamPostRequest /tsgoam/cm/ntpsrv/ [{"chassis_ip":"192.168.40.170","ntpsrv_ip":"192.168.40.1"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 25:${response}
softwarereboot-sled-00001
Comment softwarereboot-sled-00001 重启板卡软件
#${response} OamPostRequest /tsgoam/cm/softwarereboot/ [{"chassis_ip":"192.168.40.170","sled_id":0},{"chassis_ip":"192.168.40.170","sled_id":1},{"chassis_ip":"192.168.40.170","sled_id":2},{"chassis_ip":"192.168.40.170","sled_id":3},,{"chassis_ip":"192.168.40.170","sled_id":100}]
#${response} OamPostRequest /tsgoam/cm/softreboot/ [{"chassis_ip":"192.168.40.170","sled_id":0},{"chassis_ip":"192.168.40.170","sled_id":1},{"chassis_ip":"192.168.40.170","sled_id":2},{"chassis_ip":"192.168.40.170","sled_id":3},{"chassis_ip":"192.168.40.170","sled_id":100}]
${response} OamPostRequest /tsgoam/cm/softreboot/ [{"chassis_ip":"192.168.40.165","sled_id":3}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 25:${response}
######################################################################
alarm-chassis-00001
Comment alarm-chassis-00001 获取一个或多个设备的告警列表
${response} OamPostRequest /tsgoam/fm/alarms/ [{"chassis_ip":"192.168.40.165","chassis_sn":"CBT2201925000001","where":"component = 'syslog'"},{"chassis_ip":"192.168.40.170","chassis_sn":"CBT2201925000003","where":"component = 'syslog'"},{"chassis_ip":"192.168.40.175","chassis_sn":"CBT2201925000004","where":"component = 'syslog'"},{"chassis_ip":"192.168.40.25","chassis_sn":"CBT2201925000200","where":"component = 'syslog'"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 25:${response}
del-alarm-chassis-00001
Comment del-alarm-chassis-00001 清除指定告警
#${response} OamDeleteRequest /tsgoam/fm/alarms/ [{"alarm_id":"CBT22019250000030000000000255100","chassis_ip":"192.168.40.170","operator":"dongxiaoyan","notes":"auto"}]
${response} OamDeleteRequest /tsgoam/fm/alarms/ [{"alarm_id":"CBT22019250000010000000003422719","chassis_ip":"192.168.40.165","operator":"dongxiaoyan","notes":"auto"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 25:${response}
status-chassis-00001
Comment status-chassis-00001 获取板卡的状态 根据chassis或者sled的alarm数量计算板卡状态green, yellow, red。返回改chassis下所有sled的状态和chassis的状态
${response} OamPostRequest /tsgoam/fm/status/ [{"chassis_ip":"192.168.40.165","chassis_sn":"CBT2201925000001"},{"chassis_ip":"192.168.40.170","chassis_sn":"CBT2201925000003"},{"chassis_ip":"192.168.40.175","chassis_sn":"CBT2201925000004"},{"chassis_ip":"192.168.40.25","chassis_sn":"CBT2201925000200"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 4:${response}
${response} OamPostRequest /tsgoam/fm/status/ [{"chassis_ip":"192.168.40.165","chassis_sn":"CBT2201925000001"},{"chassis_ip":"192.168.40.170","chassis_sn":"CBT2201925000003"},{"chassis_ip":"192.168.40.175","chassis_sn":"CBT2201925000004"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 3:${response}
${response} OamPostRequest /tsgoam/fm/status/ [{"chassis_ip":"192.168.40.165","chassis_sn":"CBT2201925000001"},{"chassis_ip":"192.168.40.170","chassis_sn":"CBT2201925000003"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 2:${response}
${response} OamPostRequest /tsgoam/fm/status/ [{"chassis_ip":"192.168.40.165","chassis_sn":"CBT2201925000001"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 1:${response}
threshold-chassis-00001
Comment threshold-chassis-00001获取设备counter的threshold值
${response} OamPostRequest /tsgoam/fm/threshold/ [{"chassis_ip":"192.168.40.165"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 165:${response}
${response} OamPostRequest /tsgoam/fm/threshold/ [{"chassis_ip":"192.168.40.170"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 170:${response}
${response} OamPostRequest /tsgoam/fm/threshold/ [{"chassis_ip":"192.168.40.25"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 25:${response}
${response} OamPostRequest /tsgoam/fm/threshold/ [{"chassis_ip":"192.168.40.165"},{"chassis_ip":"192.168.40.170"},{"chassis_ip":"192.168.40.175"},{"chassis_ip":"192.168.40.25"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log 4:${response}
thresholds-chassis-00165
Comment thresholds-chassis-00001 设置设备counter的threshold值覆盖更新传入的值
${response} OamPostRequest /tsgoam/fm/thresholds/ [{"chassis_ip":"192.168.40.165","Temp_XL710_82599@CBT2201925000001_mcn2_hardware":[ {"critical+":90.5,"critical-":-10.5}, { "major+":80.5,"major-":-5.5}, { "minor+":70.5, "minor-":0.5} ] }]
${responseString} Convert To String ${response}
${response} OamPostRequest /tsgoam/fm/threshold/ [{"chassis_ip":"192.168.40.165"}]
${responseString} Convert To String ${response}
${response} OamPostRequest /tsgoam/fm/thresholds/ [{"chassis_ip":"192.168.40.165","Temp_XL710_82599@CBT2201925000001_mcn2_hardware":[ {"critical+":90.0,"critical-":-10.0}, { "major+":80.0,"major-":-5.0}, { "minor+":70.0, "minor-":0.0} ] }]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log ${response}
syn-chassis-00170
Comment syn-chassis-00001告警强制同步接口
${response} OamPostRequest /tsgoam/fm/syn/ [{"chassis_ip":"192.168.40.165","chassis_sn":"CBT2201925000001"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log ${response}
######################################################################
oamcore-chassis-00165
Comment oamcore-chassis-00001 设置oam_core的运行参数
#${response} OamPostRequest /tsgoam/settings/oam_core/ [{"chassis_ip":"192.168.40.165","oam.cluster.server.ip":"192.168.40.2110","datasource.second.username":"root1","datasource.second.password":"1111110","oam.writer.scheduler.interval":"600001","oam.writer.scheduler.ipmi.interval":"1800001","logging.level.com.tsg.oam":"DEBUG"}]
#${responseString} Convert To String ${response}
#Append To File ${path}/OamApi_file.txt ${responseString}
${response} OamPostRequest /tsgoam/settings/oam_core/ [{"chassis_ip":"192.168.40.165","oam.cluster.server.ip":"192.168.40.210","datasource.second.username":"root","datasource.second.password":"111111","oam.writer.scheduler.interval":"60000","oam.writer.scheduler.ipmi.interval":"180000","logging.level.com.tsg.oam":"ERROR"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log ${response}
oamsnmp-chassis-00165
Comment oamsnmp-chassis-00001设置oam_snmp的运行参数
${response} OamPostRequest /tsgoam/settings/oam_snmp/ [{"chassis_ip":"192.168.40.165","oam.influx.recentminutes":6,"logging.level.com.oam.snmp":"DEBUG"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
${response} OamPostRequest /tsgoam/settings/oam_snmp/ [{"chassis_ip":"192.168.40.165","oam.influx.recentminutes":5,"logging.level.com.oam.snmp":"ERROR"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log ${response}
oamcliagent-chassis-00170
Comment oamcliagent-chassis-00001设置cli_agent的运行参
${response} OamPostRequest /tsgoam/settings/cli_agent/ [{"chassis_ip":"192.168.40.165","logging.level.com.oam.agent":"DEBUG"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
${response} OamPostRequest /tsgoam/settings/cli_agent/ [{"chassis_ip":"192.168.40.165","logging.level.com.oam.agent":"ERROR"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log ${response}
oamcli-chassis-00001
Comment oamcli-chassis-00001设置cli的运行参数
${response} OamPostRequest /tsgoam/settings/cli/ [{"chassis_ip":"192.168.40.165","cli.rest.root":"http://192.168.40.4:80821/v1","logging.level.com.cs.oam.cli":"DEBUG"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
${response} OamPostRequest /tsgoam/settings/cli/ [{"chassis_ip":"192.168.40.165","cli.rest.root":"http://192.168.40.4:8082/v1","logging.level.com.cs.oam.cli":"ERROR"}]
${responseString} Convert To String ${response}
Append To File ${path}/OamApi_file.txt ${responseString}
Log ${response}
writeENDtime
2020-06-04 18:09:44 +08:00
${endtime} Get Time
Append To File ${path}/OamApi_file.txt ${endtime}!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!