[17:23] <gholms> smoser: Is cloud-init start-local supposed to fail on EC2?
[17:24] <smoser> you want it to exit success
[17:24] <gholms> Hmm...
[17:24] <smoser> i thoguth there was  bug on that.
[17:24] <gholms> I'm looking at the new comment on bug 861943.
[17:24] <uvirtbot`> Launchpad bug 861943 in cloud-init "Add systemd support" [Medium,Fix committed] https://launchpad.net/bugs/861943
[17:25] <gholms> I suspect I'm doing something wrong, but I'm not sure what.
[17:26] <smoser> gholms,  it does exit false if it fonds nothing.
[17:26] <smoser> it probably shoudl exit success.
[17:27] <gholms> Sounds like that should be a separate bug, then.
[17:27] <gholms> cloud-init start should later find the EC2 source and make everything work, right?
[17:48] <smoser> gholms, no.
[17:49] <smoser> cloud-init-local should start earlier and find nothing
[17:49] <smoser> cloud-init should then come and find a metadata service from the network
[17:49] <smoser> cloud-init would be bettter named cloud-init-net
[17:52] <gholms> I was under the impression that start-local was just supposed to clean up the cache after previous runs.  Why is it looking for a data source?
[17:54]  * gholms goes through the code again
[17:59] <smoser> gholms, because there are local data sources
[18:00] <smoser> (DataSourceNoCloud)
[18:00] <smoser> and i just added one for openstack "ConfigDrive" yesterday.
[18:02] <gholms> Sure, but can't those be done during start, not start-local?
[18:03] <smoser> gholms, well they run earlier.
[18:03] <smoser> they don't depend on network.
[18:04] <smoser> so they can influence more of boot.
[18:04] <smoser> the configdrive one can write /etc/network/interfaces
[18:04] <gholms> Ah, that's why.
[18:04] <gholms> So should start-local *and* start exit successfully if there is no data source, or just start-local?
[18:05] <smoser> i really can't htink of a good reason to not make them exit 0 on non-failure but no datasource found.
[18:05] <smoser> initially, i'm sure i considered it failure if there was no data source
[18:05] <smoser> i'm opne to input here.
[18:06] <gholms> start-local certainly shouldn't fail due to that.
[18:06] <gholms> I could go either way with start.
[18:08] <gholms> Both use the same code path at that point, right?  It would probably be easier to just change them both.
[18:18] <smoser> yeah, the exit is the same place.
[18:22] <gholms> worksforme
[18:25] <smoser> i just pushed that change.
[18:25] <gholms> Thanks
[18:32] <gholms> So... as long as you're here... :)
[18:32] <gholms> util.runparts runs ``run-parts --regex .* foo''.
[18:33] <gholms> Can we kill off the "--regex .*"?
[18:33] <gholms> Fedora's run-parts script is somewhat braindead.
[18:35] <gholms> I suppose I should just file a bug.
[19:52] <ganimede> hello. Is there a way/program to run a partition in a virtual machine, please?
[20:10] <smoser> gholms, sorry... regarding regex..
[20:10] <smoser> i tihnk i needed that for some reason.
[20:10] <smoser> and there is a bug.
[20:12] <smoser> by default, run-parts skips some files. man page says
[20:13] <smoser>  ames must consist entirely of ASCII upper- and lower-case letters, ASCII digits, ASCII underscores, and ASCII minus-hyphens.
[20:13] <smoser> which would seem sufficient, but i sweare i did this for a reason
[20:17] <smoser> gholms, yeah.. if i search through logs i find
[20:17] <smoser> http://bazaar.launchpad.net/~cloud-init-dev/cloud-init/trunk/revision/99
[22:02] <gholms> Ouch.
[22:13] <gholms> smoser: Would a condition of some kind make sense or would you rather I carry a patch?
[22:14] <smoser> if you can think of a way to do some condition, i'll take that patch for sure.
[22:16] <gholms> I guess one test could simply be seeing if the file starts with #!/bin/bash.
[22:17] <gholms> The Debian one is a compiled executable.
[22:17] <smoser> yuck, thogh.
[22:17] <gholms> Yup
[22:17] <smoser> my othe rscary thought was to just implement run-parts in python
[22:18] <smoser> but i'm almost certain i'll do it incorrectly in some sense
[22:18] <smoser> at least at first.
[22:18] <gholms> "for file in sorted(os.listdir(dirp)): subprocess.check_call([file])" ?
[22:19] <gholms> Since the goal is to run *everything* and all
[22:19] <gholms> But yeah, there are bound to be corner cases.