*** dcreno has joined #ara | 00:39 | |
*** dcreno has quit IRC | 00:43 | |
*** dcreno has joined #ara | 00:55 | |
*** dcreno has quit IRC | 01:01 | |
*** dcreno has joined #ara | 01:02 | |
*** dcreno has quit IRC | 01:07 | |
*** dcreno has joined #ara | 01:08 | |
*** harlowja has quit IRC | 01:19 | |
*** dcreno_ has joined #ara | 02:25 | |
*** dcreno has quit IRC | 02:28 | |
*** dcreno_ has quit IRC | 03:39 | |
*** bcoca has quit IRC | 04:28 | |
*** Bakey has quit IRC | 04:36 | |
*** sshnaidm_pto has quit IRC | 05:28 | |
ssbarnea | dmsimard: i was afraid you may say this. if you have any ideas about workarounds feel free to shout. | 07:18 |
---|---|---|
ssbarnea | also please review https://review.gerrithub.io/#/c/redhat-openstack/infrared/+/374509/ --- before i start pinging my guys :) | 07:19 |
ssbarnea | i possible to tell ara to reset/wipe/prune its database? it would find this useful for CI job or scripts. | 07:22 |
*** rvgate has quit IRC | 07:49 | |
*** rvgate has joined #ara | 07:50 | |
*** sshnaidm_pto has joined #ara | 08:25 | |
openstackgerrit | Sorin Sbarnea proposed openstack/ara master: Documented nginx config for static serving https://review.openstack.org/571220 | 08:31 |
ssbarnea | dmsimard: i think I found a way to address the issue of expected failures, see https://github.com/redhat-openstack/infrared/blob/a0c3eb5b4b4b5dc9c7db13bf1957b598b358cf48/infrared/common/callback_plugins/junit_report.py#L19 | 09:16 |
ssbarnea | i didn't even know that this callback existed on infrared | 09:17 |
openstackgerrit | Sorin Sbarnea proposed openstack/ara master: Allow junit reports task result overriding https://review.openstack.org/571430 | 09:57 |
*** jlozadad_ has quit IRC | 11:20 | |
*** sshnaidm_pto has quit IRC | 12:02 | |
*** jlozadad_ has joined #ara | 12:08 | |
*** dcreno has joined #ara | 12:19 | |
*** dcreno has quit IRC | 12:20 | |
*** dcreno has joined #ara | 12:21 | |
dmsimard | ssbarnea: that's upstream actually, not sure why it's in infrared https://github.com/ansible/ansible/blob/devel/lib/ansible/plugins/callback/junit.py | 12:25 |
ssbarnea | dmsimard: maybe it was added to ansible recently and our min supported version does not have it. i don't know, i only assume. | 12:26 |
dmsimard | ¯\_(ツ)_/¯ | 12:26 |
dmsimard | I'll look at your patches later today, have some back to back meetings | 12:26 |
ssbarnea | thanks | 12:28 |
ssbarnea | but I found one serious bug in junit. aparently the task output was not saved into the junit file, only a single line was stored which is useless. i am trying to find the reason now and make another patch. | 12:38 |
*** dcreno has quit IRC | 12:45 | |
*** dcreno has joined #ara | 12:46 | |
*** dcreno has quit IRC | 12:50 | |
dmsimard | ssbarnea: in junit for ara ? | 12:59 |
*** mgariepy has joined #ara | 13:07 | |
*** odyssey4me has joined #ara | 13:11 | |
*** hughsaunders has joined #ara | 13:15 | |
hughsaunders | Hello | 13:16 |
hughsaunders | odyssey4me: mentioned that someone was asking about junit export? | 13:16 |
odyssey4me | dmsimard ^ | 13:16 |
dmsimard | hughsaunders: ohai | 13:19 |
hughsaunders | sup dmsimard | 13:19 |
dmsimard | hughsaunders: are you still using the junit export you contributed ? :D | 13:19 |
hughsaunders | yep | 13:19 |
dmsimard | hughsaunders: sweet, ssbarnea started using it and was curious if there was a way to exclude, for example, known issues | 13:20 |
dmsimard | he submitted https://review.openstack.org/#/c/571430/ and I was wondering if you had a similar use case | 13:20 |
hughsaunders | no, but I saw the a review about adding expected failures etc | 13:21 |
hughsaunders | ah yes that one | 13:21 |
hughsaunders | Erm not really, we haven't had a situation where we've expected an ansible task to fail, without it being ignored or failed_when false in the playbook | 13:22 |
hughsaunders | failed_when: false is a non issue, because effectively the task/test passes, and export already handles ignored failures | 13:22 |
hughsaunders | I'm not really sure how the change is useful as if you can modify the playbook to insert the code phrase into the task name, you could also manipulate the failure logic of the task? | 13:26 |
ssbarnea | hughsaunders: this expected failure was a special case, inside infrared unit-tests, which are running various ansible tasks. | 13:27 |
ssbarnea | i doubt that in normal execution we would encounter this, but unittesting is one such case. | 13:28 |
dmsimard | ssbarnea: I wonder if using an ansible tag would be better than expecting something in the task name | 13:30 |
dmsimard | ssbarnea: ansible-lint has something like that for things that shouldn't be lint enforced | 13:30 |
*** sshnaidm_pto has joined #ara | 13:31 | |
hughsaunders | ssbarnea: iiuc expected failure is pretty much `failed_when: false`, and toggle result is `failed_when: result|success` | 13:31 |
ssbarnea | could be arguable, but because we already have a reference implementation, it would be a no brainer to make a decision. | 13:31 |
dmsimard | https://github.com/willthames/ansible-lint#false-positives see "skip-ansible-lint" | 13:31 |
*** dcreno has joined #ara | 13:31 | |
*** bcoca has joined #ara | 13:31 | |
*** bcoca has joined #ara | 13:31 | |
ssbarnea | ansible callback does this, no reason why we would do something different, unless we want to feel special ;) | 13:32 |
hughsaunders | hmm, maybe not quite as with expected failure you want a success to cause a test failure? | 13:32 |
hughsaunders | ssbarnea: I'm not sure anoutput filter is the place to manipulate results as the html report and junit reports may have different results for the same task | 13:33 |
dmsimard | ssbarnea: this just gave me an idea and sharing it for the record so I don't forget about it.. | 13:35 |
dmsimard | The vision with the core of ara 1.0 is basically 1) a callback that records/indexes everything in an organized way in a database 2) an API to interface that database ... the rest is basically different integrations leveraging the API (different exports, e.g, influxdb like tripleo is doing, junit, subunit, logstash, etc.) | 13:37 |
dmsimard | I wonder if there's a real need to have these in ARA or if ARA could somehow "replay" a playbook execution through to a native callback | 13:38 |
dmsimard | so for example, instead of "exporting" to junit with our own implementation, we'd re-run that playbook somehow *waves hands* through the callback | 13:39 |
dmsimard | The question is "Why not include the native callback in your initial real playbook run in the first place ?" -- each callback adds overhead that adds up over the course of a run and it might not always be relevant to run them (unless something fails, for example) | 13:40 |
dmsimard | If something like this would be possible, it would prevent essentially re-writing and maintaining different exports from ARA | 13:41 |
dmsimard | bcoca: ^ I'm probably saying nonsense but curious to know what you think | 13:42 |
*** Bakey has joined #ara | 13:43 | |
dmsimard | (in the context of ARA currently supporting exporting to junit, subunit and other things which are more or less equivalent to the upstream callbacks) | 13:43 |
bcoca | i have not had coffee today, so nonsense probably sounds good | 13:44 |
* bcoca reads backlog | 13:44 | |
bcoca | jtanner beat you to it, he created a 'ansible replay' which would do most of what you want | 13:45 |
dmsimard | bcoca: tl;dr somehow replay things through callbacks after the fact | 13:45 |
dmsimard | bcoca: orly | 13:45 |
dmsimard | where is that | 13:45 |
hughsaunders | dmsimard: why replay the playbook, when ara has already extracted the useful info? | 13:46 |
dmsimard | hughsaunders: it wouldn't really re-run the playbook | 13:46 |
hughsaunders | I guess I see ara as input ( callback ) --> Process/Store (db and stuff) --> Output (html, junit etc) | 13:47 |
bcoca | github.com/jctanner/ansible-vcr | 13:47 |
dmsimard | hughsaunders: it would be like "ara export <callbackname> <playbook_id>" and that would throw all the data to the callback as ansible would've done it | 13:47 |
hughsaunders | dmsimard: oh, so you use the same callback interface as ansible so users could use the same callback with ansible or with ara after the fact? | 13:48 |
hughsaunders | I guess a well defined interface between ara its various output generators would be useful. | 13:48 |
dmsimard | hughsaunders: something like that -- it might be unrealistic but think it's worth exploring | 13:48 |
dmsimard | hughsaunders: otherwise as time goes we'll be growing so many different export interfaces, in ara there's html, junit, subunit but I know people have written graphite and influxdb exports, there's also people interested in logstash, etc. | 13:49 |
dmsimard | If there's already native callbacks that are able to do that, I'd rather not reinvent any wheels | 13:50 |
hughsaunders | dmsimard: now I see the value | 13:50 |
hughsaunders | So we can take existing callbacks and use them as output filters, genius! | 13:51 |
hughsaunders | also saves runtime for people that want multiple output formats as they only need to run the ara callback during the actual playbook run and can generate other report formats afterwards | 13:51 |
*** tbielawa has joined #ara | 13:52 | |
dmsimard | hughsaunders: right, in the best interest of performance/latency | 13:57 |
dmsimard | hughsaunders: you understand the crazy idea then, I just don't know how realistic it is :) | 13:58 |
*** themurph has joined #ara | 14:05 | |
hughsaunders | dmsimard: the ansible-vcr project looks quite heavy, if its actually recording all the data that gets transferred to and from each managed node. | 14:06 |
hughsaunders | I guess a helpful thing about ara data is that it has all the logic in playbooks/roles (loops, conditionals, includes etc) expanded out into individual tasks. So iterating the playbooks and tasks to call the callbacks should be doable without too much logic. | 14:07 |
*** hughsaunders has quit IRC | 14:28 | |
*** dcreno has quit IRC | 14:39 | |
*** dcreno has joined #ara | 14:42 | |
*** jparrill has quit IRC | 14:42 | |
*** jlozadad_ has quit IRC | 16:09 | |
*** hughsaunders has joined #ara | 16:16 | |
*** dcreno has quit IRC | 17:07 | |
*** sshnaidm_pto has quit IRC | 17:08 | |
*** Bakey has quit IRC | 17:10 | |
*** jlozadad_ has joined #ara | 17:11 | |
*** sshnaidm_pto has joined #ara | 17:21 | |
*** tbielawa is now known as tbielawa|lunch | 17:24 | |
*** myoung is now known as myoung|lunch | 17:57 | |
*** gvincent_ has quit IRC | 18:05 | |
*** dcreno has joined #ara | 18:13 | |
*** tbielawa|lunch is now known as tbielawa | 18:45 | |
*** Bakey has joined #ara | 18:58 | |
*** tbielawa is now known as tbielawa|brb | 19:22 | |
*** jlozadad_ has quit IRC | 19:28 | |
*** themurph has quit IRC | 19:31 | |
*** themurph has joined #ara | 19:34 | |
*** myoung|lunch is now known as myoung | 19:34 | |
*** gvincent_ has joined #ara | 19:34 | |
*** tbielawa|brb is now known as tbielawa | 19:51 | |
*** harlowja has joined #ara | 20:01 | |
*** jlozadad_ has joined #ara | 20:02 | |
*** jlozadad_ has quit IRC | 20:11 | |
hughsaunders | dmsimard: I have a nagging feeling that I've asked this before... but any chance of adding /index.html to requests to directories when using the static report? | 20:23 |
hughsaunders | Very annoying when all the links work apart from the files links, see https://eeb7cf1e92033bf3c8b8-48da043f18b372769626ce4192bd6f56.ssl.cf1.rackcdn.com/PR_rpc-openstack-master-xenial_no_artifacts-swift-deploy_223/localhost/host/openstack/log/ara-report/reports/index.html for example, it links to directories like https://eeb7cf1e92033bf3c8b8-48da043f18b372769626ce4192bd6f56.ssl.cf1.rackcdn.com/PR_rpc-openstack-master-xenial_no_artifacts- | 20:34 |
hughsaunders | swift-deploy_223/localhost/host/openstack/log/ara-report/file/2fa20412-0cfc-4986-9559-8f4bd4cb8f54 which fails, but when /index.html is appended, the link works fine: https://eeb7cf1e92033bf3c8b8-48da043f18b372769626ce4192bd6f56.ssl.cf1.rackcdn.com/PR_rpc-openstack-master-xenial_no_artifacts-swift-deploy_223/localhost/host/openstack/log/ara-report/file/2fa20412-0cfc-4986-9559-8f4bd4cb8f54/index.html | 20:34 |
hughsaunders | oops line length fail | 20:35 |
*** dcreno has quit IRC | 20:49 | |
*** themurph has quit IRC | 20:49 | |
*** themurph has joined #ara | 20:49 | |
hughsaunders | seems I could probably sed the index.html and replace ([0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12})/" with \1/index.html" its not an elegant solution though :/ | 20:51 |
hughsaunders | FREEZER_RELATIVE_URLS | 20:59 |
hughsaunders | If set to True, Frozen-Flask will patch the Jinja environment so that url_for() returns relative URLs. Defaults to False. Python code is not affected unless you use relative_url_for() explicitly. This enables the frozen site to be browsed without a web server (opening the files directly in a browser) but appends a visible index.html to URLs that would otherwise end with / | 20:59 |
hughsaunders | ^ sounds like that could help | 20:59 |
*** harlowja has quit IRC | 21:00 | |
hughsaunders | oh, but its already enabled :( https://github.com/openstack/ara/blob/master/ara/config/base.py#L98 | 21:01 |
*** sshnaidm_pto has quit IRC | 21:01 | |
*** tbielawa is now known as tbielawa|g0n3 | 21:05 | |
hughsaunders | maybe using relative_url_for instead of url_for() would help | 21:06 |
hughsaunders | 46 hits for url_for, 0 for relative_url for... worth a try I guess. | 21:06 |
*** tbielawa|g0n3 has quit IRC | 21:22 | |
*** Pies has quit IRC | 21:26 | |
hughsaunders | If the FREEZER_RELATIVE_URLS configuration is True, Frozen-Flask will automatically patch the application’s Jinja environment so that url_for in templates is this function. | 21:33 |
hughsaunders | So it seems the url_for stuff should be ok as all the relevant calls are within templates, so should be patched | 21:36 |
hughsaunders | maybe this comment in file.py is relevant: | 21:37 |
hughsaunders | This is not served anywhere in the web application. | 21:37 |
hughsaunders | It is used explicitly in the context of generating static files since | 21:37 |
hughsaunders | flask-frozen requires url_for's to crawl content. | 21:37 |
hughsaunders | url_for's are not used with file.show_file directly and are instead | 21:37 |
hughsaunders | dynamically generated through javascript for performance purposes. | 21:37 |
hughsaunders | so maybe that javascript optimisation is preventing flask_frozens magic relative url patching from happening | 21:37 |
*** themurph has quit IRC | 21:40 | |
hughsaunders | dmsimard: why is this link rendered directly rather than using url_for? https://github.com/openstack/ara/blob/master/ara/templates/report.html#L20 | 21:48 |
hughsaunders | is it because its a direct link to a static file, not a flask view? | 21:49 |
* hughsaunders goes to bed | 21:50 | |
*** dcreno has joined #ara | 22:08 | |
*** harlowja has joined #ara | 22:21 | |
*** gvincent_ has quit IRC | 22:40 | |
*** gvincent has joined #ara | 22:42 | |
*** Bakey has quit IRC | 23:58 |
Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!