Hide Forgot
Description of problem: When a user with a non-ASCII charackter exist, a re-deploy/update/scale operation fail. Version-Release number of selected component (if applicable): [stack@undercloud ~]$ rpm -qa | grep tripleo openstack-tripleo-common-0.0.1.dev6-6.git49b57eb.el7ost.noarch openstack-tripleo-heat-templates-0.8.6-123.el7ost.noarch openstack-tripleo-0.0.7-0.1.1664e566.el7ost.noarch openstack-tripleo-puppet-elements-0.0.1-5.el7ost.noarch openstack-tripleo-image-elements-0.9.6-10.el7ost.noarch [heat-admin@overcloud-controller-0 ~]$ sudo rpm -qa | grep puppet puppet-3.6.2-2.el7.noarch openstack-puppet-modules-2015.1.8-51.el7ost.noarch How reproducible: 100%, steps below. Steps to Reproduce: 1.(openstack) user create --project admin --email hjensas --enable --password hjensas "haraldjensås" +------------+----------------------------------+ | Field | Value | +------------+----------------------------------+ | email | hjensas | | enabled | True | | id | 41c4f9ec59384239990aec8d3a6f0ccc | | name | haraldjensås | | project_id | 055966471f944a4ebb12f81753f4a891 | | username | haraldjensås | +------------+----------------------------------+ 2.(openstack) user list +----------------------------------+--------------+ | ID | Name | +----------------------------------+--------------+ | 161b1f81c78342269601722fafefa670 | admin | | 33d4fb018dc74145b142d5376bf64c6c | nova | | 41c4f9ec59384239990aec8d3a6f0ccc | haraldjensås | <--- Non ascii char | 45527723f2d848d1b9494dee484779cf | cinder | | 6ff5f0a2289c4dfaa5b539cbabe98a96 | swift | | 71cc3322b3584a6c820250ca73b40033 | cinderv2 | | 8e66d88846994f9ebd2348feb4ebf3e8 | ceilometer | | bd921c7b2fe14ed89ac5623f5f2b8b10 | heat | | c84f2b33825445878f6352738a668a4f | neutron | | fd00f433f3124c888edb38df20501d5f | glance | +----------------------------------+--------------+ 3. [stack@undercloud ~]$ cat overcloud-deploy.sh #!/bin/bash cd /home/stack openstack overcloud deploy \ --templates /home/stack/templates/my-overcloud/ \ --ntp-server 192.168.102.11 \ --control-scale 1 \ --compute-scale 1 \ --neutron-network-type vxlan \ --neutron-tunnel-types vxlan \ -e /home/stack/templates/my-rabbit-fd-limits.yaml # -e /home/stack/templates/my-parameters.yaml 4.[stack@undercloud ~]$ bash overcloud-deploy.sh Deploying templates in the directory /home/stack/templates/my-overcloud Stack failed with status: resources.ControllerNodesPostDeployment: resources.ControllerOvercloudServicesDeployment_Step6: Error: resources[0]: Deployment to server failed: deploy_status_code : Deployment exited with non-zero status code: 6 ERROR: openstack Heat Stack update failed. Actual results: Stack failed with status: resources.ControllerNodesPostDeployment: resources.ControllerOvercloudServicesDeployment_Step6: Error: resources[0]: Deployment to server failed: deploy_status_code : Deployment exited with non-zero status code: 6 ERROR: openstack Heat Stack update failed. In the os-collect-config logs these entries: ----------- Apr 08 08:13:22 overcloud-controller-0.localdomain os-collect-config[3290]: Error: Could not prefetch keystone_user provider 'openstack': Execution of '/usr/bin/openstack user list --quiet --format csv --long' returned 1: ERROR: openstack 'ascii' codec can't encode character u'\xe5' in position 10: ordinal not in range(128) Apr 08 08:13:22 overcloud-controller-0.localdomain os-collect-config[3290]: "ID","Name","Project","Email","Enabled" Apr 08 08:13:22 overcloud-controller-0.localdomain os-collect-config[3290]: "161b1f81c78342269601722fafefa670","admin","admin","root@localhost",True Apr 08 08:13:22 overcloud-controller-0.localdomain os-collect-config[3290]: "33d4fb018dc74145b142d5376bf64c6c","nova","service","email=nobody",True Apr 08 08:13:22 overcloud-controller-0.localdomain os-collect-config[3290]: Error: Execution of '/usr/bin/openstack user create --format shell admin --enable --password AZADfbmt2JbbQVHh3nkfVwhQ6 --project admin --email root@localhost' returned 1: ERROR: openstack Conflict occurred attempting to store user - Duplicate Entry (HTTP 409) (Request-ID: req-efd6c099-a9fc-4913-b8ca-ba325ffec901) Apr 08 08:13:22 overcloud-controller-0.localdomain os-collect-config[3290]: Error: /Stage[main]/Keystone::Roles::Admin/Keystone_user[admin]/ensure: change from absent to present failed: Execution of '/usr/bin/openstack user create --format shell admin --enable --password AZADfbmt2JbbQVHh3nkfVwhQ6 --project admin --email root@localhost' returned 1: ERROR: openstack Conflict occurred attempting Apr 08 08:13:22 overcloud-controller-0.localdomain os-collect-config[3290]: Warning: /Stage[main]/Keystone::Roles::Admin/Keystone_user_role[admin@admin]: Skipping because of failed dependencies Apr 08 08:13:22 overcloud-controller-0.localdomain os-collect-config[3290]: Warning: /Stage[main]/Heat::Keystone::Domain/Exec[heat_domain_create]: Skipping because of failed dependencies Expected results: The stack update should complete successfully Additional info: This also happen when an directory such as LDAP or Active Directory is used, if a user in the directory has a name or similar with a non-ASCII character the deployment will fail in the same way.
Created attachment 1145079 [details] overcloud-controller sosreport
Created attachment 1145080 [details] overcloud-controller sosreport md5sum
Adding Customer support case as another Customer has hit this issue because of unicode character in keystone user email address. Same error: Nov 21 20:32:09 overcloud-s1-twinsburg-controller-0.localdomain os-collect-config[4375]: g to store user - Duplicate Entry (HTTP 409) (Request-ID: req-b6aa1b25-0d0d-47bd-b4da-1f4c2c13afb6)\u001b[0m\n\u001b[1;31mError: /Stage[main]/Keystone::Roles::Admin/Keystone_user[admin]/ensure: change from absent to present failed: Execution of '/usr/bin/openstack user create --format shell admin --enable --password hy7juVv7K4FfxFKdwq2E6Ck8p --project admin --email root@localhost' returned 1: ERROR:
This appears to be a general issue handling utf-8 in openstackclient. I'm not sure if there's a DFG that is responsible for OSC, so I'm leaving it in DF for now. It's not really deployment-specific though.
Reassigning to DFG:UI