Panfactum LogoPanfactum
Panfactum VersioningPinning

Pinning the Panfactum Version

The purpose of this guide is to show how to pin your organization to a particular version of the Panfactum stack.

This guide assumes you are trying to pin to version edge.24-09-12, and you should substitute this with whatever version you want to use.

You should ensure that the versions match in all locations.

Developer Environment

Set inputs.panfactum.url to "github:Panfactum/stack/edge.24-09-12" in your flake.nix.

Terragrunt Deployments

If you are deploying Panfactum terraform modules directly, update the pf_stack_version terragrunt variable.

Infrastructure Submodules

If you are using Panfactum submodules in your own modules, set the source in module blocks to the correct ref to match the desired version. For example:

module "pod_template" {
  source       = "github.com/Panfactum/stack.git/packages/terraform//kube_pod?ref=edge.24-09-12"
}

Ensure you do this for every module.

Alternatively, you can set the # pf-update command adjacent to module.source and the version will automatically be pinned to the version used by the developer environment when you next run pf-update-iac:

module "pod_template" {
  source       = "github.com/Panfactum/stack.git/packages/terraform//kube_pod?ref=edge.24-09-12" # pf-update
}