diff options
Diffstat (limited to 'topics')
| -rw-r--r-- | topics/systems/debug-and-developing-code-with-genenetwork-system-container.gmi | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/topics/systems/debug-and-developing-code-with-genenetwork-system-container.gmi b/topics/systems/debug-and-developing-code-with-genenetwork-system-container.gmi index 131474c..7565f97 100644 --- a/topics/systems/debug-and-developing-code-with-genenetwork-system-container.gmi +++ b/topics/systems/debug-and-developing-code-with-genenetwork-system-container.gmi @@ -1,12 +1,33 @@ # Debugging and developing code -Once we get to the stage of having a working system container it would be nice to develop code against it. The idea is to take an existing running system container and start modifying code *inside* the container by brining in an external path. +Once we get to the stage of having a working system container it would be nice to develop code against it. The idea is to take an existing running system container and start modifying code *inside* the container by bringing in an external path. -First build and start a guix system container as described in +In principle we'll build guix system containers as described in -=> /topics/guix/guix-system-containers-and-how-we-use-them.gmi +=> /topics/guix/guix-system-containers-and-how-we-use-them -The idea is to do less `guix pull' and system container builds, so as to speed up development. The advantage of using an existing system container is that the full deployment is the same on our other running systems! No more path hacks, in other words. +The idea is to minimise `guix pull' and system container builds, so as to speed up development. The advantage of using an existing system container is that the full deployment is the same on our other running systems! No more path hacks, in other words. + +# Philosophy + +For development containers we will: + +* Use sane default values - for URLs, paths etc. +* Add services incrementally (i.e., not one big blob) +* Run tests inside the container (not during build time) +* Build indexes etc. outside the container - or make it optional + +Also: + +* We should be able to run gn3 and gn-guile (aka gn4) as a guix shell without anything else +* We should be able to run gn2 with only gn3 and/or gn-guile as a guix shell with external DBs. +* We should be albe to run gn2+gn3+gn-guile as a system container with external DBs. +* We should be able to run gn-auth with gn2 as a system container +* We should be able to run the uploader as a system container + +I.e. no https, not authentication by default (as long as we run on localhost). The localhost URLs and file paths can be defaults because there will only be one development container running on a single machine. + +Databases, and files will simply be shared on default paths - /export/guix-containers/gndev/... # GN3 in system container |
