No description
Find a file
jedi a10eb089b4
All checks were successful
continuous-integration/drone/push Build is passing
add make login page functional using federation layer and enforce login in router
2024-04-08 20:58:44 +02:00
backend make dataset parsing more robust 2024-03-16 19:58:22 +01:00
deploy development setup using docker 2024-04-06 18:48:53 +02:00
docs restructure docs 2024-04-06 19:55:47 +02:00
frontend add make login page functional using federation layer and enforce login in router 2024-04-08 20:58:44 +02:00
.build.yml add CI config 2023-06-16 20:21:44 +02:00
.gitignore development setup using docker 2024-04-06 18:48:53 +02:00
LICENSE Initial commit 2023-03-06 22:13:36 +01:00
mkdocs.yml development setup using docker 2024-04-06 18:48:53 +02:00
README.md restructure docs 2024-04-06 19:55:47 +02:00

toolshed

Development

git clone https://github.com/gr4yj3d1/toolshed.git

or

git clone https://git.neulandlabor.de/j3d1/toolshed.git

all following development mode commands support auto-reloading and hot-reloading where applicable, they do not need to bw restarted after changes.

Backend only

cd toolshed/backend
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python configure.py
python manage.py runserver 0.0.0.0:8000 --insecure

to run this in properly in production, you need to configure a webserver to serve the static files and proxy the requests to the backend, then run the backend with just python manage.py runserver without the --insecure flag.

Frontend only

cd toolshed/frontend
npm install
npm run dev

Docs only

cd toolshed/docs
mkdocs serve

Full stack

cd toolshed
docker-compose -f deploy/docker-compose.override.yml up --build

Deployment

Requirements

  • python3
  • python3-pip
  • python3-venv
  • wget
  • unzip
  • nginx
  • uwsgi

Installation

  • Get the latest release from https://git.neulandlabor.de/j3d1/toolshed/releases/download/<version>/toolshed.zip or https://github.com/gr4yj3d1/toolshed/archive/refs/tags/<version>.zip.
  • Unpack it to /var/www or wherever you want to install toolshed.
  • Create a virtual environment and install the requirements.
  • Then run the configuration script.
  • Configure your webserver to serve the static files and proxy the requests to the backend.
  • Configure your webserver to run the backend with uwsgi.

for detailed instructions see docs.

CLI Client

Requirements

  • python3
  • python3-nacl

Usage Example

cli-client/toolshed-client.py --key <hex private key> --user name@example.com --host 1.2.3.4:8000 getinventory