Ben Webb [Mon, 13 Jun 2011 12:29:36 +0000 (13:29 +0100)]
Respect DESTDIR during the build process
Replace instances of make with the generic $(MAKE)
Add $(DESTDIR) to paths it is currently missing from
Manually specify the apxs2 install location so that DESTDIR can be prepended
Attempt to create the apache directory if it does not exist
Signed-off-by: Ben Webb <bjwebb67@googlemail.com>
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Wed, 25 May 2011 04:02:33 +0000 (00:02 -0400)]
Move the buildbot workdirs to a non-volatile directory
/tmp/ is a good directory for throwing temporary things,
but not so good for things you want to keep around for a relatively
long time. Especially on Ubuntu, which has a default policy of
deleting files in /tmp/ on reboot - meaning that the git repos
that form the basis of the repository have all of their files
wiped - greatly confusing the buildbot, which tries to run
'git reset --head' in an empty directory and fails miserably
in that situation.
So - ensure that WORKDIR is set to something that exists and
which will exist for the duration of your CI server, and you'll
be all right.
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Wed, 18 May 2011 18:38:19 +0000 (14:38 -0400)]
Turn on email and IRC notification about build breaks
Buildbot can notify us when a build breaks via email and IRC.
Now that everything is green on testing.evergreen-ils.org, let's
turn that capability on. As configured, we should only be notified
when a build goes from success to failure, the first time; and
then again, when a build goes from failure to success.
Email notification should go to "interested users" - all of the
email addresses in the collected signed-off-by / author tags in
the commits for a given build.
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Wed, 18 May 2011 14:23:18 +0000 (10:23 -0400)]
Teach Perl Makefile to build Build for every target
With the previous Perl Makefile.am, running "make check" before
running "make all" would fail on the Perl directory because it
assumed that Build would have been created from Build.PL. Factoring out
the build of Build from Build.PL and making that a prereq of the
pertinent targets avoids that problem on a clean checkout of the
OpenSRF source.
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Mon, 16 May 2011 22:11:59 +0000 (18:11 -0400)]
Specify explicit branches for each builder, lazy-style
SVNPoller was able to rely on change filters to look at every
commit to the repository and hand them off to the scheduler
accordingly; GitPoller, however, looks at one branch per
poller, so we need to instantiate one poller per branch of
interest. This gives us an opportunity to refactor our approach
to be more programmatic.
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Mon, 16 May 2011 20:01:37 +0000 (16:01 -0400)]
Comment on why we're pulling in version.m4
Commenting code is helpful, I've been told that it is the best
way to reduce bugs in a project. To that end, make the connection
between VERSION_NUMBER and PACKAGE_VERSION in configure.ac
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Dan Scott [Mon, 16 May 2011 19:08:04 +0000 (15:08 -0400)]
Define version number in one place
Adding the version.m4 macro defines VERSION_NUMBER for us in
one place so that we can simplify package releases (and fix
'osrf_config --version' output so that it does not always
tell us 'trunk').
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Dan Scott [Mon, 16 May 2011 18:52:40 +0000 (14:52 -0400)]
Typo fix: deprecasted -> deprecated
It's an annoying typo, and it helps test out the buildbot
configuration...
Signed-off-by: Dan Scott <dscott@laurentian.ca>
Dan Scott [Sun, 15 May 2011 21:38:46 +0000 (17:38 -0400)]
Remove 'branches' reference in Buildbot branches test
We can just check for the branch directly now that we are
in git. Some things really are simpler with git!
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Sun, 15 May 2011 20:23:32 +0000 (16:23 -0400)]
Add a workdir for each GitPoller source repository
Not 100% sure, but with two GitPollers using the same working
directory, I suspect that there was a conflict between the
underlying repos as to which commit was the newest. Give
each of them an explicit working directory in the attempt
to avoid this.
Signed-off-by: Dan Scott <dan@coffeecode.net>
Dan Scott [Sun, 15 May 2011 19:25:33 +0000 (15:25 -0400)]
Teach Buildbot to poll the new git repos
We're now using GitPoller to check for commits to the branches
of interest in Evergreen and OpenSRF on the default interval
of 10 minutes.
Also, some syntax cleanups following the last refactoring.
Signed-off-by: Dan Scott <dan@coffeecode.net>
dbs [Mon, 9 May 2011 17:10:19 +0000 (17:10 +0000)]
Inline TestObject for net_obj_test.py as well
Signed-off-by: Dan Scott <dan@coffeecode.net>
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2246
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 9 May 2011 13:53:30 +0000 (13:53 +0000)]
Fix unit tests for Python in a twistd instance
twistd could not find testobj; just inline it.
Signed-off-by: Dan Scott <dan@coffeecode.net>
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2245
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 9 May 2011 05:19:51 +0000 (05:19 +0000)]
Add Python unit testing and coverage report to "make check"
If --enable-python is included in the arguments to configure, "make check"
runs all Python unit tests using nosetests and generates a testing coverage
report for all Python code.
The original json_test.py is factored out to provide a separate file for
testing osrf.net_obj vs. osrf.json vs. osrf.*, when we eventually get there.
Signed-off-by: Dan Scott <dan@coffeecode.net>
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2244
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Sun, 8 May 2011 15:37:10 +0000 (15:37 +0000)]
Add Check dependencies for Fedora
Required to run "make check" for the C unit tests
previously added by Kevin Beswick.
Signed-off-by: Dan Scott <dan@coffeecode.net>
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2238
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Sun, 8 May 2011 15:35:28 +0000 (15:35 +0000)]
Add a C unit testing framework and tests for OpenSRF
The unit testing framework is "Check" - http://check.sourceforge.net/
These tests can be executed by running 'make check' after you
configure and compile the OpenSRF code.
To run them, you must have the 'check' package installed.
Author: Kevin Beswick <kevinbeswick00@gmail.com>
Signed-off-by: Dan Scott <dan@coffeecode.net>
Signed-off-by: Kevin Beswick <kevinbeswick00@gmail.com>
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2237
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Sat, 30 Apr 2011 22:40:54 +0000 (22:40 +0000)]
move jabber_state_machine_struct into header to keep 'make check' happy
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2236
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Thu, 28 Apr 2011 16:20:47 +0000 (16:20 +0000)]
Patch from Kevin Beswick to support set operations on certain opensrf message fields. note, this does not currently affect behavior, since values for messages are initially set from parsing JSON without using the access/mutators for setting values.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2234
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 25 Apr 2011 04:12:41 +0000 (04:12 +0000)]
Sidestep JSON object ordering in unit tests
Depending on the JS engine and version of Dojo, the order
of attributes in JSON objects may change (as is explicitly
allowed by the JSON spec). To avoid false test failures,
only use one attribute in the object.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2232
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Thu, 21 Apr 2011 20:04:42 +0000 (20:04 +0000)]
change proc managament debug message from Info to Debug
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2230
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Tue, 12 Apr 2011 13:35:36 +0000 (13:35 +0000)]
additional settings in sample rsyslog config: disable EscapeControlCharactersOnReceive
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2228
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 30 Mar 2011 04:31:28 +0000 (04:31 +0000)]
Handle the common NXDOMAIN problem with Python a bit more gracefully
Rather than dumping a nasty full stacktrace to the command line, we
print a hopefully helpful pointer to the actual problem in plain
English.
Also, rather than stopping everything if a "stop_all" command was
issued, skip the error status in osrf_ctl.sh for the Python bit
and carry on shutting down the other services. A bit more convenient
if you want to have Python enabled but don't necessarily need it
running.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2226
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 29 Mar 2011 13:55:09 +0000 (13:55 +0000)]
Make javascript unit tests more granular to ease tracking down errors
Noticed a failure when running with Rhino 1.7RC2 that wasn't happening
with version of Rhino packaged in shrinksafe.jar, and it was a bit
tedious narrowing down which test was actually failing. Breaking up
the tests into smaller sets will make this process easier and might invite
the submission of other tests to target areas that are not yet covered.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2222
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 29 Mar 2011 02:59:51 +0000 (02:59 +0000)]
Give Python services introspection methods matching C and Perl
Perl and C services offer "opensrf.system.method" and
"opensrf.system.method.all" methods for accessing service
information. Renaming Python's methods to match at least
enables srfsh to access this information, even if it does
still need to be taught to provide that information in a
consistent manner.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2220
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 29 Mar 2011 02:09:16 +0000 (02:09 +0000)]
A few more tests for JSON_v1.js
We're not really touching the interesting parts of encodeJS/decodeJS
yet, but at least we get to open the door a crack.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2219
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 28 Mar 2011 18:51:53 +0000 (18:51 +0000)]
Get more DRY; generate builders from a small list of branches and distros
Should adopt this approach with schedulers too, but one step at a time.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2218
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 28 Mar 2011 15:22:54 +0000 (15:22 +0000)]
Add DOH-based unit test harness for OpenSRF JavaScript
The Dojo Objective Harness enables us to run unit tests from the command
line or within a browser. Running tests from a command line makes it easier
to fold into the continuous integration server. Included in this commit
is a small README for setting up command-line testing and a sample set
of unit tests that exercise parts of JSON_v1.js.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2217
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Sun, 27 Mar 2011 21:36:25 +0000 (21:36 +0000)]
Improved PID file handling in osrf_ctl.sh
Joseph Lewis <joehms22@gmail.com> submitted a patch to address
https://bugs.launchpad.net/evergreen/+bug/741088 ("osrf_ctl.sh Doesn't check if
process is actually running")
As of this patch, when start_perl, start_c, or start_python are started and
existing PID files are found for those processes, instead of assuming that the
processes are actually running, osrf-ctl.sh now has the intelligence to check
the process list to see if there is a matching process. If no running process
is found, then the old PID file is removed and the start command is issued.
Two additional actions have been added, "smart_clear" and "clear_pid".
"smart_clear" checks the PID files against the running processes and removes
PID files where no running process is found. This is effectively invoked
under the covers when start_* is invoked and a PID file is found.
"clear_pid" deletes all PID files without checking to see if there are any
running processes. In most cases, it should only be invoked as part of an
automated boot sequence.
Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.
(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
Signed-off-by: Joseph Lewis <joehms22@gmail.com>
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2215
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Sun, 13 Mar 2011 06:03:46 +0000 (06:03 +0000)]
Run OpenSRF JavaScript through jslint for a light cleanup
Mostly just semicolons, and shifting a bit of code around to reduce
usage of functions/classes before they've been defined. Staying away
from the === / !== operators for null/undefined/0/''/true/false for
now.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2209
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Fri, 11 Mar 2011 13:15:57 +0000 (13:15 +0000)]
Forward-port AsciiDoc-ized README from 2.0.0-rc2
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2208
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Fri, 4 Mar 2011 01:32:39 +0000 (01:32 +0000)]
Define the builders and give them a slot for username/password
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2200
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Fri, 4 Mar 2011 01:11:27 +0000 (01:11 +0000)]
Add GPLS' buildslaves to the mix (YAY)
32-bit Ubuntu 8.04 and 10.04 slaves for the Evergreen tests.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2199
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 2 Mar 2011 21:56:14 +0000 (21:56 +0000)]
No mas. dir existence checks were checking buildmaster, not slave
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2198
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Wed, 2 Mar 2011 18:38:09 +0000 (18:38 +0000)]
bug fix with srfsh.py introspection; better handling/reporting of service exceptions
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2196
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Wed, 2 Mar 2011 15:04:00 +0000 (15:04 +0000)]
consistent w/ sigpipe handling in osrf 1.6, provide a warning and retry mechanism for syswrites that fail as a result of sigpipe
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2194
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 2 Mar 2011 14:24:33 +0000 (14:24 +0000)]
Fix reversed logic in test for Perl tests. Oh the irony.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2193
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 2 Mar 2011 14:12:16 +0000 (14:12 +0000)]
Rather than specific branches, test for the existence of the directory
Yes, more buildbot noise. Maybe the poor buildbot needs its own repository
until things settle down. heh
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2192
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 2 Mar 2011 05:21:58 +0000 (05:21 +0000)]
The syntax fix, it is wafer-thin; just one more!
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2191
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 2 Mar 2011 05:14:58 +0000 (05:14 +0000)]
Syntax, baby, syntax (for the buildbot)
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2190
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 2 Mar 2011 05:10:21 +0000 (05:10 +0000)]
Avoid running Perl unit tests when our branches have them not
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2189
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 2 Mar 2011 03:51:42 +0000 (03:51 +0000)]
Coerce the weird test env for MFHD into working inside buildbot
'use testlib.pm' throws the standard "prove --lib lib -r t" recipe for testing
Perl packages out the window, so we have to override the Perl testing class
and point to the known location of testlib.pm
This may still fail for Evergreen branches prior to rel_2_1, but it's
_something_. Throw me a bone, here, will ya?
Ultimately, the best thing to do is probably to make MFHD tests conform.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2188
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 1 Mar 2011 23:06:32 +0000 (23:06 +0000)]
Distinguish between the projects being built (duh)
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2187
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 28 Feb 2011 04:05:40 +0000 (04:05 +0000)]
Recommend Fedora 14 as F13 goes out of support in a few months
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2182
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 22 Feb 2011 14:28:19 +0000 (14:28 +0000)]
Resolve encoding problem found by attempting to register patrons with Unicode names
Symptoms were:
1. a gateway.log entry showing http_translator receiving an XMPP error message
2. a corresponding osrfsys.log entry "server: died with error Wide character in syswrite at /usr/local/share/perl5/OpenSRF/Server.pm line 239"
Per normal Perl Unicode handling practices, decoding input and encoding output
using the Encode module and decode_utf8() / encode_utf8() appears to resolve
the problem.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2168
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Mon, 14 Feb 2011 13:54:50 +0000 (13:54 +0000)]
added sample rsyslog opensrf configuration file
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2167
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 14 Feb 2011 06:21:36 +0000 (06:21 +0000)]
Add Evergreen to the buildbot configuration
Now all that we need are Evergreen buildslaves!
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2166
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 31 Jan 2011 05:56:39 +0000 (05:56 +0000)]
Whitespace consistency (tabs for Makefiles I guess)
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2164
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 31 Jan 2011 05:49:10 +0000 (05:49 +0000)]
Use an Exporter-approved version number (only one decimal place)
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2162
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 31 Jan 2011 05:39:24 +0000 (05:39 +0000)]
Create a function for explicit trunk changes (shouldn't be necessary, but...)
Also untabify (augh) the file. Oh the whitespace!
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2161
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 31 Jan 2011 04:36:13 +0000 (04:36 +0000)]
To specify trunk in the ChangeFilter, use branch=None
At least, that's how I'm reading the buildbot docs at this time of night:
http://buildbot.net/buildbot/docs/current/Change-Filters.html
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2159
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 31 Jan 2011 04:22:23 +0000 (04:22 +0000)]
We're not just OpenSRF trunk, we've got other branches
Also, drop %%BRANCH%% from the SVN baseURL and give it a default
branch.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2158
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 31 Jan 2011 02:28:51 +0000 (02:28 +0000)]
Correct copy/paste error in Build.PL metadata
OpenSRF uses GPL v2 or later, not the Perl license.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2157
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Fri, 28 Jan 2011 16:15:11 +0000 (16:15 +0000)]
Add OpenSRF rel_1_6 and rel_2_0 builds to the OpenSRF build slave
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2155
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Thu, 27 Jan 2011 05:19:06 +0000 (05:19 +0000)]
Try sending failure notification to the -dev list
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2154
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Thu, 27 Jan 2011 04:12:37 +0000 (04:12 +0000)]
buildbot configuration: add mail notification, explicit builder name
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2153
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 26 Jan 2011 19:55:29 +0000 (19:55 +0000)]
Check in a sample buildbot configuration file for OpenSRF
Change XXX to meaningful values before deploying :)
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2152
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 26 Jan 2011 17:51:26 +0000 (17:51 +0000)]
OpenSRF::UnixServer doesn't live here any more
This test was still succeeding on hosts that had installed
previous versions of OpenSRF, but failed on a shiny new
test instance.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2151
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 26 Jan 2011 03:31:47 +0000 (03:31 +0000)]
Set the correct number of expected tests so that we don't fail 100% of the time
I guess we haven't run "make test" here since r2024 - heh.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2149
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 25 Jan 2011 18:15:22 +0000 (18:15 +0000)]
Trivial typo fix (also tests OpenSRF buildbot)
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2148
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Fri, 21 Jan 2011 15:00:46 +0000 (15:00 +0000)]
repaired call to handle_request for router query; cannot survive without the self.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2145
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Fri, 21 Jan 2011 14:58:35 +0000 (14:58 +0000)]
make the api CALL log line consistent across Perl and C and make it something that can be pasted directly into srfsh
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2144
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 11 Jan 2011 23:05:27 +0000 (23:05 +0000)]
Get that brace back in the right place
Unbreak the build. Argh.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2143
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 11 Jan 2011 23:00:35 +0000 (23:00 +0000)]
Add hints to increase max_children config variable if we're hitting the maximum
Already added this hint to the Python implementation, now propagating to
C and Perl.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2142
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 11 Jan 2011 22:59:18 +0000 (22:59 +0000)]
Clean up Python server implementation, guided by pylint
Add some docstrings, keep line lengths at 80 or less (MORE
WHITESPACE!), remove some dead code, and add a hint to check
max_children config value if we're bumping up against the
limit.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2141
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 11 Jan 2011 21:33:09 +0000 (21:33 +0000)]
Remove max_requests config stanza from C language implementations in example config
Only Perl implementations support the max_requests stanza, so let's not confuse
matters with an unused element.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2140
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Mon, 20 Dec 2010 02:55:24 +0000 (02:55 +0000)]
Straighten out -f / -d flag confusion in libmemcached prerequisite
There are two different styles of checking for previously downloaded
tarballs in this Makefile; the libmemcached entry combined them both
with unfortunate results.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2138
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Mon, 20 Dec 2010 02:54:32 +0000 (02:54 +0000)]
repaired bug in total request time calc, particularly when a request returns no response
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2136
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Mon, 20 Dec 2010 01:20:48 +0000 (01:20 +0000)]
Python srfsh enhancements
* Srfsh plugins can now insert new commands and add words to the tab
completion word bank.
* Addded support reading script files
* Added support for service open/close (connect/disconnect) for stateful
connections
* Moved to class-based srfsh module for easier state maintenance
* More doc strings
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2133
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Thu, 16 Dec 2010 21:02:41 +0000 (21:02 +0000)]
Remove extraneous line for dnsmasq / Python
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2130
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Mon, 13 Dec 2010 14:57:44 +0000 (14:57 +0000)]
on second thought, removing debug sleep method, which is (more than most) a DOS waiting to happen.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2126
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Mon, 13 Dec 2010 14:53:47 +0000 (14:53 +0000)]
improved select/read/write fault tolerance; cleaner and more efficient child process idle/active list management; improved logging
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2124
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 7 Dec 2010 14:30:45 +0000 (14:30 +0000)]
Apply libtools versioning to OpenSRF c-apps as well
We apply a -version-info argument of 2:0:2, meaning:
* interface = 2: interface '2' of this library
* revision = 0: first implementation of interface '2'
* age = 2: this library can be linked with executables going back
two interface versions
See http://sourceware.org/autobook/autobook/autobook_91.html for more
information on the -version-info argument.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2123
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 1 Dec 2010 03:10:53 +0000 (03:10 +0000)]
Apply patch for dnsmasq documentation
Thanks to Michael Giarlo <leftwing@alumni.rutgers.edu> for
providing this correction to the dnsmasq configuration line!
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2121
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Tue, 30 Nov 2010 14:27:30 +0000 (14:27 +0000)]
fail gracefully when opensrf.settings is not up and running
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2119
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 30 Nov 2010 04:16:30 +0000 (04:16 +0000)]
Prepare for version 2.0.0 with versioning for 2.0.0
Use the libtool -version-info option to provide an explicit version
for the libopensrf.so library. Introducing versioned libraries will
give us the ability to force recompiles of linked applications when
binary compatibility has been broken.
Also, bump the Perl version number to 2.0.0
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2118
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Mon, 29 Nov 2010 20:15:33 +0000 (20:15 +0000)]
don't clean up child attributes until we're done with them; added pid map hash for easy/quick access to child via pid
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2116
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Mon, 29 Nov 2010 19:17:37 +0000 (19:17 +0000)]
added opensrf.system.sleep method; takes 1 param (seconds); useful for debugging child process management
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2111
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Mon, 29 Nov 2010 19:16:34 +0000 (19:16 +0000)]
avoid calling sysread when select exited from interruption.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2110
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Mon, 29 Nov 2010 19:15:07 +0000 (19:15 +0000)]
add fault tolerance (e.g. recover from interrupted select/sysread); always perform idle maintenance when there are any active child processes; exit check status early when no active processes exist
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2109
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Sun, 28 Nov 2010 20:56:43 +0000 (20:56 +0000)]
Lenny needs zlib1g-dev package to install XML::LibXML and others
Per https://rt.cpan.org/Public/Bug/Display.html?id=51439; also,
libmemcached failed to configure and build without this.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2106
9efc2488-bf62-4759-914b-
345cdb29e865
gmc [Wed, 24 Nov 2010 17:11:49 +0000 (17:11 +0000)]
no longer need FreezeThaw
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2104
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Mon, 22 Nov 2010 22:21:35 +0000 (22:21 +0000)]
in the rare case the select() is interrupted while waiting on child statuses, exit early to prevent read()'s on invalid file handles and allow the calling code to loop back around and try again
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2101
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Sat, 20 Nov 2010 15:50:30 +0000 (15:50 +0000)]
added support for introspect operation
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2099
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Sat, 20 Nov 2010 15:25:36 +0000 (15:25 +0000)]
install srfsh.py when --enable-python is set
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2095
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Sat, 20 Nov 2010 15:24:55 +0000 (15:24 +0000)]
added support for paging through 'less' (like C); added 'router' query docs; added separate env vars for pretty printing json and for print network object keys; explicit opensrf disconnect on exit
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2094
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Sat, 20 Nov 2010 15:23:57 +0000 (15:23 +0000)]
added network disconnect func
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2093
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Fri, 19 Nov 2010 02:41:57 +0000 (02:41 +0000)]
added 'router' command for router class info queries; improved redline tab completion; more changes for consistency with C version; general cleanup
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2091
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Tue, 16 Nov 2010 14:08:29 +0000 (14:08 +0000)]
repaired logic in the as-yet-unused import_array_data; use the more efficient enumerate func; capture array length outside of loop for efficiency; avoid calls to set/get_field and access _data directly inside of the NetworkObject class for faster accessor/mutator's
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2088
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Tue, 16 Nov 2010 14:06:02 +0000 (14:06 +0000)]
removed debug print statement
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2087
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Tue, 16 Nov 2010 03:36:49 +0000 (03:36 +0000)]
rely on logic, not failure through try/catch, to determine of an object is a registered network object; if an object is unregistered, do not treat it as an __unknown network object (which obfuscates and provides no value).
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2084
9efc2488-bf62-4759-914b-
345cdb29e865
erickson [Tue, 16 Nov 2010 03:29:32 +0000 (03:29 +0000)]
killed the terminal colors in srfsh.py output. They are cute and all, but are likely the cause of readline oddities/artifacts (and kind of distracting). Default to raw (json) output for consistency
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2083
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Sun, 14 Nov 2010 04:15:24 +0000 (04:15 +0000)]
Limit list of Python services to those within the domain-specific activeapps section
Fix up help with correct default PID directory and document list_all action
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2077
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Thu, 11 Nov 2010 14:47:12 +0000 (14:47 +0000)]
If an alternate config file is pointed to in osrf_ctl.sh, respect it
In a previous edit, I accidentally removed the config file option
from the start_python command, which would break if anything other
than the configured default config file was specified as an option to
osrf_ctl.sh. This makes opensrf.py once again respect the authority
of osrf_ctl.sh.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2076
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Thu, 11 Nov 2010 14:25:02 +0000 (14:25 +0000)]
Use the same PID directory as the opensrf-perl.pl and opensrf.py scripts
The default PID directories for the opensrf-perl.pl and opensrf.py scripts
was /openils/var/run/opensrf (assuming a prefix of '/openils'), while the
default PID directory for osrf_ctl.sh was /openils/var/run. This complicated
matters when trying to restart individual Python or Perl services, as without
passing an explicit PID directory argument the restart command from the
language-specific script would check for a PID in a different PID directory,
find none, and end up running a second copy of the service instead of
restarting the existing service.
The change groups all PIDs in the 'run/opensrf' subdirectory to avoid any
PID file conflicts (as unlikely as that might be) if OpenSRF is installed
in the default location - so rather than /var/local/run/*.pid, one will
be able to look at /var/local/run/opensrf/*.pid
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2075
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 10 Nov 2010 19:14:19 +0000 (19:14 +0000)]
Add the sanity-saving step of a munged PERL5LIB to the README
Thanks for the nudge from Thomas Berezanksy!
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2074
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Wed, 10 Nov 2010 03:33:15 +0000 (03:33 +0000)]
Commit some unit tests for Python osrf.json module
Recommendation: add *_test.py scripts that mirror each
osrf.* module in src/python/tests. Boo-yah.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2073
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 9 Nov 2010 22:54:39 +0000 (22:54 +0000)]
osrf.json clean up
* Use the right variable name in to_json_raw()
* PEP8 compliance for variable naming
* Add docstrings
* Simpler __tabs() implementation
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2072
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 9 Nov 2010 21:39:44 +0000 (21:39 +0000)]
A solution for starting all Python services: make sh do the work
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2071
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 9 Nov 2010 18:17:50 +0000 (18:17 +0000)]
Enhanced do_start() implementation in Python management script
Unclean shutdowns and fork() misery can create PID files that have
no actual process behind them. Instead of just trusting the PID file, check
for the running PID; if the process is not running, then remove the PID file
and actually start the service.
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2070
9efc2488-bf62-4759-914b-
345cdb29e865
dbs [Tue, 9 Nov 2010 17:54:13 +0000 (17:54 +0000)]
Assign, don't test equality (thanks berick)
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@2069
9efc2488-bf62-4759-914b-
345cdb29e865