All Projects → andrewchambers → terraform-provider-nix

andrewchambers / terraform-provider-nix

Licence: MIT license
terraform provider that manages nix builds and nixos machines.

Programming Languages

go
31211 projects - #10 most used programming language
HCL
1544 projects
shell
77523 projects
Nix
1067 projects

Projects that are alternatives of or similar to terraform-provider-nix

nix-bisect
Bisect nix builds. Status: alpha/proof of concept. You'll probably have to dig into the implementation if you want to use it. Built for personal use, lightly maintained. PRs welcome. Issues welcome, but I make no promises regarding responses or fix
Stars: ✭ 72 (-31.43%)
Mutual labels:  nixos, nixpkgs
triton
Triton Operating System
Stars: ✭ 56 (-46.67%)
Mutual labels:  nixos, nixpkgs
nixpkgs
Nix Packages collection used in Nubank
Stars: ✭ 24 (-77.14%)
Mutual labels:  nixos, nixpkgs
gradle2nix
Generate Nix expressions which build Gradle-based projects.
Stars: ✭ 71 (-32.38%)
Mutual labels:  nixos, nixpkgs
Nixpkgs
Nix Packages collection
Stars: ✭ 8,322 (+7825.71%)
Mutual labels:  nixos, nixpkgs
nixpkgs-python-importer
Violate Nix philosophy, install Python packages mid-session with `from nixpkgs.scipy import scipy`.
Stars: ✭ 27 (-74.29%)
Mutual labels:  nixos, nixpkgs
yants
Yet Another Nix Type System | Source has moved to https://git.tazj.in/tree/nix/yants
Stars: ✭ 35 (-66.67%)
Mutual labels:  nixos, nixpkgs
dotfiles
No place like ~. Nix. All. The. Things.
Stars: ✭ 48 (-54.29%)
Mutual labels:  nixos, nixpkgs
Home Manager
Manage a user environment using Nix [maintainer=@rycee]
Stars: ✭ 2,447 (+2230.48%)
Mutual labels:  nixos, nixpkgs
crane
A Nix library for building cargo projects. Never build twice thanks to incremental artifact caching.
Stars: ✭ 348 (+231.43%)
Mutual labels:  nixos, nixpkgs
dotfiles
pls help
Stars: ✭ 301 (+186.67%)
Mutual labels:  nixos
nixos-router
NixOS expression for creating a simple router
Stars: ✭ 32 (-69.52%)
Mutual labels:  nixos
terraform-provider-kite
Terraform provider for managing long term portfolio with Zerodha Kite
Stars: ✭ 21 (-80%)
Mutual labels:  terraform-provider
terraform-aws-kinesis-firehose
This code creates a Kinesis Firehose in AWS to send CloudWatch log data to S3.
Stars: ✭ 25 (-76.19%)
Mutual labels:  terraform-provider
nix-articles
Some articles about getting started with Nix programming & configuration
Stars: ✭ 134 (+27.62%)
Mutual labels:  nixos
elemental
Elemental, the component parts of a Nix/OS development system.
Stars: ✭ 44 (-58.1%)
Mutual labels:  nixos
terraform-provider-rediscloud
Terraform Redis Enterprise Cloud Pro Provider: Deploy, update, and manage Redis Enterprise Cloud Pro databases as code through HashiCorp Terraform
Stars: ✭ 24 (-77.14%)
Mutual labels:  terraform-provider
dotfiles-nix
Configuration files for my NixOS machine, declared by home-manager
Stars: ✭ 137 (+30.48%)
Mutual labels:  nixos
terraform-provider-opc
Terraform Oracle Public Cloud provider
Stars: ✭ 29 (-72.38%)
Mutual labels:  terraform-provider
terraform-provider-checkly
Terraform provider for the Checkly monitoring service
Stars: ✭ 37 (-64.76%)
Mutual labels:  terraform-provider

terraform-provider-nix

A terraform provider for nix builds and nixos installations.

With this provider you can do things like:

  • Build a vm image from a nix expression and deploy it with terraform.
  • Build a docker image from a nix expression and deploy it with terraform.
  • Manage a nixos installation via ssh.

Note, this is a completely different project from the existing plugin in nixpkgs. Please consult that project to decide which suites your needs better.

Quickstart

This will run the example which is a good starting point, demonstrating all options. The example uses google cloud, though I would appreciate contributed examples for other platforms. After running the example you will have a managed server and vm images.

go build
cd example
terraform init -plugin-dir ../
terraform apply -var google_cloud_project=your_project_id

Debugging

To view commands being run, set the env variable TF_LOG=debug.

Example configuration and options

See the example directory for an example configuration with all valid options specified.

Development Status

Working, but want feedback and users. Currently breaking changes are possible to enhance the design. Breaking changes will be announced on the mailing list.

Contact

Sponsor Messages

... Your message here

Sponsoring

This project took time and effort to make, please sponsor the project via this paypal donation link.

Add a markdown message shorter than 70 characters total to your donation it will be added to the sponsor section. Note that sponsor messages may be rejected at the project authors judgement.

If you can't afford to sponsor, please consider giving this project a star and share with your friends.

Authors

Andrew Chambers - [email protected]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].