{"id":21148852,"url":"https://github.com/vjftw/please-opa","last_synced_at":"2025-07-16T05:43:02.835Z","repository":{"id":222716636,"uuid":"757586695","full_name":"VJftw/please-opa","owner":"VJftw","description":"OPA rules for the Please build system","archived":false,"fork":false,"pushed_at":"2024-02-15T19:42:42.000Z","size":15,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-21T07:43:55.850Z","etag":null,"topics":["build","build-system","opa","open-policy-agent","please","please-build"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/VJftw.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-14T19:18:46.000Z","updated_at":"2024-02-16T19:11:45.000Z","dependencies_parsed_at":null,"dependency_job_id":"4552f595-6fc4-462e-a6ab-526c480c28df","html_url":"https://github.com/VJftw/please-opa","commit_stats":null,"previous_names":["vjftw/please-opa"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VJftw%2Fplease-opa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VJftw%2Fplease-opa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VJftw%2Fplease-opa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VJftw%2Fplease-opa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/VJftw","download_url":"https://codeload.github.com/VJftw/please-opa/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243589333,"owners_count":20315471,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["build","build-system","opa","open-policy-agent","please","please-build"],"created_at":"2024-11-20T09:29:28.984Z","updated_at":"2025-03-14T14:14:05.435Z","avatar_url":"https://github.com/VJftw.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# please-opa\nOPA integration w/ the Please build system.\n\nThis includes support for the following:\n * `opa_toolchain`: Easy management of multiple versions of OPA.\n * `opa_bundle`: OPA bundling from the local filesystem.\n * `opa_test`: OPA tests against bundles.\n * `opa_eval`: OPA eval script for use in runtime evaluations.\n    * Useful for evaluating non-build time data like Terraform Plans.\n * `opa_eval_test`: OPA eval as build time test.\n    * Useful for evaluating data available at build like Kubernetes resources.\n\n\n## `opa_toolchain`\n\nThis build rule allows you to specify a OPA version to download and re-use in all rules.\n\n## `opa_bundle`\n\nThis build rule allows you to create an OPA bundle which may be used by other OPA bundles or evaluated with.\n\nSee `//example/...` for examples of `opa_bundle`s.\n\n## `opa_test`\n\nThis build rule allows you to run OPA tests against `opa_bundle`s to verify the bundle's rego code performs its expected behaviours.\n\nSee `//example/...` for examples of `opa_test`s.\n\n## `opa_eval`\n\nThis build rule creates a binary which may be used to evaluate arbitrary data at run-time with the given OPA bundles.\n\nSee `//example/...` for examples of `opa_eval`s.\n\n## `opa_eval_test`\n\nThis build rule creates a \"test\" rule which can may be used to evaluate arbitrary data at test-time using the given `opa_eval` binary.\n\nSee `//example/...` for examples of `opa_eval_test`s.\n---\n\n## Usage\n\n\n### Please Plugin\n\n```ini\n; .plzconfig\n\n; Support the non *-rules repo name format of Please plugins.\nPluginRepo = \"https://github.com/{owner}/{plugin}/archive/{revision}.zip\"\n\n[Plugin \"opa\"]\nTarget = //third_party/plugins:opa\n```\n\n```python\n# //third_party/plugins/BUILD\nplugin_repo(\n    name = \"opa\",\n    owner = \"VJftw\",\n    plugin = \"please-opa\",\n    revision = \"v0.0.1\",\n)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvjftw%2Fplease-opa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvjftw%2Fplease-opa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvjftw%2Fplease-opa/lists"}