A Packer plugin for interfacing with Git

Primary LanguageGoMozilla Public License 2.0MPL-2.0

Git Packer Plugin


A plugin for Packer which provides access to git. Compatible with Packer >= 1.7.0

Under the hood, it uses go-git.


Add the plugin to your packer config:

packer {
  required_plugins {
    git = {
      version = ">=v0.3.2"
      source  = "github.com/ethanmdavidson/git"

Add the data source:

data "git-commit" "example" { }

Now you should have access to info about the commit:

locals {
  hash = data.git-commit.example.hash

See docs for more detailed information.


The GNUmakefile has all the commands you need to work with this repo. The typical development flow looks something like this:

  1. Make code changes, and add test cases for these changes.
  2. Run make generate to recreate generated code.
  3. Run make dev to build the plugin and install it locally.
  4. Run make testacc to run the acceptance tests. If there are failures, go back to step 1.
  5. Update examples in ./example directory if necessary.
  6. Run make run-example to test examples.
  7. Once the above steps are complete: commit, push, and open a PR!

For local development, you will need to install: