commit | 8df749e852ab6b7470413ebbc1ad8ffa95d7f560 | [log] [tgz] |
---|---|---|
author | Scott Baker <smbaker@gmail.com> | Tue Apr 09 10:43:20 2019 -0700 |
committer | Scott Baker <smbaker@gmail.com> | Tue Apr 09 12:01:44 2019 -0700 |
tree | 187162273ec6189e6cb79e2c639fedfa7d0801af | |
parent | 08d1040dd53111a51d245c7dc2f2101ff70b9a87 [diff] |
SEBA-420 Enable linting test in Makefile; update requirements Change-Id: Iccd51cf0974d4a8ecefecef2c7d1f907e1267e5a
XOS is a framework for operationalizing a collection of disaggregated services. It is packaged as a project in the Open CORD initiative, with source code managed through https://gerrit.opencord.org. It is also mirrored at https://github.com/opencord.
You can download and use XOS either as part of CORD (see the CORD Guide for details) or as a standalone component (see the XOS Guide for details).
Also visit the XOS Wiki Page for additional information.
Run make test
to run all tests on the XOS codebase. This is what happens during the verify_xos_unit-test
job in Jenkins.
Running these tests requires:
apt install python2-dev python3-dev build-essential
) to build packages with C extensions.This will run 3 sets of test targets, which can also be run individually:
lib-test
: runs tox
on each of the library modules stored in lib
. These are tested against both Python 2 and 3 by running both nose2
and flake8
.
If you are making changes only to a specific library, it is recommended that you run tox
directly inside that modules directory, which should run much more quickly than testing all the libraries.
xos-test
: runs nose2
to test the xos
directory. This code is not yet Python 3 or flake8 clean.
migration-test
: Runs the xos-migrate
tool on the XOS core modules. This verifies that the Django migrations have been properly created. If you've changed xosgenx
or the core.xproto
file you may need to generate new migrations. See docs/dev/xosmigrate.md
for more information.
Additionally, a virtualenv will be created in venv-xos
- you can source ./venv-xos/bin/activate
if you'd like to run tools like xos-migrate
manually.
Testing errors that complain about missing compliers or header files: src/twisted/test/raiser.c:4:20: fatal error: Python.h: No such file or directory
You probably need to install a C build system and the Python development headers.
After making changes to the requirements.txt or other files, the changes don't seem to be register
You might need to clean up any files left behind by previous development work. make clean
in the root Makefile should clean up most files. Additionally, git clean -ixd
will let you interactively remove all ignored files and directories from your source tree.