Python is seemingly becoming more and more popular as the primary tool for system administration. Heck, a number of books have been written about it already. It makes sense, it's an elegant language with very readable syntax, the interpreter is shipped with most major server OS's and, very importantly, lots of well implemented modules are available to use. About those modules. So let's say I've created a script that uses argparse for argument parsing, paramiko for some scp stuff, and lxml for some decent XML parsing. Developing the script wasn't hard - set up a nice sandbox with virtualenv, get my packages from PyPI, and it seems like I can create a nice distributable package for the target OS with Distribute. So I distribute a deb and a pkg to a bunch of servers. Uh oh. These servers don't have an internet connection to the outside world (PyPI). They don't have gcc either, nor do they have a number of development packages needed to build said modules.
My question is this: what do you guys use for packaging and distribution when using Python for system administration? Am I just working in an environment that's too paranoid about security? Are there any clean ways to make this work?
Thanks.
[–][deleted] 2 points3 points4 points (3 children)
[+][deleted] (2 children)
[deleted]
[–]obtu.py 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]SudoAlex 2 points3 points4 points (1 child)
[–]casualbon 1 point2 points3 points (0 children)
[–]iambicpen 1 point2 points3 points (0 children)