=== tds5 is now known as tds [09:25] <_NiC> I've made an image that uses LVM, and in cloud.cfg I'd like to run growpart: on the LVM partition, as well as a runcmd: to pvresize the PV. The name of the device changes depending on the hw_disk_bus/hw_scsi_model that is used (i.e. /dev/vda or /dev/sda). Is there a way to detect what the correct device name is, and use that in growpart and runcmd? [11:02] is there documentation of the various formats of files found at https://cloud-images.ubuntu.com/focal/current/ [11:03] i'm specifically looking for a cloud image to run on kvm, but i don't understand whether i want -disk-kvm.img or .img, or what the actual formatting of these disks is [11:07] <_NiC> the disk-kvm.img probably works. You can use qemu-img info and it'll tell you what format it is [11:09] <_NiC> (not really cloud-init related though) [11:09] i just downloaded both, they both seem to be qcow disks with identical partition tables [11:11] i'll try try them both and see what happens, i just wondered if someone here was responsible for those (as i thought they were cloud-init specific) [11:21] <_NiC> In my VM I make my image from, there's a 'debian' user with a password. I need this for when I want to make any changes to the image. In cloud.cfg there's a default_user: lock_passwd: True, so this account can't be used directly. However, the encrypted password remains in /etc/shadow, and I'd like for that to be cleared out. Is there a way to do that? [11:23] <_NiC> perhaps passwd: '' will work? :-\ [11:40] <_NiC> No, did not work. [11:51] Hello all, me again. Just wanted to ping some maintaners to check this tiny pull-request https://github.com/canonical/cloud-init/pull/586 shouldn't take long (CC Odd_Bloke rharper ) [11:52] Also, some questions regarding multi_log() that I posted yesterday: [11:53] why does multi_log() is on util.py and not on log.py? I just got an IOError on multi_log()'s flush call over here. I see that log.flushLoggers() is the single point of flushing (except for log._resetLogger()) and it passes on IOError exception. Wondering if we should pass on util.multi_log() as well or move multi_log inside log and reroute the flush to log.flushLoggers() [11:53] The bug in question is this one: https://bugzilla.redhat.com/show_bug.cgi?id=1831107 [11:53] bugzilla.redhat.com bug 1831107 in cloud-init "[RHV] cloud-init with empty fields injects configurations" [Low,New] [14:12] otubo: would you be ok with changing "dhclient error stream" to "dhclient strerr stream" ? [14:20] johnsonshi: AnhVoMSFT: #563 is landed. \o/ [14:20] Thank you for your patience! [14:46] Thanks @Odd_Bloke [14:57] how does cloud-init add the #PR to the subject of git commit [14:58] and how can we make whatever-does-that-magic better lint commit messages [14:58] many recently with no body [14:59] and long lines [15:00] part of that was a rant... sorry. i came here to ask about the #PR because i'd like to do "rebase and merge" on a different project, but feel that it is important to get the #PR [16:02] smoser, if I recall github automatically adds the pr # to the end of the description [16:12] i dont htink so. [16:13] smoser, you are referring to the (#563) in the latest commit: https://github.com/canonical/cloud-init/commits/master right? [16:17] oh. well id' not updated recently. so my top commit was [16:17] nitial implementation of integration testing infrastructure (#581) [16:17] that was a "no body" [16:17] but yeah... the last 2 commits have long subject lines. [16:17] #549 has long lines in body [16:18] [16:21] I wonder if a github action can format/warn about this [16:26] powersj:ah. squash-and-merge does it. [16:26] rebase-and-merge does not [16:26] whichs... odd. but ok. [16:26] ahh good to know [16:39] Odd_Bloke: Thanks for merging! [16:39] Odd_Bloke: You've also previously reviewed this one (https://github.com/canonical/cloud-init/pull/590) and signed off on it, except for a few small comments (which I've addressed). That should also be ready to merge :) [16:39] smoser: I guess with rebase-and-merge, how would you handle multiple commits? Put it on every commit that's rebased? The last one? [16:40] With squash there's an unambiguous commit to add it to, I suppose. [16:40] (Rebase-and-merge does create new commits even if it could fast-forward, so they _could_ put it on every commit.) [16:42] do we have a long line rule on cloud-init? [16:43] or a "you must also have more text in a body even if you only want what's in the subject line" rule? [16:43] we document the format of a commit message here: https://cloudinit.readthedocs.io/en/latest/topics/hacking.html?highlight=commit%20message#do-these-things-for-each-feature-or-bug [16:44] when we used LP we had a check that would ensure it would be formatted correctly [16:48] thanks for humoring me. [16:49] Odd_Bloke: squash-and-merge is what cloud-init wants, for sure. [16:49] i was working on a different project (https://github.com/anuvu/disko/). [16:50] and the specific PR had only one commit, so squash-and-merge *could be* the same as rebase-and-merge. except its not. [16:51] I'm not sure that doc really addresses either of my questions. I wouldn't read "summarizing the change and a longer message indicating important details about the changes included" as meaning you MUST have more than just a title if you think a title would suffice [17:31] does anyone here have time to help me fix my failing Azure tests? [17:34] in https://github.com/canonical/cloud-init/pull/588 after 41a53b92ad286f4a179bd4917d24a25036faa7eb , tests in tests/unittests/test_datasource/test_azure.py are failing. And i don't quite understand how to change the TestAzureDataSource or the mocks for it to succeed. [17:34] i'm guessing the test class would need a distro object… that'd be a good start. [17:38] Odd_Bloke: btw, how would i change https://github.com/canonical/cloud-init/pull/588/commits/c4c9a6e19fbc62545551b87ba005290a56b3a7ca to be in line with https://github.com/canonical/cloud-init/pull/609/files ? [17:45] oh, and one very important thing… how do you fix flake8 complaint about a line that's 80 char, when the line is literally just foo_bar_baz.zomg = zomgulator.foomatic.bazoom() [17:45] well, literally, not meant literal… but, like, valley girl. [18:43] for the flake8 question, a `# noqa: E501` at the end of the line should suppress that particular error...though it may be reasonable to split it with a blackslash at one of the dots [18:57] falcojr: the line is: self._network_config = self.distro.networking.generate_fallback_config() [18:58] another one is: assert 0 == oracle_ds.distro.networking.generate_fallback_config.call_count [18:58] and the third is: oracle_ds.distro.networking.generate_fallback_config.return_value = copy.deepcopy( [18:58] ncfg [18:58] ) [18:59] you _could_ a backslash and linebreak before any of those dots [18:59] * rgl waves [18:59] my personal opinion is that falls into the pep8 atrocities camp, but I think I'm in the minority on that front [19:03] I'm upgrading from ubuntu 18.04 to 20.04, but cloud-initramfs-growroot seems to be broken. It seems that after the partition is resized the wait-for-root call never returns (I can mount it manually thou). It seems wait-for-root is waiting for some udev event that never is triggered. Do you have any idea how to further troubleshoot this? [19:11] falcojr: no… no you're not… tho two people hardly makes a plurality? majority? [19:12] better to ask forgiveness than permission? Just throw the comment on there and see if anybody yells during review ;) [19:14] i'd rather people yell suggestions for how to mock distro into tests/unittests/test_datasource/test_azure.py::TestAzureDataSource [19:16] You could also do `generate_fallback_config = oracle_ds.distro.networking.generate_fallback_config` on the preceding line. [19:16] I agree that this is a marginal case, for sure. [19:17] i just pushed the noqa "fix" [19:18] we can talk about "improvements" of marginal cases in the review [19:18] if i ever get there [19:30] why are we still limiting to 80 characters btw? [19:33] AnhVoMSFT: because that's what pep8 says. [19:56] can that be customizable to something more modern [19:56] that reflects the average developer's screen size [19:57] AnhVoMSFT: it's not about screensize, it's about uhm… remembering the start of the line at the end of the line… === tds9 is now known as tds [20:04] otubo: I'm ready to merge https://github.com/canonical/cloud-init/pull/586 if you can give me a commit message to use. :) [20:23] falcojr: One minor comment on https://github.com/canonical/cloud-init/pull/604 [20:31] I regularly (read: always) have 3-4 files open in vertical splits in vim; 80 characters allows me to see the full lines in all 4 files simultaneously. [20:33] So increasingly the character limit would affect my workflow. This isn't to say we can't change it, by any means (I coped for years with _only_ 3 files before upgrading my monitor ;), but it's worth noting that there are trade-offs in both directions. [20:37] my font size is too big for more than one file vertically split [20:37] i need to get different font, or different eyes / brain [20:37] Fonts are easier to acquire, I think. [20:39] €€€€€ === tds8 is now known as tds [22:43] Woah that must be a big monitor to fit 4 files at the same time! [23:05] Hi. Looking to get this PR reviewed/merged in time for the sru. Has been validated with Azure, reviewed and approved by AnhVoMSFT - https://github.com/canonical/cloud-init/pull/613