Skip to content

Instantly share code, notes, and snippets.

View jldupont's full-sized avatar

Jean-Lou Dupont jldupont

View GitHub Profile
@jldupont
jldupont / gist:1643876
Created January 20, 2012 00:05
Supervisord : access through RPC
>>> import xmlrpclib
>>> x = xmlrpclib.ServerProxy('http://127.0.0.1:9001/RPC2')
>>> x.system.listMethods()
['supervisor.addProcessGroup', 'supervisor.clearAllProcessLogs', 'supervisor.clearLog', 'supervisor.clearProcessLog', 'supervisor.clearProcessLogs', 'supervisor.getAPIVersion', 'supervisor.getAllConfigInfo', 'supervisor.getAllProcessInfo', 'supervisor.getIdentification', 'supervisor.getPID', 'supervisor.getProcessInfo', 'supervisor.getState', 'supervisor.getSupervisorVersion', 'supervisor.getVersion', 'supervisor.readLog', 'supervisor.readMainLog', 'supervisor.readProcessLog', 'supervisor.readProcessStderrLog', 'supervisor.readProcessStdoutLog', 'supervisor.reloadConfig', 'supervisor.removeProcessGroup', 'supervisor.restart', 'supervisor.sendProcessStdin', 'supervisor.sendRemoteCommEvent', 'supervisor.shutdown', 'supervisor.startAllProcesses', 'supervisor.startProcess', 'supervisor.startProcessGroup', 'supervisor.stopAllProcesses', 'supervisor.stopProcess', 'supervisor.stopProcessGroup', 'supervisor.tai
@jldupont
jldupont / gist:1644406
Created January 20, 2012 01:34
Python: list of installed packages through easy_install / distutils
import pkg_resources
distros = pkg_resources.AvailableDistributions() # scan sys.path
for key in distros:
for dist in distros[key]:
print dist.name, dist.version
@jldupont
jldupont / gist:1644429
Created January 20, 2012 01:35
Python: determining package version # at runtime
>>> import pkg_resources
>>> pkg_resources.get_distribution("blogofile").version
'0.7.1'
@jldupont
jldupont / gist:1648943
Created January 20, 2012 18:43
Python: access a module's function
import sys
mod=sys.modules[__name__]
fnc=getattr(mod, fnc_name, None)
if fnc is not None:
fnc(args)
@jldupont
jldupont / gist:1678996
Created January 25, 2012 21:46
nose class test
class Test():
@classmethod
def setup_class(self):
"""setup"""
@classmethod
def teardown_class(self):
"""teardown"""
@jldupont
jldupont / gist:1686323
Created January 27, 2012 01:22
Example configuration file for jldrxsqs
-e
-q
test
-p
5
@jldupont
jldupont / gist:1691098
Created January 27, 2012 21:46
urllib2: fetch web page & return headers
import urllib2
response=urllib2.urlopen(page)
data=response.read()
headers=response.info().items()
@jldupont
jldupont / gist:1725592
Created February 2, 2012 20:31
jldleader example configuration file
-dp
/tmp/am_leader
-tn
election
-p
5
-dq
@jldupont
jldupont / gist:1731173
Created February 3, 2012 17:06
Fun with Python decorators
"""
Created on 2012-02-03
@author: jldupont
@pattern(int, str, [], "p1>p2")
@patterned
def function_name(p1, p2, p3):
@jldupont
jldupont / gist:1738545
Created February 4, 2012 15:41
Erlang / greet
greet(male, Name) ->
io:format("Hello, Mr. ~s!", [Name]);
greet(female, Name) ->
io:format("Hello, Mrs. ~s!", [Name]);
greet(_, Name) ->
io:format("Hello, ~s!", [Name]).