/srv/irclogs.ubuntu.com/2018/01/08/#cloud-init.txt

redguyso for posterity - in Debian jessie (systemd 215) when you restart journald as a part of cloud init it makes the cloud-init (and possibly other systemd units) fail when they want to write something into stdout/stderr. Debian stretch (systemd 232) is not affected.09:47
ajorgmeeting today?16:01
blackboxswajorg: morning. just in time16:03
blackboxswwas just determining who would kick it off16:03
blackboxsw<--- winner16:03
ajorgmorning16:03
blackboxsw#startmeeting Cloud-inin bi-weekly status meeting16:03
meetingologyMeeting started Mon Jan  8 16:03:53 2018 UTC.  The chair is blackboxsw. Information about MeetBot at http://wiki.ubuntu.com/meetingology.16:03
meetingologyAvailable commands: action commands idea info link nick16:03
blackboxswHappy  2018 cloud-initers!   Thanks ajorg for helping kick us off.16:04
blackboxswWelcome back from break hope the holidays were good for folks.16:04
blackboxswIt16:04
blackboxswIt's been a while since we've held the meeting due to holidays and vacation time. So, not a ton of content to report for the last bit. Digging up those details now16:05
blackboxswTesting of 17.2 on EC2, Azure, and GCE and release to Ubuntu Bionic16:06
blackboxswComplete 17.1.46 SRU to Ubuntu Xenial, Zesty, and Artful16:06
blackboxswFix documentation around 'init' mode for modules subcommand (LP: #1736600)16:06
blackboxswTooling to merge community authored branches into master16:06
ubot5Launchpad bug 1736600 in cloud-init "CLI: cloud-init modules -h documents unsupported --mode init" [Low,Fix committed] https://launchpad.net/bugs/173660016:06
blackboxswSo the canonical side of the team worked a bit on getting the latest SRU updates 17.1.46 into Xenial, Zesty and artful. The testing and verification of that release took a bit of time, but we are getting better(faster)16:07
blackboxswI think this last SRU only took us 2 weeks instead of 4 weeks. so that frees up more time on upstream reviews and increasing cloud-init's velocity16:07
ajorggreat16:07
blackboxswwe also added team tools for streamlining community authored branches. so that we stop slowing folks down :/16:08
blackboxswthen the only problem is the reviewer :)16:08
blackboxsw#topic Recent changes16:09
blackboxsw^ should have been that topic.16:09
blackboxswAlso 17.2 release was 'cut' prior to Christmas break, this opened master up for more changes to land. so we've pulled in good  fixes for VMWare NoCloud and SLES16:10
blackboxswdigging up the changests now.16:11
blackboxswAlso, keep in touch with our active development and the "done" lane on trello. It's out bookkeeper for anything we are working and Done represents anything landed16:11
blackboxsw#link https://trello.com/b/hFtWKUn3/daily-cloud-init-curtin16:11
blackboxswso high-level content that landed between 17.1.46 and 17.2:16:13
blackboxsw* CLI added the clean and status subcommands16:14
blackboxsw* Support for identifying OVF datasource provided by VMware16:14
blackboxsw* NoCloudKVM tests now run in continuous integration16:14
blackboxsw* Formalize DataSource get_data and related properties16:14
blackboxsw* Remove prettytable dependency and introduce simpletable16:14
blackboxsw* VMWare pre and post-customization script support16:14
blackboxswThanks ajorg I think you were the author of note on simpletable stuff, it's nice to drop dependencies where we can to increase speed of cloud-init16:15
ajorgit was done selfishly16:15
ajorgwe dislike taking on new dependencies :-)16:15
blackboxswand thanks to robjo(suse)  maitree(vmware) too and dojordan and Ryan McCabe(redhat) for recent branches too16:17
blackboxsw:)16:17
blackboxswPost our 17.2 release we've started work on improved integration..... I think we just got powersj's ec2 integration tests landed right johs?16:18
blackboxswjosh even16:18
powersj\o/ yep!16:18
ajorgnice16:18
blackboxswsweet, so an extra security blanked for us when we have significant changesets landed in master to ensure ec2 is happy.16:19
blackboxswpowersj: what are out plans for continuous integration frequency16:19
blackboxswwith ec2 specifically16:19
ajorgCan those integration tests be run by others with EC2 accounts?16:19
blackboxswajorg: yes they can16:19
powersjI am working on the jenkins jobs this week and hope to have a weekly run as well as a manual run for backport testing16:19
blackboxswI'll get the cmdline16:19
ajorgthanks!16:19
blackboxsw tox -e citests -m tests.cloud_tests run --os-name=artful --platform=ec2 --preserve-data --data-dir=../results --verbose16:20
blackboxswor something like that16:20
ajorggot it16:20
ajorgthanks!16:20
blackboxswpowersj: documented it too I think16:20
blackboxswgetting link16:20
powersjhttps://cloudinit.readthedocs.io/en/latest/topics/tests.html#ec216:20
blackboxsw#link https://cloudinit.readthedocs.io/en/latest/topics/tests.html#ec216:20
blackboxsw:)16:20
blackboxswexcellent work  Josh16:21
powersjthanks for all the reviews :)16:21
blackboxswanything else I'm missing about landed work?    rharper powersj smoser1 ?16:21
blackboxswotherwise next topic16:22
rharperblackboxsw: nothing from me16:22
blackboxsw#topic In-progress Development16:22
blackboxswSo we've got a fairly healthy review queue that we need to get through as we get the year started....16:23
blackboxswwe also have a few things we are in flight currently:16:24
blackboxsw- continuous integration improvements per powersj16:24
blackboxsw- dropping dependence on ifup ifdown utils where possible as that's not supported (or installed in some cases) in systemd world16:24
smoser1blackboxsw: wow. sorry, missing.16:24
blackboxswwho is that smoser1 guy anyway16:25
smoser1yeah, i didnt see anything missing sorry.16:25
=== smoser1 is now known as smoser
smoserwonder how that happened.16:25
blackboxswwelcome ;)16:25
blackboxsw- netplan improvements per rharper and jinja template support for all cloud-config modules16:25
blackboxsw- and softlayer support per smoser16:26
blackboxsw know the Azure guys are also posting a couple branches on getting a pre-provisioning setup going for thier datasource which looks pretty exciting16:27
blackboxswI can't think of anything else off the top of my head.16:27
robjochrony support16:28
ajorgwe're only talking feature work in this topic?16:28
blackboxswany in progress development to highlight is fair game. bug work. refactoring, feature etc16:29
blackboxsw+10 robjo and again thanks for working with us getting all those branches up and (hopefully soon) landed16:29
ajorgwhat does "jinja template support for all cloud-config modules" mean?16:29
ajorgI'd guess most modules don't need templating?16:31
blackboxswajorg: two things. 1. since we have now landed /run/cloud-instance/instance-data.json    to store metadata/userdata it'd be that #cloud-config can  new be specified with ## template:jinja header and could leverage anything jinjia has to offer plus sourcing any of the instance-data.json metadata fields16:31
ajorgAh, right. Is that not being done above the module level?16:33
blackboxswso if people have repetitive or template-driven content in the runcmd   or write_files portion or their #cloud-config  they'd be able to leverage jinja templates etc16:33
smoserajorg: yes, above the module level.16:33
blackboxswajorg: not anywhere in cloud-config currently16:33
blackboxswone sec I misunderstood the question16:33
blackboxswsmoser: can you clarify what you mean?16:33
ajorgI mean, shouldn't #cloud-config template expansion happen before the module sees the config?16:33
smoserblackboxsw: we could/should also allow other part types to be rendered16:34
smoserttps://trello.com/c/xyqxyOxg16:34
smoserer... bad url. in 2 ways16:35
ajorgThe the part handler would be the one to do that expansion.16:35
smoserhttps://trello.com/c/AYaCdQyT16:35
blackboxswahh ok, right that makes sense. I think the cut I made was limited in focus to cloud-config modules and custom scripts supporting the ## template:jinja header.. but nothing would preclude handling other parts16:35
blackboxswso the link to my WIP branch was16:36
blackboxsw#link https://trello.com/c/xyqxyOxg16:36
blackboxswand the general feature per smoser16:36
blackboxsw#link https://trello.com/c/AYaCdQyT/21-cloud-init-query-standardized-json-information16:36
ajorgIs there a design doc of some kind of this?16:36
blackboxswnot yet.. but we probably should have a spec as it'd be a good template for the docs we'll need to write16:37
blackboxswscott captured most of the use cases we'd be going for in that last trello link above16:38
ajorgSmall example of where some clarity is needed: if Jinja is interpreting {foo} in a user-script, what will it do when it sees a shell variable ${foo}16:38
ajorg?16:38
smoseryou declare that the content is a jinja template16:39
smoserif you provide it something that is not renderable as a jinja template16:39
smoserthen it will fail16:39
smoserit requires input to explicitly say "this is jinja". it does not just attempt to render anything.16:39
smoser(unless explicitly told to)16:39
blackboxswsome brief working examples are in the description of the branch @ https://code.launchpad.net/~chad.smith/cloud-init/+git/cloud-init/+merge/33403016:39
ajorgSure. But as a content author, I need to know if Jinja is going to try to render ${foo} or not.16:40
smoserthen as a content author you can read jinja docs :)16:40
blackboxswjinja would try to render {{ foo }}16:40
ajorg:-16:40
smoserajorg: we'll document a simple case, and we can even document "for shell, you'll have to be aware that ...."16:41
smoserbut we're not going to document all of jinja16:41
ajorgI see.16:41
ajorgMy understanding was that Jinja was highly customizable in what it interpreted and how, so that it's important to document how you've configured it to work.16:42
blackboxswand since to burden is on the #cloud-config or script writer to provide the header        ## template: jinja\n#cloud-config\n         they *should* understand what they are doing16:42
blackboxswwe won't implicitly run the #cloud-config through jinja16:42
ajorgI get that, no problem, what I'm saying is that Jinja is an engine that you configure to do something, not a markup that always does the same thing for everyone.16:43
ajorgAm I making any sense?16:43
blackboxswunderstood (though I thought it was fairly constrained it it's application and functionality). We'll make sure that the mechanism by which jinja operates is well documented and confined as best we can... for our own sanity we don't want that template engine to be too flexible... too many tough support use cases16:44
blackboxswok anything else for "In progress development"  otherwise we can move to Office hours for 30 mins16:45
blackboxsw#topic Office Hours (next 30 minutes)16:46
blackboxswrobjo: you've got quite a few branches of goodness up for us to review. Any prioritization on those branches or just take them as we can?16:47
rharperI don't think  there are issues w.r.t jinja and shell; they use different variable escape methods, jinja uses {{ variable/expression }}; and it doesn't consume $  AFAIK, ajorg do you know differently ?16:47
blackboxsw#link https://code.launchpad.net/~rjschwei/cloud-init/+git/cloud-init/+merge/33499216:48
blackboxswI'm guessing is top of the list16:48
ajorgI saw {instance_id} at https://trello.com/c/AYaCdQyT/21-cloud-init-query-standardized-json-information so I assumed it was being customized to look for { instead of {{16:48
robjoblackboxsw: The chrony support should probably be the last as it will take longer over all and more back and forth16:48
ajorg(for one thing)16:48
ajorgrharper: also, there's the whole question of the "extends" feature16:49
ajorgWe integrated Jinja into an internal tool a few years back and we spent a very long time making sure the loaders did the right thing.16:50
blackboxswajorg: I thought I read somewhere that you couldn't exend jinja for custom functions. maybe I was mistaken16:50
robjoI am also not certain that the "re-write everything" on the first go around for chrony is really what we want to do initially16:50
ajorgblackboxsw: I don't think I'm referring to custom functions16:50
robjoThat's probably where we ant to end up, but I am not certain that a "step function" approach is in order16:51
rharperajorg: hrm, I've always seen {{ variable }} or {% expression %};  so maybe blackboxsw can just update the templates;16:51
rharperthe examples in the cards16:51
ajorgrharper: sure, that would have helped in this case.16:52
robjoIf we do go down the route of the step function I'll need more gudance then in rharper's comments16:52
ajorgblackboxsw: I was referring to the ability of one template to extend another.16:52
ajorgblackboxsw: and the question of where does the engine look when it's asked to extend another template. It can be tricky.16:53
blackboxswyeah I honestly hadn't gotten past step one of handling the template markup within an existing single template. so this may need a bit of thought/work16:54
ajorgPersonally, I'd be a lot happier with limiting things to Python format() templates, even though it means you can't have loops, but I won't get in the way as long as we're cognizant of the problems we can run into by accepting the full power of an advanced engine like Jinja.16:55
smoseri'm not opposed to allowing ## template: python-format16:56
ajorgheh16:56
smoserhonestly.16:56
smoseryou can pick  a differnt name if you dont like that one.16:56
smoserbut we already use jinja, so it makes sense to support jinja16:57
* smoser has to run. sorry.16:57
rharperI do feel that supplying the template means the user is opting in;  and specifically if we've got a good way to provide dry-run based on a instance.json and a script; that certainly can help folks work out the kinks in the template of their choosing16:57
ajorgI'm really not opposed so much as wary of the extensive power of the thing16:57
rharperajorg: that's a fair warning; given you've experience here; help drawing the line is most welcome16:58
ajorgI'm trying to think of a way to read in /etc/shadow using Jinja, you know?16:58
rharperwell, cloud-init is root anyhow; so, what's the deal with that ?16:58
blackboxswajorg: heh, right though you can read that with your runcmd section in #cloud-config :)16:59
ajorgIf I can come up with a way to do it that doesn't make it look obvious that I'm doing it, and then post that as something others can copy, or use with #include <url> then I win.16:59
rharperI don't think jinja makes that any more troublesome16:59
rharperfolks already wget | bash with shell they don't understand either17:00
ajorgI suspect Jijna makes it more opaque.17:00
ajorgThe answer to "what file does Jinja read when I use {% extends foo %}" is a very lengthy "it depends"17:01
ajorganyway, I've said my piece17:02
* ajorg is a bit of a template naysayer.17:03
blackboxsw+1, there's one in every group. We'll try to keep that in mind as this feature evolves17:05
blackboxsw:)17:05
ajorgnice17:06
ajorg:-)17:06
blackboxswany pet bugs, new features or burning reviews that need mention?17:06
blackboxswajorg: we could do something simple like disable the extends option via policies17:07
blackboxswit looks like17:07
blackboxsw#link http://jinja.pocoo.org/docs/2.10/api/#policies17:08
blackboxswor maybe I'm misunderstanding the issue   I'll read up more on it17:08
ajorgthanks17:08
ajorgIt looked like https://code.launchpad.net/~smoser/cloud-init/+git/cloud-init/+merge/334074 was blocking https://code.launchpad.net/~yeazelm/cloud-init/+git/cloud-init/+merge/331897 but shouldn't be anymore.17:09
ajorgI'll remind Matt to try it again now.17:09
blackboxswthanks good dela17:13
blackboxswdela17:13
blackboxswdeal17:13
blackboxswgeez17:13
blackboxswon that note. I think it's time for coffee17:14
blackboxswand time to end the meeting17:14
blackboxswHappy New Year again folks. Good to be back in the office.17:14
blackboxswthanks again for the chat, until next time..17:15
blackboxsw#endmeeting17:15
meetingologyMeeting ended Mon Jan  8 17:15:30 2018 UTC.17:15
meetingologyMinutes:        http://ubottu.com/meetingology/logs/cloud-init/2018/cloud-init.2018-01-08-16.03.moin.txt17:15
ajorgbye now17:15
blackboxswsee you ajorg and robjo  have a good one17:15
ajorgoh, actually before I leave, but not necessarily before you leave, what conferences are folks attending this year?17:16
blackboxswpowersj: mind promoting me to opp again?17:16
blackboxswor rharper17:16
blackboxswthx rharper17:16
rharpernp17:16
blackboxswI hadn't chosen yet.  I was think about LISA or debconf.17:17
blackboxswcloud foundry looks interesting too.17:18
blackboxswactually, no it doesn't, to me.17:22
ajorgI went to LISA when it was in Seattle. I'd probably go again if it was in Seattle again.18:00
powersjblackboxsw: debconf is in taiwan this year18:15
dpb1chad and I went in San Diego, it was a good conference, IMO18:16
powersjblackboxsw: smoser: some fun for you https://paste.ubuntu.com/26348213/18:16
blackboxswpowersj: guess that narrows down that choice18:16
blackboxswanyone heard much about http://devopssummit.sys-con.com/general/papers2018east.htm ?18:19
blackboxswcloud/devops expo18:19
blackboxsw?18:19
blackboxswI think marco ceppi went18:19
blackboxswnot sure if it's the 'right' venue18:20
=== shardy is now known as shardy_afk
smoserpowersj: i really should upload simplestreams to pypi18:34
smoserand do a release of that.18:34
powersjsmoser: yes you should18:34
smoserpowersj: responded to all of them.18:55
powersjsmoser: thanks!18:56
powersjafter lunch I'll go through 'em18:56
smoserrharper: or blackboxsw https://code.launchpad.net/~smoser/cloud-init/+git/cloud-init/+merge/335108 review woudl be appreciated19:01
blackboxswwill do. just posted archive of meeting notes https://cloud-init.github.io/status-2018-01-08.html#status-2018-01-0819:11
=== blackboxsw changed the topic of #cloud-init to: Reviews: http://bit.ly/ci-reviews | Meeting minutes: https://goo.gl/mrHdaj | Next status meeting: Monday 1/22 16:00 UTC | cloud-init 17.2 released (Dec 14, 2017)
dojordan@blackboxsw @smoser can you guys take a look at the new changes I made? https://code.launchpad.net/~dojordan/cloud-init/+git/cloud-init/+merge/33434120:55
blackboxswsmoser: quick discussion point on your maas oauth branch21:04
blackboxswlooking dojordan21:04
smoserblackboxsw: k21:38
smoserblackboxsw: ?21:48
blackboxswsorry, I missed something?21:48
blackboxswwas working on review comments ATM21:48
smoser"smoser: quick discussion point on your maas oauth branch"21:48
smoseri expected follow up on that21:49
blackboxswohh posted on your branch mso21:49
blackboxswsmoser:21:49
blackboxswjust wondered about pulling the required oauth token logic down into OauthUrlHelper21:49
blackboxswso that other callers (as they grow) could benefit from same behavior... warning and proceed w/out oauth21:49
smoserblackboxsw: yeah, i kind of saw that duplicated also... i think that sounds reeasonable.22:11

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