Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support using packer #8

Open
KiaraGrouwstra opened this issue Jun 10, 2024 · 5 comments
Open

support using packer #8

KiaraGrouwstra opened this issue Jun 10, 2024 · 5 comments

Comments

@KiaraGrouwstra
Copy link
Contributor

the readme states teraflops 'relies on established software like colmena, terraform, and nixos-infect to provide all major functionality'.

now, while i'm not sure how that statement relates to zhaofengli/colmena#148, one piece of software i expected to hear mentioned in the same breath is packer, which has wider support than a community effort like nixos-generators reasonably could. making use of imaging functionality of the compute providers, this may facilitate prepping nixos base images so we could spin up more new machines faster.

it would be nice to see teraflops (documented with examples as?) playing nice with packer as well.
(or would colmena be a better place for this?)

@aanderse
Copy link
Owner

thanks for your comment @KiaraGrouwstra

i think colmena was very specifically intended to not provide this sort of stateful functionality, though i don't want to put words in the mouth of its creator

the issue you mentioned is a great one because the issue highlights where a tiny script like teraflops can add tons of value while keeping colmena focused on what it does best


packer - yes! packer (when integrated with terraform) would fit so well into the teraflops ecosystem

the requirements i had which led me to create teraflops were mostly in the lxd space, but since creating plugins for teraflops is so simple i added a few others as an example (like digitalocean)

i would love if other people wanted to use teraflops and contribute more plugins/backends as well as examples... so much so that i would be willing to work together on these, even if i don't need them

let me know if you're interested!

@KiaraGrouwstra
Copy link
Contributor Author

good to hear. :)
i've just tinkered with it a bit, but i'd be interested as well. i forked terranix to use nix for packer configs as well, but basically one would still have a script call nixos-infect bit to get a nixos machine, difference being one doing this thru packer so as to get the reusable base image.
you can also find me on the nixos matrix as kiara.

@KiaraGrouwstra
Copy link
Contributor Author

on another note, i'll admit i'm surprised to learn about your use-case. :)
i haven't been using VMs much, but had been thinking in the direction of testing nixos server configs (to be deployed with teraflops) in containers using arion.

@aanderse
Copy link
Owner

i haven't been using VMs much, but had been thinking in the direction of testing nixos server configs (to be deployed with teraflops) in containers using arion.

it's a good plan 👍

we have some high powered machines (all preconfigured to run rootless podman) that developers can jump on, clone our stack, hack away with vim or vscode (using remote extension) - and then with a single command they can use arion to spin up the entire stack in a way that very accurately reflects production (❤️ arion)

from there we deploy production to lxd containers (via teraflops) all using the same basic nixos config

sounds like we share a couple ideas 😃

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants