Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
change name of flag from credential-param-name to credential-key-head…
…er-name
  • Loading branch information
iscai-msft committed Aug 4, 2020
commit 8e7799e0b0b2e5d16358b9ce7db98f39d15a2801
4 changes: 2 additions & 2 deletions ChangeLog.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ Modelerfour version: 4.15.378

- Add support for `x-ms-text` XML extension #722
- Allow users to pass the name of the key header for `AzureKeyCredentialPolicy` during generation. To use, pass in
`AzureKeyCredentialPolicy` with the `--credential-default-policcy-type` flag, and pass in the key header name using
the `--credential-param-name` flag #736
`AzureKeyCredentialPolicy` with the `--credential-default-policy-type` flag, and pass in the key header name using
the `--credential-key-header-name` flag #736

**Bug Fixes**

Expand Down
24 changes: 12 additions & 12 deletions autorest/codegen/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ def _get_credential_scopes(self, credential):

def _get_credential_param(self, azure_arm, credential, credential_default_policy_type):
credential_scopes = self._get_credential_scopes(credential)
credential_param_name = self._autorestapi.get_value('credential-param-name')
credential_key_header_name = self._autorestapi.get_value('credential-key-header-name')

if credential_default_policy_type == "BearerTokenCredentialPolicy":
if not credential_scopes:
Expand All @@ -154,10 +154,10 @@ def _get_credential_param(self, azure_arm, credential, credential_default_policy
"through kwargs if they want to authenticate."
)
credential_scopes = []
if credential_param_name:
if credential_key_header_name:
raise ValueError(
"You have passed in credential param name with default credential policy type "
"BearerTokenCredentialPolicy. This is not allowed, since credential param name is tied with "
"You have passed in a credential key header name with default credential policy type "
"BearerTokenCredentialPolicy. This is not allowed, since credential key header name is tied with "
"AzureKeyCredentialPolicy. Instead, with this policy it is recommend you pass in "
"--credential-scopes."
)
Expand All @@ -167,14 +167,14 @@ def _get_credential_param(self, azure_arm, credential, credential_default_policy
raise ValueError(
"You have passed in credential scopes with default credential policy type "
"AzureKeyCredentialPolicy. This is not allowed, since credential scopes is tied with "
"BearerTokenCredentialPolicy. Instead, with this policy you must pass in --credential-param-name."
"BearerTokenCredentialPolicy. Instead, with this policy you must pass in --credential-key-header-name."
)
if not credential_param_name:
if not credential_key_header_name:
raise ValueError(
"With default credential policy type AzureKeyCredentialPolicy, you must pass in the name "
"of the authentication header with the flag --credential-param-name"
"of the key header with the flag --credential-key-header-name"
)
return credential_scopes, credential_param_name
return credential_scopes, credential_key_header_name

def _handle_default_authentication_policy(self, azure_arm, credential):

Expand All @@ -194,11 +194,11 @@ def _handle_default_authentication_policy(self, azure_arm, credential):
"BearerTokenCredentialPolicy or AzureKeyCredentialPolicy"
)

credential_scopes, credential_param_name = self._get_credential_param(
credential_scopes, credential_key_header_name = self._get_credential_param(
azure_arm, credential, credential_default_policy_type
)

return credential_default_policy_type, credential_scopes, credential_param_name
return credential_default_policy_type, credential_scopes, credential_key_header_name


def _build_code_model_options(self) -> Dict[str, Any]:
Expand All @@ -210,7 +210,7 @@ def _build_code_model_options(self) -> Dict[str, Any]:
self._autorestapi.get_boolean_value("add-credential", False)
)

