Sunday, 2017-08-20

*** isaacb has joined #zuul06:44
*** isaacb has quit IRC07:48
mordreddmsimard|off: well - we already save the inventory file ourselves and consider that safe from a zuul pov - I'm assuming that means the original files themselves and not necessarily any additional vars passed in as -e@foo.yaml  yeah?13:19
dmsimard|offmordred: yeah, the actual files13:20
mordredI do not think it would break anything for us at least13:21
dmsimard|offActually it's kind of scary, callbacks even have access to decrypted vault content and the vault password :/13:21
mordreddmsimard|off: yah - callbacks have to be trusted13:22
mordreddmsimard|off: btw - http://logs.openstack.org/24/495424/2/check/tox-linters/ff8cbf9/ara/13:22
dmsimard|offSweet!13:22
dmsimard|offSo, anyway, what I meant to say is that I might default collection to true and we'll need to toggle it off13:23
mordredI don't think we need to toggle it off - we dont put any sensitive data into inventory or hostvar/groupvar files13:24
dmsimard|offYou mentioned that extra vars file with secrets though, I haven't tested one of those but I suspect it'd be picked up too13:25
mordredyah - if you collect extra vars files passed via -e@ then that would be epicly bad13:25
dmsimard|offright, so basically there is a list of all the files (and their parsed contents, strings, lists, dicts) cached in the play/playbook context13:27
dmsimard|offtl;dr, ara will pick up all the files provided by cache.keys(). toggling that off entirely probably doesn't make a lot of sense so I guess the blacklist would need to be pattern/regex based13:29
dmsimard|offhttp://paste.openstack.org/raw/618853/13:30
dmsimard|offthat's the playbook scope, in the play scope there's even a (fully decrypted) vault file13:31
pabelangerhey, ara data13:32
dmsimard|offpabelanger: good morning :)13:33
pabelangerdmsimard|off: feature request! Sort plays by timestamp, they are reverse sorted now :)13:34
dmsimard|offpabelanger: yeah, I've been asked that before -- can't please everyone so I'll have to make it configurable13:34
dmsimard|offpabelanger: otherwise the people who prefer the current sorting will whine :)13:34
pabelangerwe also likely need to add full path to playbook location, make it easier to know which job pre.yaml comes from13:35
pabelangerdmsimard|off: :)13:35
dmsimard|offpabelanger: the full path to playbook is available if you hover the playbook file name and if you click on it13:35
dmsimard|off(also if you expand the files tab)13:36
pabelangerYa, but I have to click links :)13:36
pabelangerbut ya, looks good13:38
dmsimard|offpabelanger: playbook paths tend to be long at best though, we used to display it but it just looked clunky (too long) or wasn't useful (too truncated)13:38
dmsimard|offpabelanger: open to ideas though13:38
dmsimard|offpabelanger: what are you interested in the full path for ?13:38
pabelangerhttp://logs.openstack.org/24/495424/2/check/tox-linters/ff8cbf9/ara/ for example, look at the 3 pre.yaml files13:39
dmsimard|offoh, because there can be different pre.yaml files13:39
pabelangerat first glance, that is a little confusing13:39
pabelangerhowever they are actually, from bottom up: git.openstack.org/openstack-infra/project-config/playbooks/base-test/pre.yaml git.openstack.org/openstack-infra/zuul-jobs/playbooks/unittests/pre.yaml git.openstack.org/openstack-infra/zuul-jobs/playbooks/tox/pre.yaml13:40
dmsimard|offI guess we could at a minimum put the playbook basedir13:40
pabelangerlike you said, you can find the info by deep links13:41
dmsimard|offwithout sacrificing ux13:41
pabelangerextra_vars Parameter not saved by ARA due to configuration13:42
pabelangerso, what data do you see there, if it was saved?13:42
pabelangerthe contents of extra_vars files?13:42
dmsimard|offpabelanger: no, it would be the actual string, like "-e @file.yml"13:43
pabelangerokay, cool13:43
dmsimard|offpabelanger: the contents is retrieved another way, and that's what I was discussing with mordred just now13:43
mordredyah - the file_cache13:43
pabelangerYa, that what I thought so13:43
pabelangerso, we need to be super careful not to leak that :)13:43
dmsimard|offpabelanger: in 1.0 ara will pick up like everything that's loaded by ansible so I'll implement a blacklisting mechanism, probably pattern/regex based13:44
dmsimard|offpabelanger: ara even has access to fully decrypted vault files so..13:44
mordredwell, we don't use vault for anything, so that's ok :)13:44
dmsimard|offyou'd find that this would probably be CVE worthy for some folks though :p13:45
* mordred hasn't figured out how to make vault useful tbh13:45
pabelangerlooking at the files tab is interesting, should be helpful for people to understand out directory structure13:45
mordredit requires a password on invocation - which would imply people running ansible by hand, which seems crazy to me13:45
mordredpabelanger: ++13:45
dmsimard|offmordred: the password can be in a file13:45
pabelangerdmsimard|off: do you server up facts some place? I see Gathering Facts task, but no results. Is that intentional?13:46
pabelangerserve*13:46
dmsimard|offpabelanger: in the hosts tab, hover or click on the hosts13:47
pabelangerokay cool, localhost is empty.13:47
pabelangerThere is no host statistics for this playbook.13:47
pabelangersame with static.o.o13:47
dmsimard|offpabelanger: post-logs ?13:47
pabelangerya13:48
dmsimard|offpabelanger: yeah sort of chicken and egg, looks like you're exporting as part of that playbook so the playbook hasn't finished yet13:48
dmsimard|offpabelanger: so it means that ara didn't run the v2_playbook_on_stats callback event for that playbook13:48
mordredwell - it did, just not before we exported the html13:49
dmsimard|offpabelanger: see the icon on the left, it says it's incomplete13:49
mordredthe end of post-logs will always be missing13:49
pabelangerYa, that13:49
pabelangerotherwise, we'd need to move that into zuul, like we did for ssh-agent13:49
dmsimard|offah I see, yeah, well.. not much ara can do about that unless an external process (ex: bash after the last ansible-playbook command) generates the html13:49
mordredyah - I think the benefit of having log publication be ansible content and therefor flexible by installation outweighs the gathering the logging of commands that do the logging13:50
pabelangermordred: dmsimard|off: Looks good, at first glance I don't see any issues with the data ARA is generating. Everything there is what I would have expected to be displayed13:51
mordredpabelanger: I agree13:51
dmsimard|offpabelanger: so I was mentioning that there'll be more files in 1.0 than there are now -- stuff like meta/defaults/handlers files for roles for example, or hostvars and groupvars files13:52
pabelangerdmsimard|off: maybe at PTG we can start looking at moving js bit to CND, so dedup some of the data on logs.o.o13:52
dmsimard|offI'll also add host groups (which group a host is in), as well as what roles were invoked during that playbook13:53
pabelangerwouldn't be much work to start logs.o.o/ara/html-bit, or something. Then we'd maybe have a cfg file setting to use that path in html13:53
dmsimard|offpabelanger: yeah, we can definitely hack on that13:54
dmsimard|offThe js/css/font files for ara are not negligible in size13:54
dmsimard|offbtw where is the post-logs code ?13:55
pabelangerproject-config13:55
pabelangertrusted playbooks13:55
mordredthe roles are in git.openstack.org/openstack-infra/zuul-jobs/roles13:55
pabelangerdmsimard|off: I think that is from base-test13:56
dmsimard|offgot it, thanks, sending a quick patch13:56
mordredyah - we're rolling out a bunch of changes to that right now13:56
mordreddmsimard|off: look at http://git.openstack.org/cgit/openstack-infra/project-config/tree/playbooks/base-test/post-logs.yaml13:56
mordredand/or the end of this stack: https://review.openstack.org/#/c/495464/113:57
mordredspeaking of - pabelanger, if you have a sec, I'd love ot land ^^ that stack13:57
pabelanger+313:59
mordredpabelanger: I think with those and 2 related project-config patches we'll be good to go with this and ready for the base job patch13:59
pabelangermordred: approved them too14:01
mordredwoot!14:02
pabelangerExciting!14:02
openstackgerritMerged openstack-infra/zuul-jobs master: Document and update fileserver roles  https://review.openstack.org/49429114:02
openstackgerritMerged openstack-infra/zuul-jobs master: Add zuul_return call into upload-logs role  https://review.openstack.org/49546114:03
openstackgerritMerged openstack-infra/zuul-jobs master: Copy inventory as part of validate host  https://review.openstack.org/49546414:03
openstackgerritDavid Moreau Simard proposed openstack-infra/zuul-jobs master: Add support for gzipping static ARA reports  https://review.openstack.org/49555114:16
dmsimard|offmordred, pabelanger: fyi https://review.openstack.org/#/q/topic:ara-gzip14:17
openstackgerritMonty Taylor proposed openstack-infra/zuul-jobs master: Remove bogus post_tasks line from upload-logs  https://review.openstack.org/49555314:18
mordreddmsimard|off: sweet14:18
mordredpabelanger: ^^ we landed an oops14:18
mordred:)14:18
mordreddmsimard|off: patch looks great - left two small suggestions that should be easy fixes14:23
openstackgerritMerged openstack-infra/zuul-jobs master: Remove bogus post_tasks line from upload-logs  https://review.openstack.org/49555314:25
pabelangermordred: oops14:26
mordredpabelanger: I force-landed it. the syntax error broke the gate job.14:26
pabelangerk14:26
openstackgerritDavid Moreau Simard proposed openstack-infra/zuul-jobs master: Add support for gzipping static ARA reports  https://review.openstack.org/49555114:38
mordreddmsimard|off: +214:43
mordredpabelanger: woot! https://review.openstack.org/#/c/495424/ ran with all the patches applied and it all looks good15:02
dmsimard|offlol, TFW you think maybe someone else figured out a solution but in the end it's the same hack :( https://github.com/openstack-infra/zuul/blob/7dfd7cae7a7c4c618ef6b987994fe779fb33933b/zuul/ansible/callback/zuul_stream.py#L49215:03
* dmsimard|off asks #ansible-devel15:04
pabelangermordred: Yay15:04
openstackgerritDavid Moreau Simard proposed openstack-infra/zuul feature/zuulv3: Retrieve filtered list of hosts for a task, not all hosts  https://review.openstack.org/49556116:09
dmsimard|offturns out I found a solution ^16:09
dmsimard|off(when figuring out the same issue in ara..)16:09
openstackgerritDavid Moreau Simard proposed openstack-infra/zuul feature/zuulv3: Retrieve filtered list of hosts for a task, not all hosts  https://review.openstack.org/49556116:10
dmsimard|offbtw have you started testing with ansible 2.4 ?16:18
*** yolanda has quit IRC19:15
*** yolanda has joined #zuul19:18
mordreddmsimard|off: not yet - it's on the TDL19:27
mordredSpamapS: https://review.openstack.org/#/c/495440 tiny #notaminusone nit19:57
mordredjeblair: if you happen to look in IRC - there's a weirdness with the base job (I merged the patch along with a fix that was immediately apparent) ...21:40
mordredjeblair: NEVERMIND I believe I see the issue21:41
mordredjeblair: tl;dr - openstack-publish-tarball removal job landed, but still had a reference to openstack-publish-tarball as a base job for release-openstack-python - this causes the config in zuul.yaml in project-config to be invalid - which, if I'm understanding correctly, means that zuul did not update the config from the config contained in that file21:45
mordredjeblair: however, the patch to add the secret to base came after that - so zuul hasn't been able to update its config to match what's in the project-config repo21:45
mordredthis won't happen in "normal" operation as v3 would be the one responsible for landing changes, not v2, so the syntax checks would be binding21:46
mordredjeblair: I believe landing https://review.openstack.org/#/c/495659/ will allow v3 to be able to appropriately read the config from project-config and apply it, which will update the base job definition to include the secret as is currently in the file21:47
mordredpabelanger: you may also find the above interesting22:09
mordredyay that fixed it22:13

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