We gladly welcome pull requests.
If you've never done a pull request before we recommend you read this guide to get you started.
Before making any changes, we recommend opening an issue (if it doesn't already exist) and discussing your proposed changes. This will let us give you advice on the proposed changes. If the changes are minor, then feel free to make them without discussion.
Development Docker Containers
Armory launches containers based on the
__version__ string found in
Only release versions will be published to Dockerhub, so development branch images much be built locally:
bash docker/build.sh <tf1|tf2|pytorch|pytorch-deepspeech|all> dev
When adding new features please add test cases to ensure their correctness. We use pytest as our test runner.
pytest, users should follow the
This splits tests into those used on the host:
pytest -s --disable-warnings tests/test_host
and the rest, which are run in the container (after building):
python -m armory exec tf1 -- pytest -s tests/test_tf1/ python -m armory exec tf2 -- pytest -s tests/test_tf2/ python -m armory exec pytorch -- pytest -s tests/test_pytorch/
As an example if you added a new pytorch baseline model,
you'll want to add testcases to
To run simply use the armory exec functionality:
python -m armory exec pytorch -- pytest -s tests/test_pytorch/