From d590b0e641f3202ea8126f7132c4f09cba237274 Mon Sep 17 00:00:00 2001 From: yangci Date: Thu, 22 Aug 2024 13:45:55 -0400 Subject: [PATCH] docs: add github action policy testing automation --- .../github-action-opa-rego-test.md | 21 ++++++++++++++++++ .../content/organizations/masterpoint.md | 4 ++++ .../github-action-opa-rego-test.png | Bin 0 -> 9208 bytes 3 files changed, 25 insertions(+) create mode 100644 docs/website/content/integrations/github-action-opa-rego-test.md create mode 100644 docs/website/content/organizations/masterpoint.md create mode 100644 docs/website/static/img/logos/integrations/github-action-opa-rego-test.png diff --git a/docs/website/content/integrations/github-action-opa-rego-test.md b/docs/website/content/integrations/github-action-opa-rego-test.md new file mode 100644 index 00000000000..7c5893d8859 --- /dev/null +++ b/docs/website/content/integrations/github-action-opa-rego-test.md @@ -0,0 +1,21 @@ +--- +title: GitHub Action for OPA Rego Test +subtitle: GitHub Action to automate testing for your OPA (Open Policy Agent) Rego policies, generates a report with coverage information, and posts the test results as a comment on your pull requests. +labels: + category: library + type: GitHub Action +inventors: +- masterpoint +code: +- https://github.com/masterpointio/github-action-opa-rego-test +tutorials: +- https://github.com/masterpointio/github-action-opa-rego-test/blob/main/README.md +docs_features: + policy-testing: + note: | + [GitHub Action for OPA Rego Policy Tests](docs/website/content/integrations/rego-test-assertions.md) automates testing for your OPA (Open Policy Agent) Rego policies, generates a report with coverage information, and posts the test results as a comment on your pull requests, making it easy for your team to review and approve policies. +--- + +[GitHub Action for OPA Rego Policy Tests](docs/website/content/integrations/rego-test-assertions.md) by [Masterpoint](https://masterpoint.io/) is used to automate testing for your OPA (Open Policy Agent) Rego policies, generates a report with coverage information, and posts the test results as a comment on your pull requests, making it easy for your team to review and approve policies. + +Use this to test your OPA Rego files for [Spacelift policies](https://docs.spacelift.io/concepts/policy), [Kubernetes Admission Controller policies](https://www.openpolicyagent.org/docs/latest/kubernetes-introduction/), [Docker authorization policies](https://www.openpolicyagent.org/docs/latest/docker-authorization/), or any other use case that uses [Open Policy Agent's policy language Rego](https://www.openpolicyagent.org/docs/latest/). This Action also updates PR comments with the test results in place to prevent duplication. diff --git a/docs/website/content/organizations/masterpoint.md b/docs/website/content/organizations/masterpoint.md new file mode 100644 index 00000000000..56e25384db6 --- /dev/null +++ b/docs/website/content/organizations/masterpoint.md @@ -0,0 +1,4 @@ +--- +link: https://masterpoint.io +title: Masterpoint Consulting +--- diff --git a/docs/website/static/img/logos/integrations/github-action-opa-rego-test.png b/docs/website/static/img/logos/integrations/github-action-opa-rego-test.png new file mode 100644 index 0000000000000000000000000000000000000000..5bfc0622c2dad11f71d46e549175e850daff3efb GIT binary patch literal 9208 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 GLG*vH48unN literal 0 HcmV?d00001