This PR imports the blogs from https://medium.com/open-policy-agent into
the docusaurus site.
This is being done as the blog has stopped working due to the custom
domain hosting feature being removed from our tier.
The pages have been imported from manually downloaded webarchive files
from each post to ensure we captured the assets and rendered code
example too.
---------
Signed-off-by: Charlie Egan <charlie_egan@apple.com>
## What
Adds [ossrisk](https://github.com/depkeep/ossrisk) to the OPA ecosystem
page.
ossrisk is a CLI and GitHub Action that scans npm and PyPI dependency
trees for supply-chain and long-term viability risk: known CVEs (via
OSV.dev), end-of-life versions, abandonment signals, typosquatting,
license compliance, and maintainer-takeover patterns.
Beyond a `--fail-on <severity>` threshold, ossrisk integrates with OPA
via the `opa` CLI: the scan result JSON is passed as `input` to `opa
eval`, and policies in `package ossrisk` add messages to a `deny` set to
gate the build. This enables cross-signal rules a threshold alone cannot
express — for example blocking packages with install scripts published
by a brand-new maintainer (the event-stream takeover pattern). The JSON
output also pipes cleanly into conftest.
## Changes
- `docs/src/data/ecosystem/entries/ossrisk.md` — entry with `category:
security`, `layer: cicd`, `type: poweredbyopa`
- `docs/static/img/ecosystem-entry-logos/ossrisk.svg` — logo
---------
Signed-off-by: glimm-no <admin@glimm.no>
Signed-off-by: pkuzco <b.naamneh@gmail.com>
Co-authored-by: glimm-no <admin@glimm.no>
Co-authored-by: Charlie Egan <git@charlieegan3.com>
Adds **OPA MCP** to the ecosystem listing.
- **Repo:** https://github.com/OrygnsCode/opa-mcp-server
- **npm:** https://www.npmjs.com/package/@orygn/opa-mcp
- **Docker Hub:** https://hub.docker.com/r/orygn/opa-mcp
OPA MCP is a Model Context Protocol server that gives MCP-compatible
clients (Claude Desktop, Cursor, VS Code, Zed, Windsurf, etc.) a
structured interface to Rego. It wraps the OPA CLI, the OPA REST API,
and the Regal linter behind 32 schema-validated tools, plus higher-level
helpers (`rego_explain_decision`, `rego_describe_policy`,
`rego_generate_test_skeleton`, `rego_suggest_fix`) that compose the
primitives into agent-friendly workflows.
## Files
- `docs/src/data/ecosystem/entries/opa-mcp.md` — entry following the
format of `vscode-opa.md` and `regal.md`.
- `docs/static/img/ecosystem-entry-logos/opa-mcp.png` — 256×256 logo,
~55 KB.
## Labels
- `category: tooling`
- `layer: editor`
## docs_features
`learning-rego`, `policy-testing`, `debugging-rego`, `editors` — all
chosen from the existing taxonomy used by other entries.
Signed-off-by: OrygnsCode <38231263+OrygnsCode@users.noreply.github.com>
* docs/ecosystem: Add Vulnetix to the OPA Ecosystem
Vulnetix is a CLI security scanner that evaluates SCA, IaC, container,
secrets, SAST, license and SBOM findings using Rego, with 250+ built-in
rules and support for custom policy-as-code rule repositories. Adding it
to the ecosystem helps users discover an OPA-powered option for unified,
policy-driven security scanning.
Signed-off-by: Christopher Langton <chris@vulnetix.com>
* docs/ecosystem: Update Vulnetix entry links
Point the entry to the Vulnetix CLI repository and link to the custom
rules and CI/agent integration docs so readers can go directly to the
policy-as-code and integration material.
Signed-off-by: Christopher Langton <chris@vulnetix.com>
---------
Signed-off-by: Christopher Langton <chris@vulnetix.com>
Published papers are not going to get updated, unlike web pages. So in such
cases I am willing to add a redirect here.
Signed-off-by: Charlie Egan <charlie_egan@apple.com>
This new function allows netlify to process the form's notification hook
itself and post to slack without zapier.
Signed-off-by: Charlie Egan <charlie_egan@apple.com>
* Adds ecosystem project Moat
Moat is an OPA control plane project specifically for managing access to data. The
first target system is Trino, with many future target systems including those which
do not directly support OPA.
Signed-off-by: jcoenraadts <joel@bytelab.com>
* Changes reserved name "OPA Control Plane" to "Data Control Plane"
This change is to avoid confusion with the officially released OPA Control Plane
Signed-off-by: jcoenraadts <joel@bytelab.com>
---------
Signed-off-by: jcoenraadts <joel@bytelab.com>
Co-authored-by: jcoenraadts <joel@bytelab.com>
With the refactoring of the webpage static files location, new
`helm-kubernetes-quickstart` bundle became corrupt and previous,
non-working bundle was deployed.
This change replaces currently deployed bundle, which is causing the
following error with `opa eval -b helm-kubernetes-quickstart 'data'`
```
loading error: bundle helm-kubernetes-quickstart: bundle load failed
on manifest decode: invalid character '\\x00' looking for beginning
of value
```
This change also fixes the failing e2e pipeline in `opa/kube-mgmt` helm
chart, which depends on the location (and source) of this bundle.
Signed-off-by: Jernej Porenta <jernej.porenta@3fs.si>
Contains the following fixes:
* docs: Website max width for hp paragraph
* docs: Remove ghost from the run snippet icons
This is confusing as it might be associated with something going wrong.
* docs: Use /apple-touch-icon.png for precomposed
* docs: Add a png favicon
Clients still seem to be requesting this.
* docs: Add in external resources for legacy content
---------
Signed-off-by: Charlie Egan <charlie@styra.com>
Some things added on this branch:
- icons and client logos at known paths
- some spam redirects
- some redirects for docs/latest/foo /docs/foo
- redirects for the two ‘moved’ pages (k8s and envoy intros)
I am going to be monitoring the traffic this week on Netlify to make
sure we have a good coverage with redirects where needed.
We also now prompt users to file issues directly from the 404 pages
which should help flag things we miss too.
We mixed together doc content and website content. We don’t need to
version the website content (logos, main site stuff, etc) but the doc
static content (mostly images) should be tied to the markdown that
uses it.
Signed-off-by: Patrick East <east.patrick@gmail.com>