github.com/vmware/govmomi@v0.43.0/govc/test/alarms.bats (about) 1 #!/usr/bin/env bats 2 3 load test_helper 4 5 @test "alarms" { 6 vcsim_env 7 8 run govc alarms 9 assert_success 10 11 run govc alarms -d 12 assert_success 13 14 vm=/DC0/vm/DC0_H0_VM0 15 16 run govc alarms $vm 17 assert_success 18 19 run govc object.collect -s $vm triggeredAlarmState 20 assert_success "" # empty 21 22 run env GOVC_SHOW_UNRELEASED=true govc event.post -s info -i vcsim.vm.success $vm 23 assert_success 24 25 run govc alarms $vm 26 assert_success 27 [ ${#lines[@]} -eq 1 ] # header only, no alarm triggered 28 29 run env GOVC_SHOW_UNRELEASED=true govc event.post -s warning -i vcsim.vm.failure $vm 30 assert_success 31 32 run govc alarms $vm 33 assert_success 34 assert_matches "Warning" 35 36 run govc alarms -l $vm 37 assert_success 38 39 run govc alarms -json $vm 40 assert_success 41 alarms="$output" 42 run jq -r .[].event.eventTypeId <<<"$alarms" 43 assert_success "vcsim.vm.failure" 44 45 run govc object.collect -json -s $vm triggeredAlarmState 46 assert_success 47 state="$output" 48 run jq -r .[].overallStatus <<<"$state" 49 assert_success "yellow" 50 run jq -r .[].acknowledged <<<"$state" 51 assert_success "false" 52 53 run govc alarms -ack 54 assert_success 55 56 run govc object.collect -json -s $vm triggeredAlarmState 57 assert_success 58 state="$output" 59 run jq -r .[].overallStatus <<<"$state" 60 assert_success "yellow" 61 run jq -r .[].acknowledged <<<"$state" 62 assert_success "true" 63 64 run env GOVC_SHOW_UNRELEASED=true govc event.post -s info -i vcsim.vm.success $vm 65 assert_success 66 67 run govc object.collect -s $vm triggeredAlarmState 68 assert_success "" # empty 69 70 run govc object.collect -s / triggeredAlarmState 71 assert_success "" # empty 72 } 73 74 @test "alarm.info" { 75 vcsim_env 76 77 run govc alarm.info 78 assert_success 79 80 run govc alarm.info -n alarm.VmErrorAlarm 81 assert_success 82 assert_matches "Virtual machine error" 83 84 run govc alarm.info -n invalid 85 assert_success "" 86 } 87 88 @test "alarm -esx" { 89 vcsim_env -esx 90 91 run govc object.collect -s - content.alarmManager 92 assert_success "" # empty, no AlarmManager 93 94 run govc alarm.info 95 assert_failure # not supported 96 } 97 98 @test "alarm.create" { 99 vcsim_env 100 101 export GOVC_SHOW_UNRELEASED=true 102 103 run govc alarm.create -n "My Alarm" -green my.alarm.success -yellow my.alarm.failure 104 assert_success 105 id="$output" 106 107 self=$(govc alarm.info -json -n "My Alarm" | jq -r .[].self.value) 108 assert_equal "$id" "$self" 109 110 run govc alarm.info -n "My Alarm" 111 assert_success 112 113 run govc alarm.create -n "My Alarm" 114 assert_failure # DuplicateName 115 116 run govc alarm.create -n "My Alarm" -r -d "This is my alarm description" 117 assert_success 118 119 run govc alarm.rm "$id" 120 assert_success 121 122 run govc alarm.rm "$id" 123 assert_failure 124 125 run govc alarm.info -n "My Alarm" 126 assert_success "" 127 }