Skip to content

Unify testenv and devenv

Kristian Larsson requested to merge 131-fold-in-devenv into master

These two concepts were great apart and even better combined! We now use an anonymous volume for /var/opt/ncs/packages in the NSO container allowing us to later attach to that volume, copy in updated files and recompile packages. Essentially we get the devenv experience but without having to remember to start it with devenv-start - now there's just one common entry point: testenv-start.

I previously had concerns about always using a volume, partly for inexperience with a volume and partly due to the extra overhead of a named volume. For example, using named volumes we might need to setup many volumes or share a volume for multiple NSO containers - could this have negative consequences? Could it mean that we don't test in an environment that is realistic as we wouldn't use volumes in production? With anonymous volumes, I no longer have these concerns and the environment from NSOs perspective should be virtually identical to when not using volumes, thus the risk for false positives or similar in tests is practically zero.

I've also refined, and perhaps squashed a bug or two in the process, the recompilation step, i.e. testenv-build. It seems to work quite nicely now.

I think the user experience of this is so much better than when having both the testenv and devenv.

Closes #131 (closed)

Merge request reports