[00:18] hi, cloud-init is failing on init for me with the following error UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8d in position 0: invalid start byte [00:19] version 0.7.7 from an Ubuntu 15.10 AMI. [00:20] any ideas for how I can debug the issue? user-data in AWS does look weird (and not something I can change) === mgagne is now known as Guest41804 [06:29] this is all I have in my cloud.cfg file http://pastebin.com/FrWTnHLf and when I try to SSH, it still asks for a password. What am I doing wrong? :/ [08:08] I've changed it to be the stock file with only the stuff I needed included. It still doesn't work. [08:08] I clearly don't have a clue, and I'm at the end of my rope. [08:08] I'd be *happy* to pay someone to help me figure this out. [11:30] hello all, i am Alex from Bigstep, currently working on adding a new datasource for the Bigstep cloud service and to also port our templates into using cloudinit [11:31] xael: Hola! (I'm Dan Watkins from Canonical. :) [11:32] currently, I am having a problem with changing the password for the root user on a CentOS 6.6 machine running cloud-init 0.7.5 [11:32] by sending it in a hashed form, not plaintext [11:36] the way in which i managed to do it was to add an 'hashed_passwd' option in distros/__init__ and use the existing set_password with the hashed parameter set [11:44] xael: Can you pastebin the patch? (Probably easier for me to grok that way :) [11:46] http://pastebin.com/1j1yzxYB here you go, i pasted the whole function [11:49] xael: That looks pretty sensible. :) [11:52] what do you mean by sensible?:)) [11:52] xael: I mean: That looks like a change we should include in cloud-init. ^_^ [11:53] :D [11:56] Odd_Bloke: did you manage to look over the datasource I sent you before the holidays? [12:17] xael: I didn't, I think that must have got lost in the shuffle, I'm afraid. [12:17] xael: Could you send it over again? [12:20] of course [12:21] xael: Sorry about that! [12:21] no problem :D [12:25] sent, could you please tell me if you received it? [12:29] xael: Received; thanks. :) [12:29] xael: I doubt I'll be able to get to it today, but I'll try to have a look on Monday. :) [12:31] no rush [12:36] :) [12:51] Hello, is user-data supposed to merge with stuff from /etc/cloud/cloud.cfg? [12:51] I have merge_type: 'list(append)+dict(recurse_array)+str()' in the user-data, but merge doesn't seem to happen [13:08] atonal: what in particular are you trying to merge? [13:20] larsks: some users [14:28] If I have two separate configs in the heat template with merge_type, they merge together fine, but stuff from /etc/cloud/cloud.cfg is missing [14:28] And if I remove the configs from the heat template, I get the stuff from /etc/cloud/cloud.cfg [14:29] atonal, can you show what you have in user data ? [14:48] smoser: I think I can replicate the problem. I'm using this: http://chunk.io/f/6d69899a5f95470a8248256b731848bf [14:48] smoser: that seems to be *replacing* the users: block in /etc/cloud/cloud.cfg, rather than merging. [14:48] yes, that's close to what I have [14:49] (on my test systems, the users: block in cloud.cfg contains only "- default" [14:49] ) [14:51] atonal: for what it's worth, I've always found the merging support in cloud-init to be confusing at best. smoser and I have had several discussions where the outcome was "huh, I guess that won't work". [14:51] Confusing it definitely is. [14:54] larsks, i agree with you [14:54] :) [14:55] the merging is fairly straight forward for dict [14:55] and generally does the right thing [14:55] but for lists, its wierd. and by default it just replaces lists. [14:57] But in general, merging user data and /etc/cloud/cloud.cfg _should_ work? Or is this some undefined-behavior-land? [15:00] yeah.. but ther are some caviats. [15:00] caveats [15:00] atonal, for testing you can do this [15:00] PYTHONPATH=$PWD ./tools/ccfg-merge-debug config/cloud.cfg cc.cfg > out.1 [15:00] just from trunk. it will output a merged file. [15:00] atonal: I have never been able to successfully merge something with cloud.cfg, although i was trying to modify things like cloud_init_modules which if I recall are simply parsed too early in the process or something like that. [15:01] i did hyave to change the config/cloud.cfg to have '#cloud-config' at the top or it doesn't get considered cluod-config. [15:01] init_modules is parsed too early [15:01] but config_modules and final_modules can work.. [15:02] ...although those are lists, like users:, and since the users merge doesn't seem to be working even with list(append), I'm wondering if those will work. I guess that's a quick test... [15:04] * larsks tests. [15:06] actually... init_modules should be able to be re-written too. [15:07] smoser: you and I had looked at something like that in the past and discovered that I think it wouldn't work. I thought. [15:07] I'd have to see if I still have the irc logs... [15:09] yeah. i think there is an issue with merging over builtin configs. [15:09] but i thoguth i would have ahd a bug on it and i dont see it. [15:11] smoser: so, e.g, this appears to just override cloud_config_modules rather than appending: http://chunk.io/f/f3325b6193234a87a8ac4c1fa9604966 [15:14] I am still having issues getting my config to work. I just want to specify a user, and set up specific SSH keys for that user, and have that go into each instance I spin up. My config is at http://pastebin.com/ekjhZAEr. [15:16] Do you need to include every section in your cloud.cfg, and just leave the non-relevant parts blank? or do you only include the parts that you need? [15:18] larsks, yeah, thats the issue. the merges only apply to config coming in in user-data. [15:18] which would also be why the users dont work as expected. [15:18] could you open a bug, just point to your data. i'd like to fix that. [15:19] smoser: sure. [15:22] smoser: https://bugs.launchpad.net/cloud-init/+bug/1532234 [15:22] SuperLag, the data you have there is not valid yaml [15:23] there is probably a WARN message to this affect in /var/log/cloud-init.log [15:23] but you can easily test yaml just with: [15:23] python -c 'import yaml, sys; yaml.load(open(sys.argv[1]).read())' foo.yaml [15:23] now, that said, i'm not certain that ssh keys are added to a user if the user is not created. let me check [15:24] it should. [15:24] larsks, that is awell written bug report [15:24] thank you. [23:10] Joshua Harlow proposed openstack/cloud-init: Change stackforge to openstack https://review.openstack.org/256684 [23:10] Joshua Harlow proposed openstack/cloud-init: Update .gitreview for new namespace https://review.openstack.org/236289 [23:11] Joshua Harlow proposed openstack/cloud-init: Update stackforge to openstack https://review.openstack.org/237452 [23:19] Merged openstack/cloud-init: py26 is no longer supported by Infra's CI https://review.openstack.org/261718 [23:26] Merged openstack/cloud-init: Deprecated tox -downloadcache option removed https://review.openstack.org/256694 [23:49] Merged openstack/cloud-init: Update stackforge to openstack https://review.openstack.org/237452