Skip to content

Latest commit

 

History

History
33 lines (29 loc) · 2.78 KB

DEVELOPMENT.md

File metadata and controls

33 lines (29 loc) · 2.78 KB

Local Development

Follow these steps to prepare the repository for local development activities.

  1. Clone this repository

  2. 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

  3. Activate the development environment by running...

    Operating System Command
    Linux / MacOS . ./Activate.sh
    Windows Activate.cmd
  4. 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.
  5. [Optional] Deactivate the development environment by running...

    Operating System Command
    Linux / MacOS . ./Deactivate.sh
    Windows Deactivate.cmd