Metadata-Version: 2.1
Name: hubaxle
Version: 0.1.2
Summary: Control interface for the GL Hub
License: MIT
Author: Groundlight
Author-email: info@groundlight.ai
Requires-Python: >=3.11,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: django (>=5.0.2,<6.0.0)
Requires-Dist: pytest (>=8.0.2,<9.0.0)
Requires-Dist: python-dotenv (>=1.0.1,<2.0.0)
Requires-Dist: pyyaml (>=6.0.1,<7.0.0)
Description-Content-Type: text/markdown

# HubAxle - control interface for the GL Hub

Exposes an HTTP API for controlling the GL Hub.

There are several primary functions:

- Update the configuration files which the GL Runtime is consuming
- Monitor status of the GL Runtime
- Discover and set up cameras that are accessible to the hub


## Using it.

1. Set up a user by setting the `HUB_LOGINS` env var to `username:password` 
   Either do this through the balena dashboard, or by running 
```
docker compose up -e HUB_LOGINS="username:password" hubaxle
```

2. Open the port on the hubaxle container.  (port 8000 inside the container, port 80 on the host)

3. Open `/admin/` page, and authenticate with your login

4. Create a config entry called `runtime.yaml`
5. Watch as the glruntime container does what you tell it to!

## Testing
```
./src/manage.py test
```

## Development:

If it's awkward to set the `HUB_LOGINS` env var, you can also run

```
./src/manage.py createsuperuser
```

from the hubaxle container, and then you can log in with the credentials you set.


