| Summary: | rhevm userdata is being double encoded | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Retired] CloudForms Cloud Engine | Reporter: | dgao | ||||
| Component: | deltacloud-core | Assignee: | chris alfonso <calfonso> | ||||
| Status: | CLOSED ERRATA | QA Contact: | Ronelle Landy <rlandy> | ||||
| Severity: | high | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 1.0.0 | CC: | calfonso, hbrock, morazi, rananda, whayutin | ||||
| Target Milestone: | beta6 | ||||||
| Target Release: | --- | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2012-05-15 20:32:59 UTC | Type: | --- | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Attachments: |
|
||||||
|
Description
dgao
2012-02-08 15:40:05 UTC
[root@intel-d3c4702-01 deltacloud-core]# rpm -qa | grep "deltacloud" deltacloud-core-ec2-0.5.0-4.rc1.el6.noarch deltacloud-core-vsphere-0.5.0-4.rc1.el6.noarch deltacloud-core-0.5.0-4.rc1.el6.noarch rubygem-deltacloud-client-0.5.0-1.rc2.el6.noarch deltacloud-core-rhevm-0.5.0-4.rc1.el6.noarch The effect of this bug is preventing audrey client from properly digesting the userdata. Don't believe this is urgent -- it only blocks Audrey on RHEV. Changing to HIGH. Not clear if we should block beta for it or not. Deltacloud does not seem to be encoding user_data by default. Some call must be
requesting that the data be encoded:
Create an instance with encoded data (testInstanceEn):
ssh root.120.210
root.120.210's password:
[root@10-16-120-210 ~]# /sbin/modprobe floppy; lsmod | grep floppy
floppy 61511 0
[root@10-16-120-210 ~]# /bin/mount /dev/fd0 /media; cat
/media/deltacloud-user-data.txt
MXxodHRwczovL2RlYWRkb25rZXkudXNlcnN5cy5yZWRoYXQuY29tfGNvbmR1Y3Rvcl9rZXl8OTUzODkwNTgyMDY5NTE3MDk0NDQxNzgxNzY3MTkxNzA5NDg4MzU5NTQ5NDg4MTgw[root@10-16-120-210
~]#
The data stays encoded as entered.
Created an instance without encoded data (testInstanceNE)
ssh root.120.176
root.120.176's password:
[root@10-16-120-176 ~]# /sbin/modprobe floppy; lsmod | grep floppy
floppy 61511 0
[root@10-16-120-176 ~]# /bin/mount /dev/fd0 /media; cat
/media/deltacloud-user-data.txt
1|https://deaddonkey.usersys.redhat.com|conductor_key|xxxx[root@10-16-120-176
~]#
The data stays not encoded - in its original form
rpms tested:
rpm -qa |grep deltacloud
deltacloud-core-vsphere-0.5.0-5.el6.noarch
deltacloud-core-ec2-0.5.0-5.el6.noarch
deltacloud-core-rhevm-0.5.0-5.el6.noarch
deltacloud-core-0.5.0-5.el6.noarch
rubygem-deltacloud-client-0.5.0-2.el6.noarch
[root@hp-dl360g5-02 ~]# rpm -qa |grep aeolus
aeolus-configure-2.5.0-12.el6.noarch
aeolus-all-0.8.0-23.el6.noarch
rubygem-aeolus-cli-0.3.0-7.el6.noarch
aeolus-conductor-0.8.0-23.el6.noarch
aeolus-conductor-daemons-0.8.0-23.el6.noarch
aeolus-conductor-doc-0.8.0-23.el6.noarch
rubygem-aeolus-image-0.3.0-7.el6.noarch
Guys, I just checked DC driver and there was *no* change related to encoding/decoding past few weeks. If this issue appeared few days ago/yesterday, maybe there is some other issue which triggers double encoding. Maybe worth to look into Conductor as well. I have add the vdsm-floppyinject-hook source to github, https://github.com/calfonso/vdsm-hook-floppyinject for now. I've added a patch that decodes the content before it's written to the floppy file. I'll work with someone on the audrey team to test it out. I'll add an update with the results. Created attachment 560645 [details]
patched to base64 decode file contents
Attaching the rpms for a patched vdsm-hook-floppyinject.
Decoding in vdsm-hook-floppyinject works, audrey agent is now happy. >>> import base64 >>> line = open('/media/deltacloud-user-data.txt', 'r').read().strip() >>> dl = base64.b64decode(line) >>> len(dl.split('|')) 4 >>> dl '1|https://deaddonkey.usersys.redhat.com|b8a7f2de-5342-11e1-a949-001320f3f0c5|rCxUQpeJzhftqgbw7pu6v6EkYvN5iJpeSD7p5khXNo8' 2012-02-09 12:23:55,672 - INFO : audrey:1293 Invoked audrey_script_main 2012-02-09 12:23:56,023 - INFO : audrey:1321 <Instance of: CSClient Version: 1 Config Server Endpoint: https://deaddonkey.usersys.redhat.com Config Server oAuth Key: b8a7f2de-5342-11e1-a949-001320f3f0c5 Config Server oAuth Secret: rCxUQpeJzhftqgbw7pu6v6EkYvN5iJpeSD7p5khXNo8 Config Server Params: Config Server Configs: Temporary Directory: Tarball Name: eot> 2012-02-09 12:23:56,038 - INFO : audrey:944 Invoked CSClient.get_cs_tooling() 2012-02-09 12:23:56,237 - INFO : audrey:682 Invoked unpack_tooling() 2012-02-09 12:23:56,243 - INFO : audrey:901 Invoked CSClient.get_cs_configs() 2012-02-09 12:23:56,471 - INFO : audrey:612 Execute Tooling command: /var/audrey/tooling/user/proxy1/start 2012-02-09 12:23:56,471 - INFO : audrey:612 return code: 0 2012-02-09 12:23:56,471 - INFO : audrey:612 Start Output of: /var/audrey/tooling/user/proxy1/start >>> PROGNAME *** *** *** *** *** *** PROGNAME: /var/audrey/tooling/user/proxy1/start pwd *** *** *** *** *** *** /var/audrey/tooling/user/proxy1 args *** *** *** *** *** *** printenv *** *** *** *** *** *** AUDREY_VAR_proxy1_proxy_server_1_param_1=a AUDREY_VAR_proxy1_proxy_server_1_param_2=b AUDREY_VAR_proxy2_proxy_server_1_param_1=c AUDREY_VAR_proxy2_proxy_server_1_param_2=dd <<< End Output 2012-02-09 12:23:56,481 - INFO : audrey:612 Execute Tooling command: /var/audrey/tooling/user/proxy2/start 2012-02-09 12:23:56,482 - INFO : audrey:612 return code: 0 2012-02-09 12:23:56,482 - INFO : audrey:612 Start Output of: /var/audrey/tooling/user/proxy2/start >>> PROGNAME *** *** *** *** *** *** PROGNAME: /var/audrey/tooling/user/proxy2/start pwd *** *** *** *** *** *** /var/audrey/tooling/user/proxy2 args *** *** *** *** *** *** printenv *** *** *** *** *** *** AUDREY_VAR_proxy1_proxy_server_1_param_1=a AUDREY_VAR_proxy1_proxy_server_1_param_2=b AUDREY_VAR_proxy2_proxy_server_1_param_1=c AUDREY_VAR_proxy2_proxy_server_1_param_2=dd <<< End Output 2012-02-09 12:23:56,482 - INFO : audrey:916 Invoked CSClient.get_cs_params() 2012-02-09 12:23:56,678 - INFO : audrey:520 Invoked generate_provides() 2012-02-09 12:23:57,254 - INFO : audrey:931 Invoked CSClient.put_cs_params_values() [root@10-16-120-196 ~]# Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHEA-2012-0587.html |