Announcing Apply Requirements
A goal at Terrateam is to minimize the number of new concepts needed to use the product. If you know how to use Terraform and GitHub, that should be all you need to know to use Terrateam.
One feature of Terrateam is to restrict when an apply
operation can be
executed. For example, only after the pull request has been approved. We
originally tried using GitHub Branch Protection rules, where we would only allow
an apply
if GitHub said the pull request is mergeable.
But we have run into issues using Branch Protection. A common request is that
Terrateam should block a merge until all changes have been applied. This means
that Terrateam cannot use the state of the pull request to determine if an
apply
can be performed. Unfortunately, GitHubs API does not expose what is
blocking a pull request from being merged, it just returns true
or false
, so
we cannot use GitHub to determine if only our runs are what is blocking the
merge.
We've added a new configuration called apply_requirements
. The documentation
can be found here.
The apply_requirements
configuration supports specifying how many approvals
are necessary, if there can be any merge conflicts, and which status checks must
pass, before an apply
can be performed
It also supports creating pending status checks for applies when a pull request is created, ensuring that all applies have been performed prior to being mergeable.
Try out Terrateam (opens in a new tab) today and start applying changes to your infrastructure today.