
OPA (Open Policy Agent) Upload
CertifiedEnterprise EditionUpload or replace an OPA policy
OPA (Open Policy Agent) Upload
Upload or replace an OPA policy
PUTs a Rego module to /v1/policies/{id}; overwrites existing content. Sends source as text/plain.
type: io.kestra.plugin.ee.opa.policy.UploadExamples
Upload an OPA policy
id: upload_policy
namespace: company.team
tasks:
- id: upload_policy
type: io.kestra.plugin.ee.opa.policy.Upload
url: "{{ secret('OPA_URL') }}"
token: "{{ secret('OPA_TOKEN') }}"
policyId: "kubernetes-admission"
policy: |
package kubernetes.admission
deny contains msg if {
input.request.kind == "Deployment"
not input.request.object.spec.template.spec.securityContext.runAsNonRoot
msg := "Containers must not run as root"
}
deny contains msg if {
input.request.kind == "Deployment"
input.request.object.spec.replicas > 10
input.request.namespace != "production"
msg := "Non-production deployments cannot exceed 10 replicas"
}
Properties
policy *string
Policy source
Rego policy source code to create or update.
policyId *string
Policy ID
Unique identifier of the policy module in OPA.
url *string
OPA base URL
assets
Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset failure behavior
Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150token string
Bearer token