This is the command lamson that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
PROGRAM:
NAME
Lamson - Lamson is a modern Pythonic mail server built like a web application server.
SYNOPSIS
lamson <action> [options]
DESCRIPTION
lamson is a pure Python SMTP server designed to create robust and complex mail
applications in the style of modern web frameworks such as Django. Unlike traditional SMTP
servers like Postfix or Sendmail, Lamson has all the features of a web application stack
(ORM, templates, routing, handlers, state machines, Python) without needing to configure
alias files, run newaliases, or juggle tons of tiny fragile processes. Lamson also plays
well with other web frameworks and Python libraries.
ACTIONS
log [-port PORT] [-host HOST] [-pid PIDFILE] [-chroot True|False] [-chdir DIR] [-umask
UMASK] [-uid UID] [-gid GID] [-FORCE True|False]
Runs a logging only server on the given hosts and port. It logs each message it
receives and also stores it to the run/queue so that you can make sure it was
received in testing.
lamson log -port 8825 -host 127.0.0.1 \
-pid ./run/log.pid -chroot False \
-chdir "." -umask False -uid False -gid False \
-FORCE False
If you specify a uid/gid then this means you want to first change to root, set
everything up, and then drop to that UID/GID combination. This is typically so you
can bind to port 25 and then become "safe" to continue operating as a non-root
user.
If you give one or the other, this it will just change to that uid or gid without
doing the priv drop operation.
send [-port PORT] [-host HOST] [-debug 0|1] [-sender EMAIL] [-to EMAIL] [-subject SUBJECT]
[-body BODY] [-attach FILENAME]
Sends an email to someone as a test message. See the sendmail command for a
sendmail replacement.
lamson send -port 8825 -host 127.0.0.1 -debug 1 \
-sender EMAIL -to EMAIL -subject STR -body STR -attach False'
sendmail [-port PORT] [-host HOST] [-debug 0|1] -- [RECIPIENTS]
Used as a testing sendmail replacement for use in programs like mutt as an MTA. It
reads the email to send on the stdin and then delivers it based on the port and
host settings.
lamson sendmail -port 8825 -host 127.0.0.1 -debug 0 -- [recipients]
start [-pid PIDFILE] [-FORCE True|False] [-chroot True|False] [-chdir DIR] [-umask UMASK]
[-uid UID] [-gid GID] [-boot BOOTMODULE]
Runs a lamson server out of the given directory.
lamson start -pid ./run/smtp.pid -FORCE False -chroot False -chdir "." \
-umask False -uid False -gid False -boot config.boot
stop [-pid PIDFILE] [-KILL True|False] [-ALL DIR]
Stops a running lamson server. Give -KILL True to have it stopped violently. The
PID file is removed after the signal is sent. Give -ALL the name of a run
directory and it will stop all pid files it finds there.
lamson stop -pid ./run/smtp.pid -KILL False -ALL False
restart [-pid PIDFILE] [-FORCE True|False] [-chroot True|False] [-chdir DIR] [-umask
UMASK] [-uid UID] [-gid GID] [-boot CONFIG] [-KILL True|False] [-ALL DIR]
Simply attempts a stop and then a start command. All options for both apply to
restart.
status [-pid PIDFILE]
Prints out status information about lamson useful for finding out if it's running
and where.
lamson status -pid ./run/smtp.pid
queue [-pop|-get|-remove|-count|-clear|-keys] [-name QUEUE]
Let's you do most of the operations available to a queue.
lamson queue (-pop | -get | -remove | -count | -clear | -keys) -name run/queue
routes [-path PATH] -- [CONFIG] [-test EMAIL]
Prints out valuable information about an application's routing configuration after
everything is loaded and ready to go. Helps debug problems with messages not
getting to your handlers. Path has the search paths you want separated by a ':'
character, and it's added to the sys.path.
lamson routes -path $PWD -- config.testing -test ""
It defaults to running your config.testing to load the routes. If you want it to
run the config.boot then give that instead:
lamson routes -- config.boot
You can also test a potential target by doing -test EMAIL.
gen [-project NAME]
Generates various useful things for you to get you started.
lamson gen -project STR
spell [-language LANG] -- [FILES]
Runs the PyEnchant spell checker on the given file. Use this to train the spell
checker for unit test runs when new words show up.
lamson spell -langauge en_US -- [files]
It will run interactively and if you perform an edit on the file it will save your
changes back to the file and make a backup named with .bak.
web [-basedir DIR] [-port PORT] [-host HOST]
Starts a very simple files only web server for easy testing of applications that
need to make some HTML files as the result of their operation. If you need more
than this then use a real web server.
lamson web -basedir "." -port 8888 -host '127.0.0.1'
This command doesn't exit so you can view the logs it prints out.
cleanse [-input MAILBOX] [-output MAILBOX]
Uses Lamson mail cleansing and canonicalization system to take an input maildir (or
mbox) and replicate the email over into another maildir. It's used mostly for
testing and cleaning.
blast [-input MAILBOX] [-port PORT] [-host HOST] [-debug 0|1]
Given a maildir, this command will go through each email and blast it at your
server. It does nothing to the message, so it will be real messages hitting your
server, not cleansed ones.
version
Prints the version of Lamson, the reporitory revision, and the file it came from.
help [-for CMD]
Prints out help for the commands.
lamson help
You can get help for one command with:
lamson help -for STR
Use lamson online using onworks.net services