c7n.resolver module¶
-
class
c7n.resolver.
ValuesFrom
(data, manager)[source]¶ Bases:
object
Retrieve values from a url.
Supports json, csv and line delimited text files and expressions to retrieve a subset of values.
Expression syntax - on json, a jmespath expr is evaluated - on csv, an integer column or jmespath expr can be specified - on csv2dict, a jmespath expr (the csv is parsed into a dictionary where the keys are the headers and the values are the remaining columns)
Text files are expected to be line delimited values.
Examples:
value_from: url: s3://bucket/xyz/foo.json expr: [].AppId values_from: url: http://foobar.com/mydata format: json expr: Region."us-east-1"[].ImageId value_from: url: s3://bucket/abc/foo.csv format: csv2dict expr: key[1] # inferred from extension format: [json, csv, csv2dict, txt]
-
schema
= {'additionalProperties': 'False', 'properties': {'expr': {'oneOf': [{'type': 'integer'}, {'type': 'string'}]}, 'format': {'enum': ['csv', 'json', 'txt', 'csv2dict']}, 'url': {'type': 'string'}}, 'required': ['url'], 'type': 'object'}¶
-
supported_formats
= ('json', 'txt', 'csv', 'csv2dict')¶
-