Maison > Questions et réponses > le corps du texte
/usr/local/lib/ruby/gems/2.1.0/gems/json-2.1.0/lib/json/common.rb:156:in `parse' : 765 : jeton inattendu à l'argument 'decode() 1 doit être une chaîne, pas None (JSON::ParserError)
ruby xxx.rb peut être exécuté normalement dans le terminal, mais cette erreur est affichée lorsque la page jenkins exécute le shell. Le code Ruby est le suivant :
#!/usr/bin/env ruby
require 'json'
cmd = "/usr/local/bin/aliyuncli ecs DescribeInstances --output json --PageSize 50 - -RegionId "
RegionIds = ["cn-hangzhou","cn-qingdao","cn-beijing","cn-hongkong","cn-shenzhen","us-west-1"]
RegionIds. chacun fait |regionid|
data = `#{cmd} #{regionid}`
data = JSON.parse(data)
data["Instances"]["Instance"].each {|instance| ["RegionId"] ," ",instance["InstanceName"]," ",instance["PublicIpAddress"]["IpAddress"][0]," ",instance["InnerIpAddress"]["IpAddress"][0 ],"n" }
#puts data
end