I am having the following problem of mapping documents within a YAML file to a dict
and properly mapping them.
I have the following YAML file, which represents a server (db.yml
):
instanceId: i-aaaaaaaa environment:us-east serverId:someServer awsHostname:ip-someip serverName:somewebsite.com ipAddr:192.168.0.1 roles:[webserver,php]
I load this YAML file, which I can do without any problems, I think I understand that.
instanceId = getInstanceId() stream = file('db.yml', 'r') dict = yaml.load_all(stream) for key in dict: if key in dict == "instanceId": print key, dict[key]
I'd like the logic to work like the following:
instanceId
matches that which was set by getInstanceId()
, then print out all of the keys and values for that document.If I look at the map data structure from the command line, I get:
{'instanceId': 'i-aaaaaaaa environment:us-east serverId:someServer awsHostname:ip-someip serverName:someserver ipAddr:192.168.0.1 roles:[webserver,php]'}
I think I might be creating the data structure for the YAML file improperly, and on matching the contents on the dict
, I am a bit lost.
Side note: I cannot load all of the documents in this file using yaml.load()
, I tried yaml.load_all()
, which seems to work but my main issue still exists.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With