Brain federated learning experiment.
This project uses uv.
uv syncuv run prek install
uv run prek run -auv run pytestuv run make -C docs html
cd docs/_build/html
python -m http.servervpn-client: WireGuard VPN client (ghcr.io/neurodatascience/brainflex-vpn-client)vpn-server: WireGuard VPN server, built on top ofvpn-client(ghcr.io/neurodatascience/brainflex-vpn-server)
To build locally:
docker build -t vpn-client docker/vpn-client
docker build -t vpn-server docker/vpn-serverPushing a docker/vX.Y.Z tag builds both images and publishes them to GHCR with tags X.Y.Z and latest.
CLI releases are tagged cli/vX.Y.Z.
Docker image releases are tagged docker/vX.Y.Z.
To create a release, tag the latest commit on the upstream main branch and push the tag upstream:
git fetch upstream
git tag -a docker/vX.Y.Z upstream/main -m "Docker images vX.Y.Z"
git push upstream docker/vX.Y.ZTags must be on main: the Docker image workflow refuses to publish images for tags on other commits.