in tools/genconfig/genconfig.py [0:0]
def scrub_properties(orig_props):
"""Scrubs fields in API object properties for use in DM properties.
Scrubbed fields include:
- output-only fields common for most resources
- output-only fields specific to a particular resource type
Args:
orig_props: the resource properties that need to be scrubbed
Returns:
The final scrubbed resource properties.
"""
props = deepcopy(orig_props)
# Scrub output-only and unnecessary fields that we know about.
props.pop('name', None)
props.pop('id', None)
props.pop('creationTimestamp', None)
props.pop('status', None)
props.pop('selfLink', None)
# Some fields are at multiple layers and need to be scrubbed recursively.
scrub_sub_properties(props)
# Scrub fields that some types return.
scrub_type_specific_properties(props)
# Location is always returned as a full resource URL, but only the name is
# used on input.
if 'zone' in props:
props['zone'] = props['zone'].rsplit('/', 1)[1]
if 'region' in props:
props['region'] = props['region'].rsplit('/', 1)[1]
return props