in src/azure-cli/azure/cli/command_modules/cdn/custom/custom_rule_util.py [0:0]
def create_actions_from_existing(existing_actions):
parsed_actions = []
for action in existing_actions:
name = action['name']
para = action['parameters']
if name == 'CacheExpiration':
parsed_actions.append(create_action(name, cache_behavior=para['cacheBehavior']
if 'cacheBehavior' in para else None,
cache_duration=para['cacheDuration']
if 'cacheDuration' in para else None))
if name == 'ModifyRequestHeader':
parsed_actions.append(create_action(name, header_action=para['headerAction']
if 'headerAction' in para else None,
header_name=para['headerName']
if 'headerName' in para else None,
header_value=para['value']
if 'value' in para else None))
if name == 'ModifyResponseHeader':
parsed_actions.append(create_action(name, header_action=para['headerAction']
if 'headerAction' in para else None,
header_name=para['headerName']
if 'headerName' in para else None,
header_value=para['value']
if 'value' in para else None))
if name == 'CacheKeyQueryString':
parsed_actions.append(create_action(name, query_string_behavior=para['queryStringBehavior']
if 'queryStringBehavior' in para else None,
query_parameters=para['queryParameters']
if 'queryParameters' in para else None))
if name == 'UrlRedirect':
parsed_actions.append(create_action(name, custom_fragment=para['customFragment']
if 'customFragment' in para else None,
custom_hostname=para['customHostname']
if 'customHostname' in para else None,
custom_path=para['customPath']
if 'customPath' in para else None,
custom_querystring=para['customQueryString']
if 'customQueryString' in para else None,
redirect_protocol=para['destinationProtocol']
if 'destinationProtocol' in para else None,
redirect_type=para['redirectType']
if 'redirectType' in para else None))
if name == 'UrlRewrite':
parsed_actions.append(create_action(name, destination=para['destination']
if 'destination' in para else None,
preserve_unmatched_path=para['preserveUnmatchedPath']
if 'preserveUnmatchedPath' in para else None,
source_pattern=para['sourcePattern']
if 'sourcePattern' in para else None))
if name == 'OriginGroupOverride':
parsed_actions.append(create_action(name, origin_group=para['originGroup']['id']
if 'originGroup' in para else None))
if name == 'RouteConfigurationOverride':
enable_caching = False
if 'cacheConfiguration' in para:
enable_caching = True
parsed_actions.append(create_action(name,
origin_group=para['originGroupOverride']['originGroup']['id']
if 'originGroupOverride' in para and
'originGroup' in para['originGroupOverride']['originGroup']
else None,
forwarding_protocol=para['originGroupOverride']['forwardingProtocol']
if 'originGroupOverride' in para and
'forwardingProtocol' in para['originGroupOverride']
else None,
query_string_caching_behavior=para
['cacheConfiguration']['queryStringCachingBehavior']
if 'cacheConfiguration' in para and
'queryStringCachingBehavior' in para['cacheConfiguration']
else None,
query_parameters=para['cacheConfiguration']['queryParameters']
if 'cacheConfiguration' in para and
'queryParameters' in para['cacheConfiguration']
else None,
cache_behavior=para['cacheConfiguration']['cacheBehavior']
if 'cacheConfiguration' in para and
'cacheBehavior' in para['cacheConfiguration']
else None,
cache_duration=para['cacheConfiguration']['cacheDuration']
if 'cacheConfiguration' in para and
'cacheDuration' in para['cacheConfiguration']
else None,
enable_compression=True
if 'cacheConfiguration' in para and
'isCompressionEnabled' in para['cacheConfiguration'] and
para['cacheConfiguration']['isCompressionEnabled'] ==
RuleIsCompressionEnabled.ENABLED.value
else False,
enable_caching=enable_caching))
if len(parsed_actions) == 0:
return []
return parsed_actions