Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Azure modules need support for left/right single quotes #67358

Closed
Sneedes opened this issue Feb 12, 2020 · 11 comments
Closed

Azure modules need support for left/right single quotes #67358

Sneedes opened this issue Feb 12, 2020 · 11 comments
Labels
affects_2.10 This issue/PR affects Ansible v2.10 azure bot_closed bug This issue/PR relates to a bug. cloud collection:azure.azcollection collection Related to Ansible Collections work module This issue/PR relates to a module. needs_collection_redirect https://github.com/ansible/ansibullbot/blob/master/docs/collection_migration.md support:community This issue/PR relates to code supported by the Ansible community. traceback This issue/PR includes a traceback.

Comments

@Sneedes
Copy link

Sneedes commented Feb 12, 2020

SUMMARY

Utilizing the azure_rm_virtualmachine module.
Receive the following error from Ansible in the stderr:
UnicodeEncodeError: 'ascii' codec can't encode character u'\\\\u2018' in position 596: ordinal not in range(128)\\n

Noting that the actual Azure error message reported is believed to be along the lines of:
Operation could not be completed as it results in exceeding approved Total Regional Cores quota. Additional details - Deployment Model: Resource Manager, Location: eastus, Current Limit: 350, Current Usage: 346, Additional Required: 8, (Minimum) New Limit Required: 354. Submit a request for Quota increase at https://aka.ms/ProdportalCRP/?#create/Microsoft.Support/Parameters/%7B%22subId%22:%222b66c83b-5e20-4ee0-a2e2-4ba091559f95%22,%22pesId%22:%2206bfd9d3-516b-d5c6-5802-169c800dec89%22,%22supportTopicId%22:%22e12e3d1d-7fa0-af33-c6d0-3c50df9658a3%22%7D by specifying parameters listed in the ‘Details’ section for deployment to succeed. Please read more about quota limits at https://docs.microsoft.com/en-us/azure/azure-supportability/regional-quota-requests.

Note that the error message from Azure includes left/right single quotes (hex U+2018 and U+2019). The fancy quotes are around the word Details in the 2nd to last sentence.

ISSUE TYPE
  • Bug Report
COMPONENT NAME

azure_rm_virtualmachine module
Suspect this could apply to any/all Azure modules.

ANSIBLE VERSION
ansible 2.10.0.dev0
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /opt/ansible/azure-20200212/lib/python2.7/site-packages/ansible
  executable location = /opt/ansible/azure-20200212/bin/ansible
  python version = 2.7.5 (default, Jun 11 2019, 14:33:56) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)]
CONFIGURATION

No changes/default config.

OS / ENVIRONMENT

Ansible Tower ; RHEL 7.7 control nodes.
Azure Cloud Module(s)

STEPS TO REPRODUCE

In my case, used azure_rm_virtualmachine to create an Azure VM. The Azure Subscription had quotas in place that prevented the VM from being created. Azure believed to generate an error message to be read by Ansible. However, the Azure message/output contains unicode punctuation (left-quote and right-quote; u2018 and u02019).

These left-quote and right-quote characters result in the UnicodeEncodeError: 'ascii' codec can't encode character reported by Ansible.

EXPECTED RESULTS

Expect that Azure error messages be reported via Ansible modules. Expect to not need to obtain a nonsensical/ASCII error, then navigate to Azure to determine the actual error.

