This software is pre-production and should not be deployed to production servers.
Table of Contents
Please follow rules from contributing guide .
- Install epel-release repository and basic developer tools:
yum install make git whichNote: that on production system, you should use Python 3.6 as describe here.
- Install Python 3.6:
yum install python3- Clone WCA repository:
git clone https://github.com/intel/workload-collocation-agent- Further commands should be run from wca root directory:
cd workload-collocation-agent- Prepare virtual environment for WCA:
make venv- Start using newly created virtualenv:
source env/bin/activateIf you need to deactivate virtual environment simply use command:
deactivateThose command should be run from virtual environment:
make unitYou can use make to check code style, or build packages:
make flake8
make wca_packageYou can run without building a distribution like this(venv must exist prior to running following commands):
source env/bin/activate
sudo env PYTHONPATH=. `which python` wca/main.py --root -c $PWD/configs/extra/static_measurements.yamlUsing example allocator:
source env/bin/activate
sudo env PYTHONPATH=. `which python` wca/main.py --root -c configs/extra/static_allocator.yamlWhen rebuilding you can use existing PEX build cache, to speedup building process (cache TTL set to 7 days):
PEX_OPTIONS='--no-index --cache-ttl=604800' make wca_packageIt will try to find an ipdb or use internal built-in pdb module before running main() function to enter debug mode.
PEX_MODULE=wca.main:debug ./dist/wca.pex