Ruby-Double quotes are missing when running shell script

I have some json created from some data I send out and when I pass the json stored in a variable to another script ( created in python) I noticed that json elements are no longer double quotes

json = @report.resultReportToJSON(result_type, result, unit)
puts "#{json}"
`"python ./ --json '#{json}'"`

My output is like this. From the puts it is :


and the command that gets executed ( we have some logging that outputs the command) is --relative_path '/api/benchmark/' --json '{test_name:Launch,requester:foo,device_serial:1234}'

You can noticed the double quotes are gone

try this:

require 'json'
`"python ./ --json '#{json.to_json}'"`

This will help to ensure the object is serialized with escaped quotes when translated to a system command.