ACTUAL RESULTS
TASK [azure_provision_linux_vm : Create Azure VM azrs95056] ********************
task path: /var/lib/awx/projects/_273__azure_provision_linux_vm/roles/azure_provision_linux_vm/tasks/main.yml:95
�[

<127.0.0.1> ESTABLISH LOCAL CONNECTION FOR USER: awx
�[
<127.0.0.1> EXEC /bin/sh -c 'echo ~awx && sleep 0'
�[
<127.0.0.1> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879 `" && echo ansible-tmp-1581531670.25-176907752234879="` echo /var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879 `" ) && sleep 0'
�[
Using module file /opt/ansible/azure-20200212/lib/python2.7/site-packages/ansible/modules/cloud/azure/azure_rm_virtualmachine.py
�[
<127.0.0.1> PUT /var/lib/awx/.ansible/tmp/ansible-local-7JRYNDn/tmppZnixX TO /var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879/AnsiballZ_azure_rm_virtualmachine.py
�[
<127.0.0.1> EXEC /bin/sh -c 'chmod u+x /var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879/ /var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879/AnsiballZ_azure_rm_virtualmachine.py && sleep 0'
�[
<127.0.0.1> EXEC /bin/sh -c '/opt/ansible/azure-20200212/bin/python /var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879/AnsiballZ_azure_rm_virtualmachine.py && sleep 0'
�[
<127.0.0.1> EXEC /bin/sh -c 'rm -f -r /var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879/ > /dev/null 2>&1 && sleep 0'
�[
The full traceback is:
Traceback (most recent call last):
  File "/var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879/AnsiballZ_azure_rm_virtualmachine.py", line 102, in <module>
    _ansiballz_main()
  File "/var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879/AnsiballZ_azure_rm_virtualmachine.py", line 94, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File "/var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879/AnsiballZ_azure_rm_virtualmachine.py", line 40, in invoke_module
    runpy.run_module(mod_name='ansible.modules.cloud.azure.azure_rm_virtualmachine', init_globals=None, run_name='__main__', alter_sys=True)
  File "/usr/lib64/python2.7/runpy.py", line 176, in run_module
    fname, loader, pkg_name)
  File "/usr/lib64/python2.7/runpy.py", line 82, in _run_module_code
    mod_name, mod_fname, mod_loader, pkg_name)
  File "/usr/lib64/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py", line 2203, in <module>
  File "/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py", line 2199, in main
  File "/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py", line 899, in __init__
  File "/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/module_utils/azure_rm_common.py", line 417, in __init__
  File "/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py", line 1440, in exec_module
  File "/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py", line 1970, in create_or_update_vm
  File "/opt/ansible/azure-20200212/lib/python2.7/site-packages/msrestazure/azure_exceptions.py", line 193, in __str__
    return str(self.error)
  File "/opt/ansible/azure-20200212/lib/python2.7/site-packages/msrestazure/azure_exceptions.py", line 89, in __str__
    error_str += "\\nMessage: {}".format(self._message)
UnicodeEncodeError: 'ascii' codec can't encode character u'\\u2018' in position 596: ordinal not in range(128)
fatal: [localhost]: FAILED! => {
    "changed": false, 
    "module_stderr": "Traceback (most recent call last):\\n  File \\"/var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879/AnsiballZ_azure_rm_virtualmachine.py\\", line 102, in <module>\\n    _ansiballz_main()\\n  File \\"/var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879/AnsiballZ_azure_rm_virtualmachine.py\\", line 94, in _ansiballz_main\\n    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\\n  File \\"/var/lib/awx/.ansible/tmp/ansible-tmp-1581531670.25-176907752234879/AnsiballZ_azure_rm_virtualmachine.py\\", line 40, in invoke_module\\n    runpy.run_module(mod_name='ansible.modules.cloud.azure.azure_rm_virtualmachine', init_globals=None, run_name='__main__', alter_sys=True)\\n  File \\"/usr/lib64/python2.7/runpy.py\\", line 176, in run_module\\n    fname, loader, pkg_name)\\n  File \\"/usr/lib64/python2.7/runpy.py\\", line 82, in _run_module_code\\n    mod_name, mod_fname, mod_loader, pkg_name)\\n  File \\"/usr/lib64/python2.7/runpy.py\\", line 72, in _run_code\\n    exec code in run_globals\\n  File \\"/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py\\", line 2203, in <module>\\n  File \\"/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py\\", line 2199, in main\\n  File \\"/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py\\", line 899, in __init__\\n  File \\"/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/module_utils/azure_rm_common.py\\", line 417, in __init__\\n  File \\"/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py\\", line 1440, in exec_module\\n  File \\"/tmp/ansible_azure_rm_virtualmachine_payload_qkU1Tx/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py\\", line 1970, in create_or_update_vm\\n  File \\"/opt/ansible/azure-20200212/lib/python2.7/site-packages/msrestazure/azure_exceptions.py\\", line 193, in __str__\\n    return str(self.error)\\n  File \\"/opt/ansible/azure-20200212/lib/python2.7/site-packages/msrestazure/azure_exceptions.py\\", line 89, in __str__\\n    error_str += \\"\\\\nMessage: {}\\".format(self._message)\\n
	UnicodeEncodeError: 'ascii' codec can't encode character u'\\\\u2018' in position 596: ordinal not in range(128)\\n", 
    "module_stdout": "", 
    "msg": "MODULE FAILURE\\nSee stdout/stderr for the exact error", 
    "rc": 1
}
�[

@ansibot
Copy link
Contributor

ansibot commented Feb 12, 2020

Files identified in the description:

If these files are inaccurate, please update the component name section of the description or use the !component bot command.

click here for bot help

@ansibot
Copy link
Contributor

ansibot commented Feb 12, 2020

@Sneedes, just so you are aware we have a dedicated Working Group for azure.
You can find other people interested in this in #ansible-azure on Freenode IRC
For more information about communities, meetings and agendas see https://github.com/ansible/community

click here for bot help

@ansibot ansibot added affects_2.10 This issue/PR affects Ansible v2.10 azure bug This issue/PR relates to a bug. cloud module This issue/PR relates to a module. needs_triage Needs a first human triage before being processed. support:community This issue/PR relates to code supported by the Ansible community. traceback This issue/PR includes a traceback. labels Feb 12, 2020
@Fred-sun
Copy link
Contributor

@sNeeds Thank you for taking the time to report this problem. Could you share your playbook (test case)? I will retest and it will be very helpful to solve this problem, thank you!

@Sneedes
Copy link
Author

Sneedes commented Feb 24, 2020

At the moment, I cannot re-test/confirm this issue. The subscription/resource groups that I have access to now all have currently all have sufficiently sized quotas for Total Regional vCPUs and Standard DSv2 Family vCPUs. These quotas were increased once we found the root cause to failed Azure VM deployments from Ansible.

In order to test/confirm, one would need to attempt to provision a new VM via the azure_rm_virtualmachine module that exceeds either the Total Regional vCPUs or Standard DSv2 Family vCPUs values. I do not have the access/rights to setup a new subscription/resource group with a very small quota where I could easily exceed the Azure quotas.

Azure Portal > Select Desired Subscription > Usage + Quotas > Provider = Microsoft.Compute

The error messages / output / return codes from Azure contain smart quotes.
Note the difference between:
“smart/non-ascii quotes”
"ascii quotes"

These non-ASCII characters cause the Ansible module to fail unexpectedly.

An example snippet of Ansible to provision a VM would be something along the lines of:

- name: "Create Azure VM {{ my_vm_name | lower }}"
  azure_rm_virtualmachine:
    name: "{{ my_vm_name | lower }}"
    resource_group: "{{ my_vm_rg }}"
    vm_size: "{{ my_vm_size }}"
    managed_disk_type: "{{ my_vm_os_disk_type }}"
    admin_username: "{{ my_vm_admin_username }}"
    ssh_password_enabled: no
    ssh_public_keys:
      - path: "/home/{{ my_vm_admin_username }}/.ssh/authorized_keys"
        key_data: "{{ my_vm_admin_ssh_key }}"
    network_interface_names: "{{ my_vm_name | lower }}-nic1"
    os_disk_size_gb: "{{ my_vm_os_disk_size_gb | default(omit) }}"
    image: "{{ my_vm_image }}"
    plan: "{{ my_vm_plan | default(omit) }}"
    availability_set: "{{ my_vm_availability_set | default(omit) }}"

@Sneedes
Copy link
Author

Sneedes commented Feb 24, 2020

I suspect this will hit every Azure module, not just the azure_rm_virtualmachine module.

Azure error messages don't appear to have any guarantee to only contain ASCII characters in the output/error messages.

@aboubeta
Copy link

aboubeta commented Mar 7, 2020

Hi, same problem here.

When I reach the quota:

The full traceback is: Traceback (most recent call last): File "/home/boube/.ansible/tmp/ansible-tmp-1583623421.28-97292350591788/AnsiballZ_azure_rm_virtualmachine.py", line 102, in <module> _ansiballz_main() File "/home/boube/.ansible/tmp/ansible-tmp-1583623421.28-97292350591788/AnsiballZ_azure_rm_virtualmachine.py", line 94, in _ansiballz_main invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS) File "/home/boube/.ansible/tmp/ansible-tmp-1583623421.28-97292350591788/AnsiballZ_azure_rm_virtualmachine.py", line 40, in invoke_module runpy.run_module(mod_name='ansible.modules.cloud.azure.azure_rm_virtualmachine', init_globals=None, run_name='__main__', alter_sys=True) File "/usr/lib/python2.7/runpy.py", line 188, in run_module fname, loader, pkg_name) File "/usr/lib/python2.7/runpy.py", line 82, in _run_module_code mod_name, mod_fname, mod_loader, pkg_name) File "/usr/lib/python2.7/runpy.py", line 72, in _run_code exec code in run_globals File "/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py", line 2202, in <module> File "/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py", line 2198, in main File "/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py", line 901, in __init__ File "/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/module_utils/azure_rm_common.py", line 348, in __init__ File "/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py", line 1439, in exec_module File "/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py", line 1969, in create_or_update_vm File "/home/boube/.local/lib/python2.7/site-packages/msrestazure/azure_exceptions.py", line 180, in __str__ return str(self.error) File "/home/boube/.local/lib/python2.7/site-packages/msrestazure/azure_exceptions.py", line 76, in __str__ error_str += "\nMessage: {}".format(self._message) UnicodeEncodeError: 'ascii' codec can't encode character u'\u2018' in position 594: ordinal not in range(128) failed: [localhost] (item=mongothree) => { "ansible_loop_var": "item", "changed": false, "item": "mongothree", "module_stderr": "Traceback (most recent call last):\n File \"/home/boube/.ansible/tmp/ansible-tmp-1583623421.28-97292350591788/AnsiballZ_azure_rm_virtualmachine.py\", line 102, in <module>\n _ansiballz_main()\n File \"/home/boube/.ansible/tmp/ansible-tmp-1583623421.28-97292350591788/AnsiballZ_azure_rm_virtualmachine.py\", line 94, in _ansiballz_main\n invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n File \"/home/boube/.ansible/tmp/ansible-tmp-1583623421.28-97292350591788/AnsiballZ_azure_rm_virtualmachine.py\", line 40, in invoke_module\n runpy.run_module(mod_name='ansible.modules.cloud.azure.azure_rm_virtualmachine', init_globals=None, run_name='__main__', alter_sys=True)\n File \"/usr/lib/python2.7/runpy.py\", line 188, in run_module\n fname, loader, pkg_name)\n File \"/usr/lib/python2.7/runpy.py\", line 82, in _run_module_code\n mod_name, mod_fname, mod_loader, pkg_name)\n File \"/usr/lib/python2.7/runpy.py\", line 72, in _run_code\n exec code in run_globals\n File \"/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py\", line 2202, in <module>\n File \"/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py\", line 2198, in main\n File \"/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py\", line 901, in __init__\n File \"/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/module_utils/azure_rm_common.py\", line 348, in __init__\n File \"/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py\", line 1439, in exec_module\n File \"/tmp/ansible_azure_rm_virtualmachine_payload_3KXsEP/ansible_azure_rm_virtualmachine_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachine.py\", line 1969, in create_or_update_vm\n File \"/home/boube/.local/lib/python2.7/site-packages/msrestazure/azure_exceptions.py\", line 180, in __str__\n return str(self.error)\n File \"/home/boube/.local/lib/python2.7/site-packages/msrestazure/azure_exceptions.py\", line 76, in __str__\n error_str += \"\\nMessage: {}\".format(self._message)\nUnicodeEncodeError: 'ascii' codec can't encode character u'\\u2018' in position 594: ordinal not in range(128)\n", "module_stdout": "", "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", "rc": 1 }

@Fred-sun
Copy link
Contributor

Fred-sun commented Mar 9, 2020

@haiyuazhang Can you help me with this problem when you are free? I tried to find the reason, but I couldn't. Thank you very much!

@Fred-sun
Copy link
Contributor

@Sneedes Thank you very much for your interest in Ansible. This repo is no longer maintained in this repository and has been migrated to https://github.com/ansible-collections/azure
Please re-submit this issue in the above repository and closed this. Thank you very much!

@johnpetersjr
Copy link

johnpetersjr commented Jul 22, 2020

I was able to reproduce this problem using the scale set module - if you try and spin up 3 or 4 of these scale sets in an Azure Subscription, you'll probably hit the quota issue...

- name: Create VMSS
  azure_rm_virtualmachinescaleset:
    resource_group: myResourceGroup
    name: testvmss
    vm_size: Standard_DS1_v2
    capacity: 2
    virtual_network_name: testvnet
    upgrade_policy: Manual
    subnet_name: testsubnet
    admin_username: adminUser
    admin_password: 12345adminUserry34gdsgsh
    ssh_password_enabled: true
    managed_disk_type: Standard_LRS
    image:
      offer: CoreOS
      publisher: CoreOS
      sku: Stable
      version: latest
    data_disks:
      - lun: 0
        disk_size_gb: 64
        caching: ReadWrite
        managed_disk_type: Standard_LRS

The full traceback is:

Traceback (most recent call last):
  File "/Users/johnpetersjr/.ansible/tmp/ansible-tmp-1595392942.44-30283-190992013497038/AnsiballZ_azure_rm_virtualmachinescaleset.py", line 102, in <module>
    _ansiballz_main()
  File "/Users/johnpetersjr/.ansible/tmp/ansible-tmp-1595392942.44-30283-190992013497038/AnsiballZ_azure_rm_virtualmachinescaleset.py", line 94, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File "/Users/johnpetersjr/.ansible/tmp/ansible-tmp-1595392942.44-30283-190992013497038/AnsiballZ_azure_rm_virtualmachinescaleset.py", line 40, in invoke_module
    runpy.run_module(mod_name='ansible.modules.cloud.azure.azure_rm_virtualmachinescaleset', init_globals=None, run_name='__main__', alter_sys=True)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 188, in run_module
    fname, loader, pkg_name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 82, in _run_module_code
    mod_name, mod_fname, mod_loader, pkg_name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachinescaleset.py", line 1070, in <module>
  File "/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachinescaleset.py", line 1066, in main
  File "/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachinescaleset.py", line 507, in __init__
  File "/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/module_utils/azure_rm_common.py", line 348, in __init__
  File "/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachinescaleset.py", line 856, in exec_module
  File "/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachinescaleset.py", line 1033, in create_or_update_vmss
  File "/Users/johnpetersjr/Library/Python/2.7/lib/python/site-packages/msrestazure/azure_exceptions.py", line 180, in __str__
    return str(self.error)
  File "/Users/johnpetersjr/Library/Python/2.7/lib/python/site-packages/msrestazure/azure_exceptions.py", line 76, in __str__
    error_str += "\nMessage: {}".format(self._message)
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2018' in position 593: ordinal not in range(128)
fatal: [localhost]: FAILED! => {
    "changed": false, 
    "module_stderr": "Traceback (most recent call last):\n  File \"/Users/johnpetersjr/.ansible/tmp/ansible-tmp-1595392942.44-30283-190992013497038/AnsiballZ_azure_rm_virtualmachinescaleset.py\", line 102, in <module>\n    _ansiballz_main()\n  File \"/Users/johnpetersjr/.ansible/tmp/ansible-tmp-1595392942.44-30283-190992013497038/AnsiballZ_azure_rm_virtualmachinescaleset.py\", line 94, in _ansiballz_main\n    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n  File \"/Users/johnpetersjr/.ansible/tmp/ansible-tmp-1595392942.44-30283-190992013497038/AnsiballZ_azure_rm_virtualmachinescaleset.py\", line 40, in invoke_module\n    runpy.run_module(mod_name='ansible.modules.cloud.azure.azure_rm_virtualmachinescaleset', init_globals=None, run_name='__main__', alter_sys=True)\n  File \"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py\", line 188, in run_module\n    fname, loader, pkg_name)\n  File \"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py\", line 82, in _run_module_code\n    mod_name, mod_fname, mod_loader, pkg_name)\n  File \"/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py\", line 72, in _run_code\n    exec code in run_globals\n  File \"/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachinescaleset.py\", line 1070, in <module>\n  File \"/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachinescaleset.py\", line 1066, in main\n  File \"/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachinescaleset.py\", line 507, in __init__\n  File \"/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/module_utils/azure_rm_common.py\", line 348, in __init__\n  File \"/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachinescaleset.py\", line 856, in exec_module\n  File \"/var/folders/nr/0k1j_bhj1kb3xq18qb6b0c2r0000gn/T/ansible_azure_rm_virtualmachinescaleset_payload_KLq_lS/ansible_azure_rm_virtualmachinescaleset_payload.zip/ansible/modules/cloud/azure/azure_rm_virtualmachinescaleset.py\", line 1033, in create_or_update_vmss\n  File \"/Users/johnpetersjr/Library/Python/2.7/lib/python/site-packages/msrestazure/azure_exceptions.py\", line 180, in __str__\n    return str(self.error)\n  File \"/Users/johnpetersjr/Library/Python/2.7/lib/python/site-packages/msrestazure/azure_exceptions.py\", line 76, in __str__\n    error_str += \"\\nMessage: {}\".format(self._message)\nUnicodeEncodeError: 'ascii' codec can't encode character u'\\u2018' in position 593: ordinal not in range(128)\n", 
    "module_stdout": "", 
    "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error", 
    "rc": 1
}

Running this command from cli:
az vmss create --resource-group MyResGrp
--name myScaleSet
--image UbuntuLTS
--upgrade-policy-mode automatic
--admin-username azureuser
--generate-ssh-keys

I get this response:

Azure Error: InvalidTemplateDeployment
Message: The template deployment 'vmss_deploy_sxD8Qn7kCx2DznVdeo2vaCOaF0H8Jops' is not valid according to the validation procedure. The tracking id is '482f8598-b9b8-YOINK-dNAHyoudONTNEEdTHIS'. See inner errors for details.
Exception Details:
	Error Code: QuotaExceeded
	Message: Operation could not be completed as it results in exceeding approved Total Regional Cores quota. Additional details - Deployment Model: Resource Manager, Location: eastus, Current Limit: 10, Current Usage: 9, Additional Required: 2, (Minimum) New Limit Required: 11. Submit a request for Quota increase at https://aka.ms/ProdportalCRP/?#create/Microsoft.Support/Parameters/%7B%22subId%22:%226414e2e3-3077-4bd3-876e-14a2a4d15618%22,%22pesId%22:%2206bfd9d3-516b-d5c6-5802-169c800dec89%22,%22supportTopicId%22:%22e12e3d1d-7fa0-af33-c6d0-3c50df9658a3%22%7D by specifying parameters listed in the ‘Details’ section for deployment to succeed. Please read more about quota limits at https://docs.microsoft.com/en-us/azure/azure-supportability/regional-quota-requests.
Azure Error: QuotaExceeded
Message: Operation could not be completed as it results in exceeding approved Total Regional Cores quota. Additional details - Deployment Model: Resource Manager, Location: eastus, Current Limit: 10, Current Usage: 9, Additional Required: 2, (Minimum) New Limit Required: 11. Submit a request for Quota increase at https://aka.ms/ProdportalCRP/?#create/Microsoft.Support/Parameters/%7B%22subId%22:%226414e2e3-3077-4bd3-876e-14a2a4d15618%22,%22pesId%22:%2206bfd9d3-516b-d5c6-5802-169c800dec89%22,%22supportTopicId%22:%22e12e3d1d-7fa0-af33-c6d0-3c50df9658a3%22%7D by specifying parameters listed in the ‘Details’ section for deployment to succeed. Please read more about quota limits at https://docs.microsoft.com/en-us/azure/azure-supportability/regional-quota-requests.

@ansibot
Copy link
Contributor

ansibot commented Aug 15, 2020

Thank you very much for your interest in Ansible. Ansible has migrated much of the content into separate repositories to allow for more rapid, independent development. We are closing this issue/PR because this content has been moved to one or more collection repositories.

For further information, please see:
https://github.com/ansible/ansibullbot/blob/master/docs/collection_migration.md

@ansibot ansibot closed this as completed Aug 15, 2020
@sivel sivel removed the needs_triage Needs a first human triage before being processed. label Aug 17, 2020
@ansible ansible locked and limited conversation to collaborators Sep 12, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
affects_2.10 This issue/PR affects Ansible v2.10 azure bot_closed bug This issue/PR relates to a bug. cloud collection:azure.azcollection collection Related to Ansible Collections work module This issue/PR relates to a module. needs_collection_redirect https://github.com/ansible/ansibullbot/blob/master/docs/collection_migration.md support:community This issue/PR relates to code supported by the Ansible community. traceback This issue/PR includes a traceback.
Projects
None yet
Development

No branches or pull requests

6 participants