Friday, 2017-03-17

leifmadsenoh got splunk :)02:27
leifmadsendmsimard: the real solution to pumping it into ES is probably to use filebeat02:27
leifmadsens/got/god./02:27
leifmadsendmsimard: the other thing around that manifesto is that it can be a bit of a living document that can change over time to adjust to knowledge learned. No reason to not merge it as it's just git :)02:28
leifmadsenMy own manifesto... http://blog.leifmadsen.com/blog/2015/11/19/rules-for-the-greater-goodness-a-product-development-guide/02:28
leifmadsenI already know a lot of people hate me based on number 1 :)02:28
dmsimardleifmadsen: fair but I reached out to a lot of folks to have input on the manifesto, no rush to merge it -- monday is fine for me02:29
leifmadsenfor sure02:29
leifmadsenI guess I mean leaving it open for weeks, not days :)02:30
dmsimardsure02:30
dmsimardno java ?02:30
dmsimardokay in my book02:30
dmsimardone of my own is right tool for the right job02:30
dmsimardI've seen people write shell scripts in php :/02:30
dmsimardit's about the same level of doing shell scripts in nodejs02:31
leifmadsenI write too many shell scripts :)02:38
leifmadsenI should learn a real language some day02:38
*** karimb has joined #ara09:24
*** Maximus86 has joined #ara10:34
Maximus86dmsimard: unable to reproduce my own issue at the moment, starting from a clean install of centos 7.2 minimal in order to create a bash script for reproducing10:35
Maximus86dmsimard: I have the script, but it's not doing a lot10:36
Maximus86dmsimard: my previous installations were from a kickstart file10:36
Maximus86dmsimard: which I created for my work here, so it already deviated from standard. Afterwards some basic stuff was set on it via Ansible10:37
Maximus86dmsimard: now I need to track down what could be different10:37
*** karimb has quit IRC11:04
*** karimb has joined #ara11:06
*** BlessJah has joined #ara11:21
BlessJahara does not report correctly on tasks in loops (do_with), it says "One or more item failed"11:23
BlessJahis this known issue (missing feature)?11:23
dmsimardBlessJah: that is what Ansible sends to ara :(11:37
dmsimardI don't know if there is an issue in Ansible upstream to improve what Ansible sends to callbacks for looped tasks11:37
dmsimardMaximus86: ack, so something coming from your Kickstart perhaps ?11:38
BlessJahdoes ara have a bugtracker?11:39
BlessJahdmsimard: I've used register and ara_record, the data is available there11:50
BlessJahbut I had to "failed_when: false" to allow next task (ara_record) to run, thus loosing information that failure happened11:51
dmsimardBlessJah: it does, it's the new openstack tracker but I need to write down some documentation on how to use it.12:02
dmsimardhttps://storyboard.openstack.org/#!/search?project_id=84312:02
BlessJahkthx12:02
dmsimardIf that sounds too intimidating, you can use github.com/dmsimard/ara and I'll handle it there or migrate it myself12:02
dmsimardBlessJah: instead of using failed_when perhaps you could use a block/rescue/always :)12:03
dmsimardSo that you can properly fail, say run the record task in the rescue and then have a fail task12:05
leifmadsenoh I like the look of storyboard so much more than launchpad12:35
dmsimardleifmadsen: they've done a good job so far. It still needs some work but it's usable.12:37
leifmadsendmsimard: I'm trying to figure out how to link issues to reviews...12:37
leifmadsenother than just adding a note...12:37
leifmadsenthat might be the only way unfortunately12:38
dmsimardleifmadsen: Story: and Task:12:39
leifmadsenworklist needs cleaning up it seems12:39
dmsimardThere is gerrit integration (links in review and comments in storyboard)12:40
leifmadsenthere is?12:40
leifmadsenhrmmm12:40
leifmadsenlooking here https://storyboard.openstack.org/#!/story/200086812:40
leifmadsen(mostly playing because I hadn't looked at storyboard yet)12:40
dmsimardleifmadsen: I didn't put the story# in the commit message12:41
leifmadsengotcha12:41
leifmadsenlike I said, I'm mostly just playing, learning how this could operate :)12:41
dmsimardI'll add it in a minute12:41
leifmadsenyea all good, just seems like you should be able to link the other way easy enough as well12:42
leifmadsenbut guess project is still pretty new12:42
dmsimardit's been like two years in the making already :p12:46
*** karimb has quit IRC13:09
*** karimb has joined #ara13:18
Maximus86dmsimard: is ara prefetching the whole page in the UI?13:28
dmsimardMaximus86: define whole page13:29
dmsimardMaximus86: in the reports page, the different result tables are loaded asynchronously (AJAX) and things like host facts, files or task results are iframes so they are not loaded13:30
Maximus86running some tests atm  on anm13:30
Maximus86*on an underpowered VM and it's locking up my browser, saw a bunch of DB calls in the log13:31
Maximus86hence my question13:31
Maximus86(underpowered because of my shitty laptop and too much other stuff running)13:32
Maximus86still not able to reproduce the issue13:32
Maximus86(on the minimal install)13:34
dmsimardMaximus86: running a db with a couple hundred thousand records in the embedded server worked fine straight from my laptop (and in fact I used it to optimize performance) so it shouldn't be too bad13:35
dmsimardMaximus86: this one :) https://twitter.com/dmsimard/status/83890323025600921813:36
Maximus86that's neat13:36
Maximus86which db?13:36
Maximus86*which db server should be the correct question13:37
dmsimardthat was sqlite13:37
Maximus86that's impressive as hell13:37
dmsimardsqlite is really really performant13:37
dmsimardI don't know where it's bad reputation comes from13:38
Maximus86was it not with data corruption?13:38
dmsimard¯\_(ツ)_/¯13:38
dmsimardsqlite is a very fine solution if you don't need stuff like network access or authentication13:38
Maximus86I'll look into it, it sure is impressive. I'm using ARA with mysql as I already have that db server running for other applications on the same host13:39
Maximus86what bothers me more than the ajax errors13:40
Maximus86are KeyError: '001_initial_revision_py'13:40
Maximus86in the apache log13:40
Maximus86I don't have them on the complete-from-scratch test machine either13:41
dmsimardMaximus86: so you can't reproduce your issue outside of your kickstarted environment ?13:45
Maximus86so far, no.. but working hard to break it :P13:46
dmsimardMaximus86: lol13:46
BlessJahdmsimard: block/always works as a charm13:46
dmsimardBlessJah: \o/13:46
dmsimardMaximus86: perhaps there is a conflict of python libs in your kickstarted environment13:46
dmsimardMaximus86: i.e, a rpm install of python-something and a pip install of something13:46
Maximus86yeah, ansible is installed from RPM, and later updated via pip13:47
Maximus86already looking into that13:47
dmsimardBlessJah: your comment came up before, I'll try and look if there's an issue upstream now.13:49
* dmsimard searches through 1718 opened issues13:49
BlessJahdmsimard: do you plan to add tower-like features? triggering ansible, authorisation, dashboard?13:53
dmsimardBlessJah: nope, none of that13:53
dmsimardBlessJah: If you'd like some background/context, there is http://ara.readthedocs.io/en/latest/faq.html#why-don-t-you-use-ansible-tower-rundeck-or-semaphore and also something I'm working on right now: https://review.openstack.org/#/c/446709/4/doc/source/manifesto.rst13:54
BlessJahwhat's the scope of ara? centralized logging and visualisation?13:54
dmsimardBlessJah: yep.13:54
dmsimardBlessJah: for tower-like features, there is.... tower :)13:54
BlessJah$$$13:55
leifmadsengotta pay to play :)13:55
Maximus86did RH not opensource tower last fall?13:55
BlessJahdoesn't seem so13:56
dmsimardRed Hat acquired Ansible but Tower is not open source yet13:56
leifmadsennot open source yet13:56
Maximus86there's also foreman, which actually plays together very nicely with Ansible13:56
BlessJahyet?13:56
dmsimardThey'll open source it, it just takes time13:56
leifmadsenthat.13:56
leifmadsen:)13:56
leifmadsenit will be open sourced at some point though13:56
dmsimardIt's more work than people realize, you can't just go and do a git push to github and call it a day :)13:56
BlessJahtheforeman requires way too much resources13:57
BlessJahIt'd be nice to have text editor and crontab build into i.e. ara (yep it's against manifesto)13:59
dmsimardBlessJah: those are features that are available outside of ara14:00
*** Maximus86 has quit IRC14:00
dmsimardBlessJah: you can set a cron on your server or laptop to run ansible :)14:00
dmsimardand you have *gasp* vim or emacs if you're into that14:00
BlessJahyeah, been there done that14:00
dmsimardBlessJah: the other thing with file editing is that ara doesn't store actual files14:01
dmsimardonly their content14:01
dmsimardso there's nothing to really edit in the first place14:01
BlessJahI'd prefer VCS hooked into jenkins feeding ara14:01
BlessJahdmsimard: it's good that ara stores file content and not read files on demand (what if user modifies said file after run?)14:02
BlessJahdmsimard: is the schema content-adressable? for deduplication?14:02
dmsimardBlessJah: it stores file content in a git-like way, sha1 hashed and zlib compressed14:02
dmsimardso we only ever store one copy of one file and compressed14:02
BlessJahlovely14:03
dmsimardif you run the same playbook with the same files 10 times, you only have the files once14:03
dmsimardif you do a select in the database you'll see gibberish but that's not exactly an expected way of browsing the file content14:03
* BlessJah is inspecting schema right now14:03
*** tbielawa has joined #ara15:09
*** jparrill has joined #ara15:32
*** themurph has quit IRC15:44
*** themurph has joined #ara15:45
*** jparrill has quit IRC16:11
tbielawadmsimard: i'm attempting to learn the gerrit + git-review system now.16:31
tbielawagot launchpad hooked up, managed to locate the project on review.openstack too!16:31
tbielawawhere does your commit actually live? I had to clone from github, but I guess your commits live on the openstack git repos...16:31
dmsimardtbielawa: gerrit takes some time to get used to but after that you can't work with anything else :)16:32
tbielawaoh snap. i think I can just click a line to add comments.16:32
tbielawawe'll see about that16:32
dmsimardtbielawa: under the hood, gerrit is the one hosting the git repo -- it creates refs with the commits in them16:32
dmsimardSo for https://review.openstack.org/#/c/446709/16:33
dmsimardThe commit is actually here https://review.openstack.org/gitweb?p=openstack/ara.git;a=commitdiff;h=a2e0a607de7a78122b94c567ddfac8dd35a205c216:33
dmsimardbut since the git repo is also mirrored16:34
dmsimardyou can also see it here: http://git.openstack.org/cgit/openstack/ara/commit/?id=a2e0a607de7a78122b94c567ddfac8dd35a205c216:34
tbielawamany places16:34
dmsimardor here: https://github.com/openstack/ara/commit/a2e0a607de7a78122b94c567ddfac8dd35a205c216:34
tbielawalol16:34
tbielawait IS on github?16:34
tbielawa$ git show a2e0a607de7a78122b94c567ddfac8dd35a205c216:35
tbielawafatal: bad object a2e0a607de7a78122b94c567ddfac8dd35a205c216:35
dmsimardtbielawa: you need to fetch the ref first16:35
dmsimardat the top right in gerrit16:35
dmsimardyou have a "download" button16:35
tbielawaso i need to add gerrit as a remote too then?16:35
tbielawaoh16:35
dmsimardnope, just git clone from github16:36
dmsimardand then you can do, like, git fetch https://git.openstack.org/openstack/ara refs/changes/09/446709/4 && git checkout FETCH_HEAD16:36
dmsimardto check out that particular patch16:36
tbielawamy brain is trying to figure out what assumptions there are that make that intuitive in any way16:36
tbielawaheh16:36
dmsimardif you want to submit a new patch set, you check out the patch, edit what you need to edit and then do "git commit --amend" and then another "git review"16:36
dmsimardWhen you're happy with the review, you can submit it -- but you're not the one merging the code, gerrit is.16:37
dmsimardIt's quite different than github pull requests16:37
tbielawaoh snap, git remote add -f gettit https://git.openstack.org/openstack/ara actually worked16:37
dmsimardyeah, but you don't *need* to set the remote16:37
tbielawadifferent strokes, different people.16:38
dmsimardthe "git review" tool has a command for that actually16:38
dmsimardit's git review -s16:38
tbielawai checked out git review --list, then got the login prompt16:38
tbielawaand then errors. even w/ ssh key uploaded.16:38
dmsimardnot familiar with --list16:38
tbielawa     -l, --list16:39
tbielawa             List the available reviews on the gerrit server for this project.16:39
dmsimardI'm not sure that works16:39
dmsimardwell, never used it personally anyway16:39
tbielawalol. it didn't :)16:40
dmsimardhttps://review.openstack.org/#/q/project:openstack/ara works well enough for me16:40
dmsimardbut you can also make customized dashboards with different criterias16:40
tbielawainteresting16:41
tbielawaohhhhhhhhhhhhhhhhhhhh snap. I manually set my gerrit name and then cloned from git.openstack. then! then git review --list worked16:43
tbielawanice nice nice16:43
tbielawanice! git review -d 44670916:46
tbielawaperfect16:46
tbielawa$ git review -d 44670916:47
tbielawaDownloading refs/changes/09/446709/4 from gerrit16:47
tbielawaSwitched to branch "review/david_moreau_simard/446709"16:47
tbielawadmsimard: i clicked a line on here https://review.openstack.org/#/c/446709/4/doc/source/manifesto.rst and entered some review text. it's there now on my screen, says it's a Draft comment. I can edit or discard16:59
tbielawanot sure how to just save the review comment though16:59
tbielawaI am also trying to submit a new patchset for review with some x-refs17:00
dmsimardIn the main review page, click reply at the top and then submit17:00
dmsimardtbielawa: a new patchset for the manifesto review or something else ?17:01
tbielawamanifesto review17:01
tbielawaoh my, this interface looks so simple but aparantly it's more web two-point-oh than I though. I figured that navigating away from the manifesto page was going to forget my changes.17:01
dmsimardDon't submit new patches for reviews that aren't yours :p17:01
tbielawalol17:01
dmsimardUnless you're taking over the patch and it was agreed or something17:02
tbielawaI got ya17:02
dmsimardProper etiquette :)17:02
tbielawaah, i did it! first gerrit review reply17:02
dmsimardAchievement unlocked17:02
tbielawa:DD17:02
dmsimardtbielawa: now if you want I can even show you how to add that little message that ARA is loaded before running the playbook if you'd like17:04
tbielawalet me guess first17:04
tbielawayou did write some contributing docs after all. lemme see what you got here17:04
dmsimardtbielawa: okay, sure17:04
tbielawaclone, checkout new branch, commit, git review17:04
dmsimardbut I meant like, where in the code :p17:04
dmsimardyou don't necessarily need to checkout a new branch17:05
dmsimardyou can check out master17:05
tbielawaah, so not exactly like this https://ara.readthedocs.io/en/latest/contributing.html#sending-a-patch-for-review17:05
dmsimardyou can also base patches on top of each other17:05
tbielawaso many options! nice17:05
dmsimardtbielawa: yeah you can use a new branch, just saying it's not necessary17:05
tbielawaYou can point me at the right file to add that little loaded message :-)17:05
dmsimardtbielawa: probably somewhere in there: https://github.com/openstack/ara/blob/master/ara/plugins/callbacks/log_ara.py#L25517:06
tbielawathen I'll do the hard stuff, like following whatever pattern youve' established now for toggling config options, like adding an 'enable "ara loaded" message' switch17:06
tbielawanice nice nice. ty17:06
dmsimardtbielawa: bah I don't think we need a config option for that17:07
tbielawanah? i figured some folks would like quiet over loud. make it verbose if you wish kind of approach17:07
dmsimardit's probably fine to just print a little line (and eventually get rid of the obnoxious alembic migration messages)17:07
* tbielawa nods17:08
tbielawaack17:08
dmsimardtbielawa: so another thing17:08
dmsimardtbielawa: is that there are gate jobs17:08
dmsimardso if you look at https://review.openstack.org/#/c/446709/17:08
tbielawai see them there, yeah17:08
dmsimardthey're there on the right hand side17:08
tbielawathe jenkins checks table17:08
dmsimardclicking on the job name gets you something like this: http://logs.openstack.org/09/446709/4/check/gate-ara-integration-latest-centos-7/6b27841/17:08
dmsimardconsole from the job http://logs.openstack.org/09/446709/4/check/gate-ara-integration-latest-centos-7/6b27841/console.html (timestamps are clickable for direct links)17:09
tbielawaNICE. that'll make tracking down build fails easier17:09
dmsimardand then you have different logs here http://logs.openstack.org/09/446709/4/check/gate-ara-integration-latest-centos-7/6b27841/logs/17:09
dmsimardfor example http://logs.openstack.org/09/446709/4/check/gate-ara-integration-latest-centos-7/6b27841/logs/build/17:09
tbielawaneat17:10
BlessJahdmsimard: could setup task receive some default taskname? "Setup <host>" or sth would make report look better imo17:19
dmsimardBlessJah: ah, another part of the manifesto :D17:20
BlessJahwhich one?17:20
dmsimardBlessJah: ARA doesn't change or transform what ansible provides17:20
dmsimardIt's pass-through17:20
BlessJah:/17:21
dmsimardSo we could have ansible do a better job and give a proper name to the "meta" setup task17:21
* BlessJah starts to really like this project17:23
dmsimardBlessJah: so I tell you no and you like it ? that's cool too :p17:24
dmsimardBlessJah: so it's probably somewhere in here: https://github.com/ansible/ansible/blob/edcbef27ec0c9ee9bec1b1898c9b3b57ddc2b029/lib/ansible/modules/system/setup.py17:26
BlessJahyou have vision (manifesto), and reasonable explanation when you reject such ideas17:27
BlessJahwhat I'd like to see though is "ongoing" status instead of "aborted" when ansible is running17:28
dmsimardah, yeah, I think that's written down somewhere17:28
BlessJahand yes, I know why job is "aborted" and why it may not be possible to do it17:29
dmsimardThe wording is important though, it says incompleted, not aborted17:29
dmsimardWhich, technically, it is incomplete :P17:29
dmsimardBlessJah: https://storyboard.openstack.org/#!/story/200085217:29
dmsimardIt's not an easy problem from the perspective of ara17:30
BlessJahit reads "Playbook execution was interrupted: data may be incomplete and inconsistent"17:30
dmsimardBlessJah: oh, I screwed up that wording then17:30
dmsimardLet's fix it17:30
BlessJahmessage is the same for running and actually aborted tasks17:31
dmsimardyeah, I'll removed the wording around interrupted17:31
dmsimardara doesn't have a way to know or differentiate between the two17:31
dmsimardI explained a bit the context in that storyboard link I sent17:31
BlessJahyep, you'd need ansible/ara-plugin side daemon and ara-server side daemon communicate17:32
dmsimardyes and no17:33
dmsimardansible just sends events to ara17:33
dmsimardara doesn't know if there are any more events coming17:33
dmsimardthe only thing it knows is if the playbook has finished running because there is a hook for that17:33
BlessJahcan you differentiate between different aborts? e.g. network dies between ansible and ara, ansible dies because of ^C, ansible dies because of pause/abort?17:35
dmsimardansible might, ara wouldn't17:35
dmsimardtechnically when something is interrupted, it's ansible, not ara17:36
dmsimardansible just sends data to ara, ara doesn't really "run"17:36
dmsimardon a per-hook basis17:36
dmsimardthe hooks look like this: https://github.com/ansible/ansible/blob/devel/lib/ansible/plugins/callback/__init__.py#L218-L38517:37
dmsimardBlessJah: fyi ansible dev told me that gather_facts will have a task name in Ansible 2.3 :)17:44
dmsimard'Gathering facts'17:46
BlessJahany SQL injections lurking in task names? :D17:46
dmsimardI would hope not but I haven't tried or had a formal security audit done17:48
dmsimardARA isn't coded in PHP with it's own SQL unescaped queries :p17:50
leifmadsen:D17:50
BlessJahdmsimard: indeed the task has a name17:54
* dmsimard needs to test ansible 2.1.5, 2.2.3 and 2.317:56
dmsimardoh, 2.2.217:56
* BlessJah tested pip install https://github.com/ansible/ansible/archive/v2.3.0.0-0.1.rc1.tar.gz18:04
dmsimardohhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh18:09
dmsimardhttps://twitter.com/dmsimard/status/84280096494818918518:13
dmsimardjrist: ^18:14
dmsimardtbielawa: oh no you're an emacs guy18:38
* dmsimard runs away18:38
tbielawasomebody just saw my twitter18:41
tbielawa:-)18:41
tbielawawho wouldn't like M-x ansible-doc18:42
tbielawato look up module documentation18:42
*** tbielawa is now known as tbielawa|lunch18:45
dmsimard:)18:46
jrist they look good dmsimard !19:17
BlessJahdmsimard: have you thought about exposing API for plugin, instead of connecting directly to database?19:31
BlessJahfor local setup there is no difference (local sqlite may even be preffered) but for remote ara server it doesn't feel right to directly expose db to probably semi-trusted nodes (i.e. jenkins executors)19:34
*** tbielawa|lunch is now known as tbielawa19:45
dmsimardBlessJah: yes20:24
dmsimardBlessJah: eventually want to separate callback/client/server/api/webapp20:24
BlessJahgreat20:25
BlessJahthat's what I wanted to hear :D20:25
*** tbielawa is now known as tblablabrb20:28
*** tblablabrb is now known as tbielawa20:45
*** tbielawa has quit IRC20:55
*** karimb has quit IRC21:51

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