Updating Sesame, starting the move to pyramid/postgresql

All technical stuff this week.  I’ve got the Spider-Behavior server code connected to travis-ci.  In the process of doing so, I ran into problem with Sesame, which turned out to be related to the maven setup.   It’s working and updated to the most recent 2.8 release.  This will allow some more changes, particularly some more formatting work on the narratives page.

While waiting for a response from the Sesame-users group, I started taking a serious look at moving arachadmin from web2py.  It looks like I’ll be able to move to a python3.5-pyramid-postgresql stack.  I have a first pass at the new table structure working with sqlalchemy, and will soon start the process of coding the transfer from mysql.  The experience is a lot closer to standard python development, rather than the somewhat cushioned ride offered by web2py.

Meanwhile, spending some time reviewing the opentree taxonomy against the world spider catalog.  So far nothing horrible, mostly groups added since 2009 and some unstable family splits.


A busy evening

The last couple of days I have devoted what little time I’ve had for arachnolingua to curation – moving stuff out of the spreadsheet into the database, grabbing a couple of interesting papers about several species of fly that avoid jumping spider predation by mimicking the spiders’ territorial display and no coding what so ever.  That changed this evening, though it was more configuration than coding.

A couple of months back, I worked through most of the examples in maven by example, which included a couple of web application projects.  In the process of working through them, I realized that, even if I didn’t actually use JSP or any Java support, it would still be simpler to put all the pages into a *.war file which the tomcat manager app would handle the deployment of.  This would save me moving lots of files or archives to the server and worrying about things getting out of synch.  This evening I updated the Spider-Behavior project to use maven as a build tool, did a little bit of testing using a local jetty server, then pushed a war file to the server.  It worked well enough that I copied most of the other files and then worked on configuring apache, which had been serving the static file for arachnolingua all along, to proxy to the tomcat server (as I had planned ever since I chose tomcat to deploy the sesame server).  It took over an hour to remember how to configure apache to do the proxies, but that seems to be sufficient for the present.  Another hour of iterative tweaking and I was able to completely hide tomcat behind the firewall (and not specify the tomcat port in the ajax call backs on the sesame testing page).  This should stop the extended sessions, originating from Chinese ip addresses, of attempts to break into the tomcat management tool (it’s simple enough not to use manager, admin, or tomcat as the name for your privileged tomcat account anyway).

So progress in both build automation (= repeatability) and security.  All in all, a productive evening.