You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently all commands run things in docker container (including e2e and kind). This has benefit of ultimate hermetization (less "why it works on my machine, but not on CI" moments).
However there are downsides of that: harder to debug those commands (not intuitive, more layers), harder to edit commands (passing arguments), surprising side effects (state is often copied at the start and result is copied back overwriting changes in the mean time, and little to significant (depends on env) latency penalty especially for quick commands.
Since all our tools (at least most) are in Go, we could use https://github.com/bwplotka/bingo to pin them. We could verify envvars, go version, OS etc. We can slim our commands in latency while keeping majority of hermetization benefits. We also can agree on basic prerequisites outside of bingo (e.g. Linux/Mac, modern bash, Go 1.19+ installed etc).
We could also do this work while having NO_DOCKER env OR dedicate copy of the command for no docker run of the same thing to allow playing with the new mode and gather more data what we want 🤗
The text was updated successfully, but these errors were encountered:
Currently all commands run things in docker container (including e2e and kind). This has benefit of ultimate hermetization (less "why it works on my machine, but not on CI" moments).
However there are downsides of that: harder to debug those commands (not intuitive, more layers), harder to edit commands (passing arguments), surprising side effects (state is often copied at the start and result is copied back overwriting changes in the mean time, and little to significant (depends on env) latency penalty especially for quick commands.
Since all our tools (at least most) are in Go, we could use https://github.com/bwplotka/bingo to pin them. We could verify envvars, go version, OS etc. We can slim our commands in latency while keeping majority of hermetization benefits. We also can agree on basic prerequisites outside of bingo (e.g. Linux/Mac, modern bash, Go 1.19+ installed etc).
We could also do this work while having NO_DOCKER env OR dedicate copy of the command for no docker run of the same thing to allow playing with the new mode and gather more data what we want 🤗
The text was updated successfully, but these errors were encountered: