1
1
mirror of https://github.com/adammck/terraform-inventory synced 2024-11-23 00:12:13 +01:00

Add Homebrew formula

This commit is contained in:
Adam Mckaig 2015-02-09 16:51:45 -05:00
parent 50e6962e46
commit 3531532d21
2 changed files with 45 additions and 10 deletions

@ -5,14 +5,18 @@ from a [Terraform] [tf] state file. It allows one to spawn a bunch of VMs with
Terraform, then (re-)provision them with Ansible. It's pretty neat. Terraform, then (re-)provision them with Ansible. It's pretty neat.
# Installation
On OSX, install it with Homebrew:
brew install https://raw.github.com/adammck/terraform-inventory/master/homebrew/terraform-inventory.rb
This is only a tiny tool, so it's not in the main Homebrew repo. Feel free to
add it, if you think that would be useful.
## Usage ## Usage
Just download the OSX binary and run it.
curl -L -O https://github.com/adammck/terraform-inventory/releases/download/v0.2/terraform-inventory
chmod u+x terraform-inventory
./terraform-inventory --list whatever.tfstate
Ansible doesn't (seem to) support calling the inventory script with parameters Ansible doesn't (seem to) support calling the inventory script with parameters
(and this tool doesn't support configuration via environment variables yet), so (and this tool doesn't support configuration via environment variables yet), so
I like to create a little shell script and call that. Something like: I like to create a little shell script and call that. Something like:
@ -27,10 +31,10 @@ Then run Ansible with the script as an inventory:
## Development ## Development
[Install Terraform] [tfdev] from source, then: It's just a Go app, so the usual:
git clone https://github.com/adammck/terraform-inventory.git go get github.com/adammck/terraform-inventory
cd terraform-inventory cd $GOPATH/adammck/terraform-inventory
go build go build
@ -43,4 +47,3 @@ MIT.
[ansible]: http://www.ansible.com [ansible]: http://www.ansible.com
[tf]: http://www.terraform.io [tf]: http://www.terraform.io
[tfdev]: https://github.com/hashicorp/terraform#developing-terraform

@ -0,0 +1,32 @@
class TerraformInventory < Formula
homepage "https://github.com/adammck/terraform-inventory"
head "https://github.com/adammck/terraform-inventory.git"
# Update these when a new version is released
url "https://github.com/adammck/terraform-inventory/archive/0.3.tar.gz"
sha1 "fc4d492e328255b422429e221ff7d31533da96f9"
depends_on "go" => :build
def install
ENV["GOPATH"] = buildpath
# Move the contents of the repo (which are currently in the buildpath) into
# a go-style subdir, so we can build it without spewing deps everywhere.
app_path = buildpath/"src/github.com/adammck/terraform-inventory"
app_path.install Dir["*"]
# Fetch the deps (into our temporary gopath) and build
cd "src/github.com/adammck/terraform-inventory" do
system "go", "get"
system "go", "build", "-ldflags", "-X main.build_version '#{version}'"
end
# Install the resulting binary
bin.install "bin/terraform-inventory"
end
test do
system "#{bin}/terraform-inventory", "version"
end
end