Go to file
Oliver Smith fb1dc7c405 Drop python2 support
Remove all compatibility code for python2.

All scripts are already python 3 compatible since
I80e5850a8978d78cda793e2192ef4bd3fd54a121 and
I1b4a629f12863c498a8681b555f57b4e255cebfb.

dpkg-buildpackage shows that it is still invoking setup.py with python
in addition to python3, on debian stretch. But after spending quite some
time on trying to convince it to not care about python2 without success
(trying different variables, overrides, --without python2 flags etc.),
I'm leaving it as is. The resulting package is the python3 package, which
is what we want.

Related: OS#2819
Change-Id: Iabda95073faa2191fd117e9637e0858c589e9d9e
2019-12-05 13:41:38 +01:00
contrib Drop python2 support 2019-12-05 13:41:38 +01:00
debian Drop python2 support 2019-12-05 13:41:38 +01:00
doc/examples ctrl2cgi: update default parameters in config 2019-01-07 17:04:10 +01:00
osmopy Drop python2 support 2019-12-05 13:41:38 +01:00
scripts Drop python2 support 2019-12-05 13:41:38 +01:00
tests Drop python2 support 2019-12-05 13:41:38 +01:00
.gitignore Ignore compilation byproducts 2017-12-20 16:05:49 +00:00
.gitreview Add git-review config 2017-11-23 14:46:07 +01:00
README tweak README 2019-07-08 15:19:19 +02:00
setup.py Drop python2 support 2019-12-05 13:41:38 +01:00

README

Building/installation:

	sudo python setup.py install
	sudo python3 setup.py install

If you prefer to have it cleanly removable, install checkinstall and run

	sudo checkinstall python setup.py install

Alternatively, just run

	pip install --user -e ./
	pip3 install --user -e ./

depending on your python version.

Use:
There are currently following scripts in this package:
osmotestconfig.py - test that apps start/write with example configs
soap.py - implementation of SOAP <-> Ctrl proxy implemented on top of Twisted (deprecated, unmaintained)
ctrl2cgi.py - implementation of CGI <-> Ctrl proxy implemented on top of Twisted (deprecated, unmaintained)
osmo_trap2cgi.py - implementation of CGI <-> Ctrl proxy implemented on top of asyncio and aiohttp
osmo_rate_ctr2csv.py - rate counter dumper on top of osmo_ipa
osmo_interact_vty.py - pipe stdin/stdout to a VTY session
osmo_interact_ctrl.py - pipe stdin/stdout to a CTRL port
osmo_verify_transcript_vty.py - VTY testing by VTY session screen dumps
osmo_verify_transcript_ctrl.py - CTRL testing by CTRL session script files
twisted_ipa.py - implementation of IPA and Ctrl protocols on top of Twisted framework
osmodumpdoc.py - dump documentation, superseded by osmo_interact_vty.py -X
osmotestvty.py - test vty operations, superseded by osmo_verify_transcript_vty.py

Some of these scripts import a project-specific osmoappdesc.py,
which provides information about the available apps, configs, vty ports, etc.
and is provided by other source trees (like osmo-bsc.git, osmo-msc.git, ...)

Run the scripts with osmoappdesc.py in the current directory (preferred)
or with -p <the directory containing osmoappdesc.py>.
Remember that osmoappdesc.py may contain relative paths.

Example:
After install osmodumpdoc for openbsc's apps can be run by:
cd <your_source_dir>/openbsc/openbsc && osmodumpdoc.py

Libraries:
osmopy/osmoutil.py - code that's shared between the scripts
osmopy/osmo_ipa.py - generic implementation of IPA and Ctrl protocols in python
osmopy/trap_helper.py - generic Trap class and related helpers used by soap.py and ctrl2cgi.py
osmopy/osmo_interact/{vty,ctrl}.py - general interactions with VTY and CTRL ports
osmopy/obscvty.py - connect to a vty, superseded by osmo_interact/vty

obscvty.py may be of general use. osmoutil.py probably isn't.