credential_default_policy_type, credential_scopes, credential_param_name = (
credential_default_policy_type, credential_scopes, credential_key_header_name = (
self._handle_default_authentication_policy(
azure_arm, credential
)
Expand All @@ -229,7 +229,7 @@ def _build_code_model_options(self) -> Dict[str, Any]:
"azure_arm": azure_arm,
"credential": credential,
"credential_scopes": credential_scopes,
"credential_param_name": credential_param_name,
"credential_key_header_name": credential_key_header_name,
"head_as_boolean": self._autorestapi.get_boolean_value("head-as-boolean", False),
"license_header": license_header,
"keep_version_file": self._autorestapi.get_boolean_value("keep-version-file", False),
Expand Down
2 changes: 1 addition & 1 deletion autorest/codegen/templates/config.py.jinja2
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,6 @@ class {{ code_model.class_name }}Configuration(Configuration):
{% endif %}
if self.credential and not self.authentication_policy:
{% set credential_default_policy_type = ("Async" if (async_mode and code_model.options['credential_default_policy_type_has_async_version']) else "") + code_model.options['credential_default_policy_type'] %}
{% set credential_param_type = ("'" + code_model.options['credential_param_name'] + "', ") if code_model.options['credential_param_name'] else ("*self.credential_scopes, " if "BearerTokenCredentialPolicy" in credential_default_policy_type else "") %}
{% set credential_param_type = ("'" + code_model.options['credential_key_header_name'] + "', ") if code_model.options['credential_key_header_name'] else ("*self.credential_scopes, " if "BearerTokenCredentialPolicy" in credential_default_policy_type else "") %}
self.authentication_policy = policies.{{ credential_default_policy_type }}(self.credential, {{ credential_param_type if credential_param_type }}**kwargs)
{% endif %}
2 changes: 1 addition & 1 deletion autorest/codegen/templates/metadata.json.jinja2
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
"credential_scopes": {{ code_model.options['credential_scopes'] | tojson }},
"credential_default_policy_type": {{ code_model.options['credential_default_policy_type'] | tojson }},
"credential_default_policy_type_has_async_version": {{ code_model.options['credential_default_policy_type_has_async_version'] | tojson }},
"credential_param_name": {{ code_model.options['credential_param_name'] | tojson }}
"credential_key_header_name": {{ code_model.options['credential_key_header_name'] | tojson }}
},
"operation_groups": {
{% for operation_group in code_model.operation_groups %}
Expand Down
2 changes: 1 addition & 1 deletion autorest/multiapi/templates/multiapi_config.py.jinja2
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,6 @@ class {{ client_name }}Configuration(Configuration):
{% endif %}
if self.credential and not self.authentication_policy:
{% set credential_default_policy_type = ("Async" if (async_mode and config['credential_default_policy_type_has_async_version']) else "") + config['credential_default_policy_type'] %}
{% set credential_param_type = ("'" + config['credential_param_name'] + "', ") if config['credential_param_name'] else ("*self.credential_scopes, " if "BearerTokenCredentialPolicy" in credential_default_policy_type else "") %}
{% set credential_param_type = ("'" + config['credential_key_header_name'] + "', ") if config['credential_key_header_name'] else ("*self.credential_scopes, " if "BearerTokenCredentialPolicy" in credential_default_policy_type else "") %}
self.authentication_policy = policies.{{ credential_default_policy_type }}(self.credential, {{ credential_param_type if credential_param_type }}**kwargs)
{% endif %}
6 changes: 3 additions & 3 deletions tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -149,8 +149,8 @@ def regen_expected(c, opts, debug):
args.append(f"--override-info.description={opts['override-info.description']}")
if opts.get('credential-default-policy-type'):
args.append(f"--credential-default-policy-type={opts['credential-default-policy-type']}")
if opts.get('credential-param-name'):
args.append(f"--credential-param-name={opts['credential-param-name']}")
if opts.get('credential-key-header-name'):
args.append(f"--credential-key-header-name={opts['credential-key-header-name']}")
if opts.get('package-name'):
args.append(f"--package-name={opts['package-name']}")
if opts.get('override-client-name'):
Expand Down Expand Up @@ -265,7 +265,7 @@ def regenerate_credential_default_policy(c, debug=False):
'flattening_threshold': '1',
'ns_prefix': True,
'credential-default-policy-type': 'AzureKeyCredentialPolicy',
'credential-param-name': 'Authorization'
'credential-key-header-name': 'Authorization'
}
regen_expected(c, opts, debug)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": ["https://management.azure.com/.default"],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": ["https://management.azure.com/.default"],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": ["https://management.azure.com/.default"],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": null,
"credential_default_policy_type": "AzureKeyCredentialPolicy",
"credential_default_policy_type_has_async_version": false,
"credential_param_name": "Authorization"
"credential_key_header_name": "Authorization"
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": null,
"credential_default_policy_type": "AzureKeyCredentialPolicy",
"credential_default_policy_type_has_async_version": false,
"credential_param_name": "Authorization"
"credential_key_header_name": "Authorization"
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": null,
"credential_default_policy_type": "AzureKeyCredentialPolicy",
"credential_default_policy_type_has_async_version": false,
"credential_param_name": "Authorization"
"credential_key_header_name": "Authorization"
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
"credential_scopes": [],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
"credential_scopes": [],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": [],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": [],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": [],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": ["https://management.azure.com/.default"],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": ["https://management.azure.com/.default"],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": ["https://management.azure.com/.default"],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": ["https://management.azure.com/.default"],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": ["https://management.azure.com/.default"],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"credential_scopes": ["https://management.azure.com/.default"],
"credential_default_policy_type": "BearerTokenCredentialPolicy",
"credential_default_policy_type_has_async_version": true,
"credential_param_name": null
"credential_key_header_name": null
},
"operation_groups": {
"operation_group_one": "OperationGroupOneOperations",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ license-header: MICROSOFT_MIT_NO_VERSION
azure-arm: true
add-credentials: true
credential-default-policy-type: AzureKeyCredentialPolicy
credential-param-name: Authorization
credential-key-header-name: Authorization
```

``` yaml $(multiapi)
Expand Down