Skip to content

Latest commit

 

History

History

examples

README.md

Neptune infrastructure examples

Infrastructure examples for Neptune (Terraform/OpenTofu PR automation with Terramate). These files live in the Neptune repo under examples/.

They show different ways to use Neptune for Terraform/OpenTofu pull request automation: object storage backends (S3, GCS), PR automerge, stack management (Terramate or local), Terragrunt, and Terraform.

Example Description
s3-backend Neptune with S3 (or MinIO) for stack lock storage
gcs-backend Neptune with GCS for stack lock storage
automerge PR automerge after successful apply (repository.automerge: true)
terramate-stacks stacks_management: terramate with plain Terraform; Neptune runs steps per changed stack
terragrunt-terramate Terragrunt with Terramate stacks; Neptune runs Terragrunt per stack
local-stacks stacks_management: local; Neptune discovers stacks via stack.hcl (no Terramate); use neptune stacks list / create
local-stacks-config stacks_management: local with root-level local_stacks in .neptune.yaml (source: config, explicit paths and depends_on for run order)

Each example is self-contained: .neptune.yaml (with explicit stacks_management: terramate or local), stacks, and a README with required environment variables and usage.

Neptune config in CI

Neptune loads .neptune.yaml from the default branch of your repository in CI (so PR authors cannot change workflow steps). See Neptune documentation for configuration and object storage.

Using these examples

The examples are in this repo under examples/ (e.g. examples/s3-backend/, examples/automerge/). Copy or adapt the example you need; set the required env vars and replace placeholder bucket names in .neptune.yaml.