アップデート一覧に戻る
New releaseSep 14, 2026

conftest v0.70.0

Open Policy Agent Rego クエリ言語を使用して、構造化設定データに対するテストを記述します。

共有

Conftest

Go Report Card Netlify

Conftestは、構造化された設定データに対するテストを書くのに役立ちます。Conftestを使うと、Kubernetes設定、Tektonパイプライン定義、Terraformコード、Serverless設定、その他のあらゆる設定ファイルに対するテストを書くことができます。

Conftestは、アサーションを記述するためにOpen Policy AgentのRego言語を使用します。Regoの詳細については、Open Policy AgentドキュメントのPolicy Languageセクションを参照してください。

以下は簡単な例です。次の内容をpolicy/deployment.regoとして保存してください:

package main

deny contains msg if {
  input.kind == "Deployment"
  not input.spec.template.spec.securityContext.runAsNonRoot

  msg := "Containers must not run as root"
}

deny contains msg if {
  input.kind == "Deployment"
  not input.spec.selector.matchLabels.app

  msg := "Containers must provide app label for pod selectors"
}

deployment.yamlにKubernetesデプロイメントがあると仮定すると、Conftestは次のように実行できます:

$ conftest test deployment.yaml
FAIL - deployment.yaml - Containers must not run as root
FAIL - deployment.yaml - Containers must provide app label for pod selectors

2 tests, 0 passed, 0 warnings, 2 failures, 0 exceptions

ConftestはKubernetes専用ではありません。さまざまな形式のあらゆる設定ファイルに対してテストを書くことができます。ドキュメントインストール手順と機能の詳細を参照してください。

Conftestに貢献したいですか?

  • Conftest自体のビルドとテストについては、DEVELOPMENT.mdを参照してください。
  • 始めるには、CONTRIBUTING.mdを参照してください。

議論や質問については、Open Policy Agent Slack#opa-conftestチャンネルに参加してください。

カテゴリ