A collection of network analyses
Project description
nwa
nwa: A collection of network analyses
Contents
Use Case
A collection of network analyses implementations.
Input: [TODO].
Output: [TODO].
Requirements
- [TODO]
Assumptions
- [TODO]
Design
[TODO]
Configuration
Behaviour of the application can be configured via Environment Variables.
Environment Variable | Description | Type | Default Value |
---|---|---|---|
NWA_LOG_LEVEL |
Level of logging - overrides verbose/quiet flag | string | - |
NWA_LOG_DIR |
Directory to save logs | string | - |
NWA_BIN_DIR |
Directory to save any output (bin) | string | bin |
Development
Configure for local development
- Clone repo on your local machine
- Install
conda
orminiconda
- Create your local project environment (based on
conda
,poetry
,pre-commit
):
$ make env
- (Optional) Update existing local project environment:
$ make env-update
Run locally
On a terminal, run the following (execute on project's root directory):
- Activate project environment:
$ . ./scripts/helpers/environment.sh
- Run the CLI using
poetry
:
$ poetry run nwa
Contribute
[ Not Available ]
Testing
(part of CI/CD)
[ Work in progress... ]
To run the tests, open a terminal and run the following (execute on project's root directory):
- Activate project environment:
$ . ./scripts/helpers/environment.sh
- To run pytest:
$ make test
- To check test coverage:
$ make test-coverage
Versioning
Increment the version number:
$ poetry version {bump rule}
where valid bump rules are:
- patch
- minor
- major
- prepatch
- preminor
- premajor
- prerelease
Changelog
Use CHANGELOG.md
to track the evolution of this package.
The [UNRELEASED]
tag at the top of the file should always be there to log the work until a release occurs.
Work should be logged under one of the following subtitles:
- Added
- Changed
- Fixed
- Removed
On a release, a version of the following format should be added to all the current unreleased changes in the file.
## [major.minor.patch] - YYYY-MM-DD
Deployment
Pip package
On a terminal, run the following (execute on project's root directory):
- Activate project environment:
$ . ./scripts/helpers/environment.sh
- To build pip package:
$ make build-package
- To publish pip package (requires credentials to PyPi):
$ make publish-package
Docker image
On a terminal, run the following (execute on project's root directory):
- Activate project environment:
$ . ./scripts/helpers/environment.sh
- To build docker image:
$ make build-docker
Production
For production, a Docker image is used. This image is published publicly on docker hub.
- First pull image from docker hub:
$ docker pull nichelia/nwa:[version]
- First pull image from docker hub:
$ docker run --rm -it -v ~/nwa_bin:/usr/src/bin nichelia/nwa:[version]
This command mounts the application's bin (outcome) to user's root directory under nwa_bin folder.
where version is the published application version (e.g. 0.1.0)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.