Genifest generates Manifest Files for the Impact Framework of the the Green Software Foundation by combining usage data from a server with a template file
# Install node
brew install node
# Install prometheus and node_exporter.
brew install prometheus
brew install node_exporter
cd genifest
# Create a virtual environment.
python3.12 -m venv venv
source venv/bin/activate
# Install package as editable including development requirements.
make develop
Start Prometheus in a new terminal window
prometheus --config.file=./prometheus.yaml
Start the first node_extractor in a new terminal window
node_exporter
Check http://localhost:9090/targets?search=
. You should see to endpoints.
With an activated virtual python environment call
genifest --template manifest-template.yaml
To generate a manifest-static.yaml
file.
npx ie --manifest manifest-static.yaml --output manifest-computed
A lot of common tasks during development are available using the make
command.
Here is a list of available commands:
clean Remove all Python artifacts.
clean-pyc Remove Python file artifacts.
clean-dist Clean build artifacts.
test Run tests quickly with the default Python.
docs: Build docs.
docs-serve: Build docs and serve on a local webserver.
coverage Run coverage.
format Format code following configured styleguide.
install Install the package to the active Python site-packages.
develop Install the package for local development.
bumbversion Bump version based on conventional commits.
changelog Generate CHANGELOG.md based on conventional commits.
check-version Check versions of installed packages.
dist Build package.
docker-build Build container for this application.
docker-publish Publish docker container on docker.io.
docker-run-develop Run bash in container for development.
docker-run Run docker container.
This repository makes use of pre-commit hooks to automatically do some cleanup and enforce code style before something is actually committed.
This template was generated from the Cookiecutter mypyproject template.