/srv/irclogs.ubuntu.com/2020/01/06/#cloud-init.txt

meenaAnd so it begins again! (I hope)07:25
tribaalhi all! I would need some pointers on how to get a more recent cloud-init version on CentOS (eg. CentOS 7.6). Is using a COPR repository the exepcted way to get the latest binairies or is there some kind of process to refresh the cloud-init package in CentOS base similar to Ubuntu's SRU?09:04
meenatribaal: which version are you getting from COPR?09:07
meenaor, "would you be getting" … if you haven't dared to try yet.09:08
tribaalmeena: the idea would be to have a centOS 7.6 with 19.3+09:19
tribaalbut I don't know what the best way to do this would be (we'd probably update our default templates to include the right binaries ourselves if there's no SRU-like process for CentOS)09:20
meenatribaal: https://copr.fedorainfracloud.org/coprs/g/cloud-init/el-testing/ you'd get 19.4 if you https://docs.pagure.org/copr.copr/how_to_enable_repo.html#how-to-enable-repo `dnf copr enable @cloud-init/el-testing`09:25
tribaalmeena: ack, thanks. That's not really "production" builds though, is it?09:26
meenatribaal: i don't know (anything about CentOS / Fedora etc… i haven't used them in a long time, and in $$jobs$$ we use RHEL)09:28
tribaalmeena: ack - same here (but we us Ubuntu :) )09:30
tribaalso our Ubuntu templates have the latest and greatest but we'd need our centOS templates to have the latest/greatest as well09:30
tribaaland I'm not too sure how/where to look :)09:30
=== cpaelzer__ is now known as cpaelzer
Odd_Blokemeena: tribaal: o/ Happy new year!13:42
Odd_BlokeI can't remember exactly the arrangement of our COPR repos, we'll have to wait for Ryan/Chad to help, I'm afraid.13:43
meenaOdd_Bloke: happy monday13:43
meenaOdd_Bloke: i'll need to quiz your brain some more wrt net refactor13:54
meenabut, IIRC, i've written the ideas / questions down. now lemme just find the URL…13:54
meena23:47 <meena> updates: https://hackmd.io/3-YBj1t9TAeKhmfLBQUjXQ?view#Revisiting-modules13:55
meena27th of December.13:55
Odd_BlokeI haven't even opened my inbox yet, so I don't know how soon I'll get to it, but it's on my list now! :p13:56
tribaalOdd_Bloke: heya! happy new year to you too :)14:09
blackboxswhappy 2020 cloud-initers. Time to dig out from holiday emails16:32
blackboxswtribaal: we (upstream cloud-init) don't work with distros directly, other than Ubuntu, to push upstream changes into the distribution. We rely on the distro vendors to vet cloud-init themselves. That said, I believe otubo is the right person to ask about how to coordinate updates into CentOS.   The cloud-init upstream team only provides a our COPR repos as a facility for CentOS users to check if more recent16:37
blackboxswupstream versions of cloud-init help resolve bugs seen on the current (older) cloud-init in CentOS stock images.  Also note, upstream only publishes to https://copr.fedorainfracloud.org/coprs/g/cloud-init/el-testing/  when we are undergoing an SRU for ubuntu, so expect that the "el-testing" repo is fairly stable.16:37
blackboxswwe SRU cloud-init into Ubuntu every month or two.16:38
tribaalblackboxsw: ack, so I guess building our CentOS templates with a newer binary (for instance built in your COPR repo - or building one ourselves) might be what we end up doing16:41
tribaalblackboxsw: also: happy new year :)16:41
blackboxswtribaal: definitely, for the short term and otubo may have pointers for feature-requesting an update of cloud-init into CentOS. I'm not sure where to start there.16:41
blackboxswsame to you 🎉16:42
tribaalotubo: out of curiosity - do you know/can you explain what the process of updating cloud-init in CentOS looks like? is it periodic? is it "whatever was current at the time of the CentOS release"?16:42
blackboxswemoj snap for the win16:42
tribaalI mean updating in the base CentOS16:43
anankeI'm trying to locate where in the official documentation various config options are documented, specifically for 'users' section, and I must be missing something obvious. where can I find the canonical info on items such as the ones described here? https://www.zetta.io/en/help/articles-tutorials/cloud-init-reference/17:32
smoserits more than a bit obnoxious that you cannot attach tarballs to pull requests17:35
smoserhttps://github.com/canonical/cloud-init/pull/12817:35
rharperananke: https://cloudinit.readthedocs.io/en/19.2/topics/modules.html#users-and-groups  and https://cloudinit.readthedocs.io/en/19.2/topics/examples.html#including-users-and-groups17:36
smoseroh. maybe ignore my noise17:37
anankerharper: ahh, thanks! didn't realize the modules section expanded17:37
rharperananke: well, the latest version doesn't do that, we have a bug to revert that back to the other releases17:38
anankeohh, that would explain17:38
blackboxswrharper: yeah I was finding the same.17:39
rharperhttps://bugs.launchpad.net/cloud-init/+bug/185245617:39
ubot5Ubuntu bug 1852456 in cloud-init "doc: list of modules is no longer present" [Medium,Triaged]17:39
blackboxswuser_groups docs get generated but not included for some reason17:39
blackboxswthanks ryh17:39
rharperlow hanging fruit17:39
blackboxswyeah17:39
anankeyep, no wonder. I've been blindly fumbling through the search and menu17:39
rharperananke: yeah, sorry for the trouble17:40
rharperblackboxsw: I don't think we should wait for powersj to sort out a better solution  as mentioned in the bug; we should re-add the Left-hand-side toc  as it was; it's *much* friendlier17:40
powersjrharper, blackboxsw +117:41
blackboxswsmoser, I thought I saw github could allow tar.gz attachments https://github.com/dear-github/dear-github/issues/150#issuecomment-36974437017:41
blackboxswtesting that theory17:42
blackboxswyeah test.tar.gz works, test.tar is rejected due to invalid file type17:44
blackboxswand yeah, ridiculous that they'd support tar.gz, but not tar :P017:45
blackboxswJust published to focal [ubuntu/focal-proposed] cloud-init 19.4-16-gf8950d63-0ubuntu1 (Accepted)17:51
blackboxswInbox17:51
blackboxswrharper:/Odd_Bloke I think we'll need to fix build-and-push script as we can no longer push branches direct to upstream (as they require review) https://trello.com/c/MdP53rtp/1239-github-upstream-release-script-build-and-push-needs-to-push-up-a-pr-for-review17:54
smoserblackboxsw: yeah, ignore my noise17:54
blackboxswI've put up a PR for the upstream release (which was already dput and accepted by my build-and-push run) https://github.com/canonical/cloud-init/pull/15117:55
blackboxswsmoser:  no problemo..... but just this time my friend17:55
smoseri wont mess up again18:01
blackboxswheh18:01
Odd_Blokeblackboxsw: Should we just disable branch protection on those branches?18:25
Odd_BlokeI'd prefer to have exactly the git commit used for the upload as tip of those branches, and I don't think any of GH's merging strategies would do that.18:26
Odd_Bloke(GH's rebase never fast-forwards even when it could IIRC.)18:26
blackboxswOdd_Bloke: that's a good idea on branch protection disabling for ubuntu/devel at least. We can talk at a planning meeting in 1.5 hrs18:36
Odd_Blokeblackboxsw: Do we need to wait for a meeting?18:55
Odd_Blokerharper: powersj: Thoughts on disabling branch protection on the ubuntu/* branches, so we can push the uploaded git revision directly?18:55
powersjOdd_Bloke, I'm good with that18:59
powersjnot hearing any objections18:59
blackboxsw+1 Odd_Bloke19:03
rharperOdd_Bloke: +1 on allowing direct landing19:03
blackboxswand Odd_Bloke earns a card :) https://trello.com/c/MdP53rtp/1239-github-upstream-release-script-build-and-push-needs-to-push-up-a-pr-for-review19:04
blackboxswrharper: ananke powersj https://github.com/canonical/cloud-init/pull/153  for review of the doc fix in modules https://github.com/canonical/cloud-init/pull/15319:05
blackboxswI added a TOC to the top of modules page. make doc seems to show all modules now, with links19:07
Odd_Blokeblackboxsw: Done. :)19:13
anankethanks!19:14
anankeand looks like trello is back in working order too19:14
blackboxswstarting out the year right :). New year's resolutions and all19:19
blackboxswOdd_Bloke: thanks, just pushed ubuntu/19.4-16-gf8950d63-0ubuntu1 to origin19:31
blackboxswubuntu/devel should represent the commitish that was uploaded19:32
Odd_BlokeNice19:34
anankeam I just confused, or is the example backwards? 'Update apt database on first boot20:40
anankefrom https://cloudinit.readthedocs.io/en/latest/topics/examples.html shows 'package_update: false20:41
Odd_Blokeananke: It's not _wrong_ per se, in the sense that it's just illustrating how you would give this configuration option, but it is _definitely_ confusing, so we should address it.21:03
anankeOdd_Bloke: it's certainly very confusing, considering the very next example shows an option _adjusted_ to match the description21:06
Odd_BlokeYep, agreed.21:06
Odd_Blokeananke: Interested in proposing a fix?21:06
anankecertainly, I'm just not familiar with the procedure. do I have to actually do a PR?21:07
anankeon a side note, is there a way to use variables in cloud-init configs? not sure if YAML permits that21:09
Odd_Blokeananke: https://cloudinit.readthedocs.io/en/latest/topics/instancedata.html#using-instance-data details how to use Jinja for templating, is that what you're looking for?21:11
Odd_Blokeananke: You'd need to submit a PR, and sign the CLA (which, unfortunately, involves having a Launchpad account).21:11
anankeindeed, it's close. I am looking for using it with runcmd, since I have to refer to a version number in multiple commands. I wasn't prepared for the entire config to be be a potential jinja2 template, but I think it will work21:12
anankeOdd_Bloke: I see. I'd love to, but I'm short on time to complete few other things, and getting those items lined up would put me behind. maybe later this week21:13
anankehmm, I don't think the instance data will work though, since all I'm doing is supplying a single cloud init config file21:15
Odd_Blokeananke: What do you mean by "config file"?21:15
Odd_Blokecloud-init has several things that might be. :p21:15
anankeOdd_Bloke: good point. it's what I can provide with packer & multipass when an instance is launched21:16
Odd_Blokeananke: That's user-data (at least for multipass), so I think you should be good.  But your best bet would be to try and see, if you can. :)21:17
anankeforgive my ignorance, still trying to wrap my head around how cloud-init works, and how we can leverage it21:17
Odd_BlokeNo forgiveness necessary, we're more than happy to help. :)21:17
anankeis there an architectural diagram of cloud-init that would show the stages and what's being ingested at each one? or something that would differentiate between user and instance data (and if there are any other ones)21:20
Odd_Blokeananke: https://github.com/canonical/cloud-init/pull/154 :)21:22
Odd_BlokeI'm not aware of such a diagram.21:22
anankethanks!21:22
Odd_BlokeOnce again, I agree that it would be very useful! :p21:22
blackboxswjust descriptive docs that I know of https://cloudinit.readthedocs.io/en/latest/topics/boot.html about what each stage does. differentation of user/meta/instance  data  https://cloudinit.readthedocs.io/en/latest/topics/instancedata.html21:22
anankethe diagram here is somewhat helpful: http://fbrnc.net/blog/2015/11/how-to-provision-an-ec2-instance21:23
blackboxswananke: a brief overview of cloud-init from a presentation we gave in OSSEU https://events19.linuxfoundation.org/wp-content/uploads/2017/12/cloud-init-The-cross-cloud-Magic-Sauce-Scott-Moser-Chad-Smith-Canonical.pdf21:25
anankeblackboxsw: thank you, this looks great. exactly the high level stuff I need to get me oriented. I've been suffering from 'can't see the forest for the trees'21:27
blackboxswananke: also I forgot it's linked here too with other context https://cloudinit.readthedocs.io/en/latest/topics/faq.html#where-can-i-learn-more21:28
anankecheers!21:28
blackboxswsurely21:28
meenapacker can use cloud-init?22:19
Odd_Blokemeena: It depends on which backend you're using, I think, but yes.22:45
anankemeena: yes. you can pass the cloud-init config via its user_data or user_data_file options23:08
anankeit's certainly not something easy to figure out if you're not familiar with that nomenclature. none of its documentation mentions cloud-init outright23:10
Odd_Blokerharper: On the Scaleway PR, is your intent that Louis step back and find a way to log better messages?  (It looks, to me, like a more general statement about what we should do as a project, but might read as a more specific request.)23:12
rharperOdd_Bloke: the latter; for now;23:13
rharperI'm I won't -1 the current change to the datasource; but we have other variants, DatasourceSmartOS does a if self._network_config is UNSET: self._network_config = None;23:13
rharperwhich might match better in Scaleway since they __init__() to self._network_config = None23:13
rharperit works out the same, but I was sort of ranting that we've not given datasources common methods for this non-datasource-specific scenario23:14
rharperI was quite surprised that it was set to UNSET until I walked through the logs and code23:15
rharperso I kind of want to make it clear in the future via the logs; and potentially have better methods around manipulation/checking of ds.network_config state23:15
Odd_BlokeAck23:39
meenaananke: aaah. i was looking for it under the provisioning methods, and could not find it23:50
anankemeena: bingo. and it runs before any provisioners kick in23:54
meenacool cool23:55
anankethough I wish it had better integration with cloud-init, for example an easy way to tell packer to wait until cloud-init is done23:57

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!