Follow these steps to prepare the repository for local development activities.
-
Clone this repository
-
Bootstrap the local repository by running...
Operating System Command Linux / MacOS Standard:
Bootstrap.sh
Standard + packaging:
Bootstrap.sh --package
Windows Standard:
Bootstrap.cmd
Standard + packaging:
Bootstrap.cmd --package
-
Activate the development environment by running...
Operating System Command Linux / MacOS . ./Activate.sh
Windows Activate.cmd
-
Invoke
Build.py
Command Description Example Notes black
Validates that the source code is formatted by black. Validation:
python Build.py black
Perform formatting:
python Build.py black --format
pylint
Validates the source code using pylint. python Build.py pylint
pytest
Runs automated tests using pytest. Without Code Coverage:
python Build.py pytest
With Code Coverage:
python Build.py pytest --code-coverage
update_version
Updates the semantic version of the package based on git commits using AutoGitSemVer. python Build.py update_version
package
Creates a Python wheel package for distribution; outputs to the /dist
directory.python Build.py package
Requires --package
when bootstrapping in step #2.publish
Publishes a Python wheel package to PyPi. https://test.pypi.org:
python Build.py publish
https://pypi.org:
python Build.py publish --production
Requires --package
when bootstrapping in step #2.build_binary
Builds an executable for your package that can be run on machines without a python installation; outputs to the /build
directory.python Build.py build_binary
Requires --package
when bootstrapping in step #2.create_docker_image
Creates a Docker image based on the current development environment. This supports the "Reusable" aspect of FAIR principles by creating a snapshot of the repository and all of its dependencies as they exist in a single moment in time. python Build.py create_docker_image
Requires docker. -
[Optional] Deactivate the development environment by running...
Operating System Command Linux / MacOS . ./Deactivate.sh
Windows Deactivate.cmd