Skip to content

Instantly share code, notes, and snippets.

@grahamc
Last active March 2, 2020 03:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save grahamc/e707119e82f286793197edf118cb6012 to your computer and use it in GitHub Desktop.
Save grahamc/e707119e82f286793197edf118cb6012 to your computer and use it in GitHub Desktop.
```
plugin$ nix-shell
- mutable plugin source, immutable nixops src
- mypy works
- tests work
- `nixops` works, using this plugin
nixops$ nix-shell
- no plugins
- mutable nixops src
- mypy works
- tests work
nixops$ nix-shell --arg plugin ../plugin (not sure if this one is possible)
- mutable plugin, mutable nixops
- mypy checks both plugin and nixops
- tests checks both plugin and nixops
- `nixops` works including the plugin
nixops$ nix-shell --arg plugins "[ ../plugin1 ../plugin2 ../plugin3 ]" (not sure if this one is possible)
- mutable plugins, mutable nixops
- mypy checks all plugins and nixops
- tests checks all plugins and nixops
- `nixops` works including the plugins
plugin$ nix-build
- runs mypy
- runs tests
- produces artifact which can be passed in to a nixops build
- build result is NOT a working nixops
nixops$ nix-build
- runs mypy
- runs tests
- produces nixops which is functional, but without any plugins
nixops$ nix-build --arg plugin ../plugin
- runs mypy checks both plugin and nixops
- runs tests checks both plugin and nixops
- build result is a `nixops` works including the plugin
nixops$ nix-build --arg plugins "[ ../plugin1 ../plugin2 ../plugin3 ]"
- runs mypy checks all plugins and nixops
- runs tests checks all plugins and nixops
- build result is a `nixops` works including the plugins
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment