It would be nice if the pull requests on the development repos were deployed as well.
- The pull requests need to be fetched from GitHub API with the branch info and stored as JSON.
- The JSON is read in nix, for each pull request the repo is fetched followed by getFlake extracting the NixOS module.
- Each NixOS module is deployed to a separate systemd-nspawn container, link. The package must be built with
--base-href as /dev/branch_name, link, so it needs to be an option you override in the NixOS module and pacakge.
- Add a nginx service which will forward the
/dev/branch_name to the container.
- Forward the
/dev/* on the gateway.
- Add an action to the development repo which will trigger a refresh of the JSON here and deploy.
It would be nice if the pull requests on the development repos were deployed as well.
--base-hrefas/dev/branch_name, link, so it needs to be an option you override in the NixOS module and pacakge./dev/branch_nameto the container./dev/*on the gateway.