IQSS logo

IRC log for #dataverse, 2019-04-24

Connect via chat.dataverse.org to discuss Dataverse (dataverse.org, an open source web application for sharing, citing, analyzing, and preserving research data) with users and developers.

| Channels | #dataverse index | Today | | Search | Google Search | Plain-Text | plain, newest first | summary

All times shown according to UTC.

Time S Nick Message
05:47 jri joined #dataverse
07:06 jri joined #dataverse
08:00 jri joined #dataverse
09:22 dataverse-user joined #dataverse
10:20 jri joined #dataverse
10:30 jri joined #dataverse
10:35 jri_ joined #dataverse
10:36 poikilotherm joined #dataverse
10:37 poikilotherm Good morning America :-)
10:37 pdurbin mornin
10:38 poikilotherm We sunny weather at about 67°F
10:38 poikilotherm +have
10:38 poikilotherm Everything is nice and shiny
10:39 poikilotherm Hope you guys enjoyed your vacation during the easter holidays
10:39 pdurbin Nice. I don't have heat at home but the furnace guys are coming back today. Yes, nice Easter. I got to meet my new nephew, who is 7 months old.
10:39 jri joined #dataverse
10:41 poikilotherm Uh, cold shower...
10:41 poikilotherm Baby sounds nice :-)
10:41 pdurbin Hot shower. Separate hot water tank. :)
10:42 pdurbin and it only got down to 8 C (47 F) last night
10:43 poikilotherm *thumbs up*
10:44 pdurbin you may have noticed that the 4.13 artifacts have been uploaded
10:45 pdurbin war file, etc
10:45 poikilotherm Yeah, I did. Just merged #42
10:46 poikilotherm Will tag as soon as the master build on Docker Hub is done.
10:48 pdurbin nice
10:48 pdurbin Any more thoughts on making Dataverse testable?
10:48 pdurbin (more testable)
10:49 poikilotherm It might be woth a try to get things going with k3s
10:49 poikilotherm I am actually doing this in https://github.com/IQSS/dataverse-kubernetes/pull/43
10:49 poikilotherm K3s is small enough to fit into a CI pipeline
10:50 poikilotherm And it had been fast forward to use and deploy
10:50 poikilotherm Altough waiting for the glassfish war deployment is still an issue :-/
10:51 poikilotherm Its taking ages :-(
10:51 pdurbin At Easter a friend asked me what k8s is and I told her what I told you about renaming a certain git repo. What's k3s?
10:53 pdurbin "5 less than k8s"?
10:53 pdurbin I miss searchbot.
10:53 poikilotherm Yes!!!!
10:53 poikilotherm :-D
10:53 poikilotherm http://k3s.io
10:53 pdurbin Here was searchbot in action: http://irclog.iq.harvard.edu/dataverse/2016-04-04#i_33685
10:55 poikilotherm Well why dont you get him back?
10:55 poikilotherm "Him" haaha
10:55 pdurbin google shut down their api
10:55 pdurbin or something
10:56 pdurbin now iqlogbot is lonely, the only bot
10:56 poikilotherm Meh
10:56 pdurbin unless candy`_ is a bot...
10:57 pdurbin sometimes it's hard to tell
10:58 pdurbin Anyway, my guess is that you're oriented toward testing releases to prevent regressions from hitting your users. Basically, you'll skip deploying releases with bugs to prod. Is that right?
10:59 poikilotherm For k3s?
10:59 poikilotherm Sorry, I am puzzled about your current focus
11:00 pdurbin Ah, well, I guess I've been thinking about the phoenix server. You're familiar with it, I assume.
11:01 pdurbin I set it up years ago to run the API test suite before cutting a release.
11:01 poikilotherm About your bots: you could use sth. like hubot framework and google custom search engine with API key
11:01 pdurbin oh, maybe all I need is a key ok. searchbot was a supybot
11:01 poikilotherm Yeah, I am familiar with Phoenix :-)
11:02 pdurbin phoenix is an old centos 6 box in the basement of our building
11:02 poikilotherm API keys are for free in most cases when used for low traffic
11:02 poikilotherm Aye
11:02 poikilotherm You mentioned that a few times ;-)
11:02 pdurbin what I want, I think, is a new phoenix on ec2
11:02 pdurbin and maybe phoenix can be ephemeral
11:03 pdurbin only up for as long as the tests need to be run
11:03 pdurbin what's important to me is if the api test suite is passing or failing
11:03 poikilotherm Actually that's just the thing that happens in a CI pipeline
11:04 pdurbin sure, more automated
11:04 poikilotherm You spin up the services, run the tests and tear down
11:04 pdurbin I've been clicking "build now" for, uh, four years?
11:04 pdurbin 381 times, I guess
11:04 poikilotherm :-D
11:05 poikilotherm Some people are using Jenkins or similar together with Github comments.
11:05 poikilotherm On some projects, you will see sth. like /jenkins test
11:05 pdurbin occasionally, someone else clicks "build now" but it's usually me
11:05 poikilotherm They trigger a build in that way, because building every commit or PR would trigger way too much load
11:06 poikilotherm There are definitly a lot of ways to trigger tings
11:06 pdurbin I guess it's only been 3+ years since I set up phoenix: https://groups.google.com/d/msg/dataverse-community/X8OrRWbPimA/wcmQx5VZCQAJ
11:06 poikilotherm You could setup a simple bot listing on IRC
11:06 poikilotherm It's called ChatOps then :-D
11:06 pdurbin phoenix has been great, it has caught many many regressions
11:07 poikilotherm :-)
11:07 poikilotherm I totally agree with that
11:07 pdurbin but it's oriented toward preventing regressions from making it into a release
11:07 pdurbin I make a lot of noise if we're about to cut a release and the api tests are failing.
11:07 pdurbin I was actually really pleased that the release was delayed last week due to api test failures.
11:08 pdurbin It means people are running the tests on phoenix even when I'm on vacation. :)
11:08 pdurbin I'm going somewhere with all of this but it's taking me a while to get there.
11:09 pdurbin Are you running the API test suite? In any of your k8s stuff?
11:09 poikilotherm Not yet
11:09 poikilotherm But I am really eager to try it
11:09 pdurbin awesome
11:09 pdurbin good answer :)
11:10 pdurbin please let me know if I can help
11:10 poikilotherm One could argue that my project which is kind of downstream should not run tests for upstream
11:10 poikilotherm But I would like to give it a try
11:10 pdurbin sure, but I'm hoping to learn from you
11:11 poikilotherm Maybe I will just add it to a feature branch and never merge it in master
11:11 poikilotherm Please be aware that I will stick with Travis for dataverse-kubernetes
11:11 poikilotherm I tried a few Jenkins things and it has been tedious and slow to get things rolling
11:12 pdurbin yeah, I saw you're sticking with Travis, that's fine
11:12 poikilotherm This is not due to bad hardware or sth. like that. IMHO this is just Jenkins.
11:12 pdurbin it is what it is
11:12 pdurbin maybe in the future we'll all be on gitlab and gitlab-ci, who knows
11:13 poikilotherm Yeah. Pipelines are a nightmare in Jenkins.
11:13 pdurbin but for now, jenkins has some mind share
11:13 poikilotherm Who uses Groovy?
11:13 pdurbin heh
11:13 poikilotherm YAML for Travis or Gitlab CI is much less painfull
11:13 pdurbin as long as it works
11:13 poikilotherm ;-)
11:13 pdurbin as long as we catch regressions
11:14 poikilotherm And I enjoy the matrix feature of Travis.
11:14 poikilotherm I just tagged dataverse-kubernetes v4.13
11:14 poikilotherm Images are being build on Docker Hub
11:14 pdurbin travis is great. I have it set up on a number of iqss projects
11:15 pdurbin What happens before you tag? They just go to "latest"?
11:16 poikilotherm Aye
11:16 pdurbin huh, I don't see a 4.13 tag yet
11:19 poikilotherm I should mentions CAP theorem here
11:20 poikilotherm https://en.wikipedia.org/wiki/CAP_theorem
11:20 pdurbin I've heard of it.
11:20 poikilotherm Meaning: try "reload" ;-)
11:21 poikilotherm Tag building on Docker hub is still on its way
11:21 poikilotherm But you should see a tag on Github
11:21 pdurbin ah, ok
11:21 pdurbin I was looking at Docker Hub.
11:21 poikilotherm I want to move image builds to Travis
11:22 poikilotherm Faster, more reliable, more flexibility and more consistent to have tests and image builds under one UI
11:22 poikilotherm And: scheduled builds
11:23 poikilotherm Very important as the base images (CentOS) is updated frequently
11:23 pdurbin And greater visibility into the build, right? I could just watch the Travis console that way.
11:23 poikilotherm You have access to build logs as owner of the repo
11:23 poikilotherm (at Docker hub)
11:23 pdurbin Ok, so it isn't public like Travis.
11:24 pdurbin bummer
11:24 poikilotherm Btw. to use k8s for api tests BEFORE a release happens, you will need to modify the images
11:24 pdurbin sure
11:24 poikilotherm I thought about using my last tagged release and inherit fro mthat
11:24 poikilotherm And just swap the WAR file at build time
11:25 poikilotherm Push in the WAR file build from the dev code
11:25 pdurbin I asked Don to make that happen in his dataverse-ansible world and he delivered. It has been fantastic: https://github.com/IQSS/dataverse-ansible/issues/22
11:25 poikilotherm Obviously this needs to be tweaked when other things like the JSON files change
11:25 poikilotherm Or Solr things change.
11:25 poikilotherm But it would be a start
11:25 pdurbin Sure.
11:26 pdurbin On a related note, did you see Slava's slides about his CI pipeline?
11:26 poikilotherm Err not sure
11:27 poikilotherm Docker hub build is done :-)
11:27 pdurbin I posted some screenshots at https://github.com/IQSS/dataverse/issues/5725#issuecomment-482083170
11:27 pdurbin What do you think?
11:28 poikilotherm Lots of good stuff in there
11:28 poikilotherm I hope they get it into upstream
11:35 pdurbin I asked him for an account: https://github.com/IQSS/dataverse/pull/5751#issuecomment-482349090
11:35 pdurbin Do you want one?
11:38 poikilotherm Dunno. I don't think I can look into it right now :-/ We need to get Dataverse in production first... ;-)
11:39 poikilotherm I think we will focus later on more on developing the core further and enhance the images
11:39 poikilotherm This should be benefitial for everyone :-D
11:39 poikilotherm Thinking about creating a feature branch with a Payara 5 base image...
11:39 pdurbin Sure. Right now you're mostly accepting the core as-is. You contributed to the S3 clone driver (thank you!!) but I don't think you're hacking on the core much these days.
11:40 poikilotherm Yeah
11:40 poikilotherm Focusing on service building right now
11:40 pdurbin which is perfect
11:40 pdurbin extremely valuable
11:40 pdurbin thank you
11:41 poikilotherm I think I will take some time now to write some more docs...
11:41 poikilotherm "How does dataverse-kubernetes work"
11:41 poikilotherm Maybe embedding a graph with https://g.gravizo.com/
11:43 pdurbin my only open issue is https://github.com/IQSS/dataverse-kubernetes/issues/12 :)
11:45 poikilotherm Well I could give it a try...
11:45 pdurbin I'm happy to create an account for you under our AWS like I did for Don.
11:45 poikilotherm When you give me some access credentials for an EC2 instance
11:46 poikilotherm Ok, I give this a quick shot right now
11:46 poikilotherm Let's see how easy this is
11:46 pdurbin Do you want an account under your name or should it be a "service" account that https://jenkins.dataverse.org will use some day?
11:47 poikilotherm Um maybe let me play with an account under my name first
11:47 poikilotherm Services: later. When this stuff works
11:47 pdurbin makes sense. your usual nick and work email, I assume
11:48 poikilotherm YEs please
11:56 pdurbin Ok, please check your email.
12:00 poikilotherm Thx!
12:05 poikilotherm I will need these permissions:
12:05 poikilotherm AmazonEC2FullAccess
12:05 poikilotherm AmazonRoute53FullAccess
12:05 poikilotherm AmazonS3FullAccess
12:05 poikilotherm IAMFullAccess
12:05 poikilotherm AmazonVPCFullAccess
12:05 poikilotherm I don't think I can see those in my account... At least I could not find them
12:07 pdurbin I gave you "full" just like me.
12:07 pdurbin Let me look again.
12:07 poikilotherm Ok
12:07 poikilotherm kops states that I should create a special user with limited permissions as show above...
12:08 poikilotherm Can I create a user myself?
12:08 poikilotherm Ah I think I just found it :-D
12:08 pdurbin Oh, limited permissions. Well, I just created an account for you so you should be able to create a second one.
12:09 pdurbin I would suggest testing your account by following http://guides.dataverse.org/en/4.13/developers/deployment.html
12:55 poikilotherm Ok first lesson learned: kops uses K8s v1.11 by default. Upgrading to 1.13 took me about 24m resulting from a lot of waiting...
12:56 pdurbin ah
12:56 pdurbin I don't know what kops is.
12:56 poikilotherm A little tool to install K8s on AWS/GKE/...
12:56 pdurbin Ah, ok.
12:57 pdurbin The furnace guys are here. Once I get this dishwasher loaded I'll bike to work.
12:57 poikilotherm :-)
12:59 pdurbin see you on the other side
13:00 poikilotherm Cu :-)
13:16 donsizemore joined #dataverse
13:23 poikilotherm Hey pdurbin, it "just worked"
13:24 poikilotherm I'll write some docs about it...
13:24 poikilotherm And commit some YAML files
13:51 pdurbin poikilotherm: fantastic! Thanks!
13:51 pdurbin donsizemore: ^^
14:09 poikilotherm Oi, pdurbin
14:09 poikilotherm https://github.com/IQSS/dataverse-kubernetes/blob/12-k8s-aws/docs/aws-kops.md
14:10 poikilotherm Give it a shot :-D
14:10 poikilotherm It worked like a breeze here... ;-)
14:11 poikilotherm I'll be out for today. Feel free to leave feedback in the issue...
14:18 pdurbin poikilotherm: thanks!!!
14:18 pdurbin at the moment I'm in a design meeting discussing https://github.com/IQSS/dataverse-metrics/issues/11
14:19 donsizemore @pdurbin is that a hint?
14:20 pdurbin donsizemore: hmmm? :)
15:10 pdurbin donsizemore: still there? Question about metrics.
15:10 donsizemore yes sir
15:11 pdurbin can you bump it up from 12 months to 36, please?
15:11 pdurbin oh, and deploy the latest release?
15:12 donsizemore yis
15:16 donsizemore done and updating now
15:17 donsizemore (and taking much longer to update, i might add)
15:26 donsizemore um... https://dataversemetrics.odum.unc.edu/dataverse-metrics/
15:26 donsizemore "num_months_to_process": 36 — maybe i need to nuke the cache and re-run?
15:29 donsizemore the cache hierarchy now goes back 36 months beneath */toMonth/ but the... oh, it's my browser.
15:30 donsizemore now we're back 36 months but we lost the "month" labels. mouse-over displays them
15:46 pdurbin donsizemore: hi! Sorry, I was at standup. Are you done already?!? https://dataverse.org/metrics looks good!
15:48 pdurbin And yes, we know that the month labels get squeezed out. We're planning to fix that in a future release.
16:41 donsizemore joined #dataverse
16:50 donsizemore @pdurbin added https://data.inra.fr back in and re-running.
16:50 donsizemore @pdurbin I had removed them because they kept throwing 503s
16:51 pdurbin donsizemore: and speaking of which, on my box I removed scholars portal because I was getting this error: https://github.com/IQSS/dataverse-metrics/issues/12
17:37 jri joined #dataverse
18:03 donsizemore @pdurbin did you still want me to try to reproduce #5722? it's closed now and i don't see the re-opened replacement (unless it's been closed as well)
18:56 pdurbin donsizemore: hi! That actually relates to what I started talking about around this time yesterday... thoughts on jenkins etc.
19:02 donsizemore and automated testing
19:04 pdurbin right! so
19:04 pdurbin so far we have one job and it's awesome: https://jenkins.dataverse.org/job/IQSS-dataverse-develop/
19:04 pdurbin passing, even :)
19:05 pdurbin but what's the next logical step?
19:05 pdurbin that job does a mvn test and mvn package, right?
19:06 pdurbin config.xml says it does this: mvn -DcompilerArgument=-Xlint:unchecked test -P all-unit-tests package
19:06 pdurbin which seems great
19:06 pdurbin but now what? deploy to ec2?
19:07 pdurbin I was going to create an issue but I wanted to talk it out a bit first. Or I can go ahead. What do you think?
19:09 donsizemore um, locally we have several jobs which just fire off ssh with a script as an argument.
19:10 donsizemore authentication is just simple ssh-key, and in each case the script simply redeploys the warfile and restarts glassfish/payara
19:10 donsizemore i do like the ec2 approach; we'd just give jenkins your aws credentials(?)
19:11 pdurbin yep, I could create a service user or whatever
19:12 pdurbin we would just call the ec2-create-instance.sh script from jenkins, right?
19:12 donsizemore only potentially messy part would be automated teardown, assuming you wanted to examine the running VM first
19:12 donsizemore "with AWS, you don't pay for what you use, you pay for what you forget to turn off"
19:12 pdurbin heh
19:12 pdurbin I mean, maybe we don't need ec2 yet? Maybe we can deploy to glassfish within docker on the jenkins server? I don't know.
19:13 pdurbin but the next step is to deploy the war file somewhere, I think
19:15 donsizemore i do like ec2 though that costs $$$
19:15 donsizemore if that's untenable for whatever reason i can set up a test glassfish instance here
19:16 pdurbin let's try ec2 first. I'd like that "create" script to be exercised regularly anyway. it's a good test of the master branch of dataverse-ansible
19:17 pdurbin so does a second job get added to config.xml? Or do we create a new file called config2.xml or something?
19:17 donsizemore is there a better way for me to do this than to give our jenkins user your ec2 credentials?
19:17 donsizemore you can add any number of post-build actions in jenkins
19:18 pdurbin I'm not sure of the best way to handle the credentials but I think we should think of both the jenkins server and the ec2 credentials as belonging to the dataverse community. :)
19:19 pdurbin we all want the software to be tested
19:19 pdurbin nobody wants regressions
19:19 donsizemore unless i'm allowed to regress to kindergarden with afternoon naps on a towel, i agree.
19:20 pdurbin :)
19:20 pdurbin you have the same privs I do so you could create the service account if you want
19:20 donsizemore we'll start with EC2 and if it sux in some way we can always change it
19:21 pdurbin yeah, we're just experimenting
19:21 pdurbin you saw Slava's CI pipeline, right? I posted some screenshots
19:21 donsizemore yes
19:21 donsizemore though that was last week so i'd have to dig them up
19:22 pdurbin here they are: https://github.com/IQSS/dataverse/issues/5725#issuecomment-482083170
19:22 pdurbin he's also using jenkins
19:23 pdurbin so is qqmyers
19:23 pdurbin so I feel like we an all learn from each other
19:23 pdurbin can*
19:26 pdurbin Have you seen how I have the phoenix stuff set up as 3 chained jobs? I'm not sure if I'm doing it right but it's been working ok, I guess. It catches bugs. :)
19:27 pdurbin here are the 3 chained jobs: http://guides.dataverse.org/en/4.13/developers/testing.html#how-the-phoenix-tests-work
19:29 pdurbin part of the problem is there's no transparency into how those jobs are configured
19:30 pdurbin no config.xml to download
19:30 pdurbin that's what https://github.com/IQSS/dataverse/issues/1936 was about
19:31 pdurbin but in that issue I just posted screenshots because that's all I know how to do
19:36 donsizemore i've been updating our config.xml in the dataverse-jenkins repo, and am happy to post the script i'll use to fire off ec2 - no secrets there
19:37 pdurbin awesome
19:43 donsizemore must run but hope to finish that up tomorrow morning? have a great afternoon
19:43 pdurbin you too. thanks!
20:35 pdurbin joined #dataverse
21:49 jri joined #dataverse

| Channels | #dataverse index | Today | | Search | Google Search | Plain-Text | plain, newest first | summary

Connect via chat.dataverse.org to discuss Dataverse (dataverse.org, an open source web application for sharing, citing, analyzing, and preserving research data) with users and developers.