Skip to content

API Reference

Packages

arc.opendefense.cloud/v1alpha1

Package v1alpha1 is the v1alpha1 version of the API.

ArtifactType

ArtifactType is the Schema for the artifact types API

Appears in: - ArtifactTypeList

Field Description Default Validation
kind string Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
Optional: {}
apiVersion string APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
Optional: {}
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec ArtifactTypeSpec
status ArtifactTypeStatus

ArtifactTypeRules

ArtifactTypeRules is a set of rules to be used for this type of artifact.

Appears in: - ArtifactTypeSpec

Field Description Default Validation
srcTypes string array SrcTypes is a list of Endpoint types, that are supported as source.
dstTypes string array DstTypes is a list of Endpoint types, that are supported as destination.

ArtifactTypeSpec

ArtifactTypeSpec specifies a type of artifact and describes the corresponding workflow.

Appears in: - ArtifactType - ClusterArtifactType

Field Description Default Validation
ttlAfterFinished Duration TTLAfterFinished specifies the time to live for the created ArtifactWorkflow(s) after successful completion.
After this time, the ArtifactWorkflow(s) are automatically deleted.
If unset ArtifactWorkflow(s) are automatically deleted immediately after completion.
Optional: {}
ttlAfterFailed Duration TTLAfterFailed specifies the time to live for the created ArtifactWorkflow(s) after failure.
After this time, the ArtifactWorkflow(s) are automatically deleted.
If unset ArtifactWorkflow(s) are retained indefinitely.
Optional: {}
rules ArtifactTypeRules Rules defines a set of rules for this type.
parameters ArtifactWorkflowParameter array Parameters defines extra parameters for the Workflow to use.
These parameters will override parameters coming from ArtifactWorkflows.
workflowTemplateRef ArtifactTypeTemplateRef WorkflowTemplateRef specifies the corresponding Workflow for this type of artifact.

ArtifactTypeStatus

ArtifactTypeStatus defines the observed state of ArtifactType

Appears in: - ArtifactType - ClusterArtifactType

ArtifactTypeTemplateRef

ArtifactTypeTemplateRef is used to clearly reference an Argo WorkflowTemplate or ClusterWorkflowTemplate.

Appears in: - ArtifactTypeSpec - ArtifactWorkflowSpec

Field Description Default Validation
name string Name is the name of the Argo WorkflowTemplate or ClusterWorkflowTemplate.
clusterScope boolean ClusterScope defines whether the name corresponds to Argo WorkflowTemplate or ClusterWorkflowTemplate.
For ClusterArtifactType this will always be true and all other values are ignored.

ArtifactWorkflow

ArtifactWorkflow is the Schema for the artifact workflows API

Appears in: - ArtifactWorkflowList

Field Description Default Validation
kind string Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
Optional: {}
apiVersion string APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
Optional: {}
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec ArtifactWorkflowSpec
status ArtifactWorkflowStatus

ArtifactWorkflowParameter

ArtifactWorkflowParameter represents a single key-value parameter pair.

Appears in: - ArtifactTypeSpec - ArtifactWorkflowSpec

Field Description Default Validation
name string Name is the key of the parameter.
value string Value is the string value of the parameter.

ArtifactWorkflowSpec

ArtifactWorkflowSpec specifies a single artifact which is translated into a corresponding Workflow based on its type.

Appears in: - ArtifactWorkflow

Field Description Default Validation
ttlAfterFinished Duration TTLAfterFinished specifies the time to live for the created ArtifactWorkflow(s) after successful completion.
After this time, the ArtifactWorkflow(s) are automatically deleted.
If unset ArtifactWorkflow(s) are automatically deleted immediately after completion.
Optional: {}
ttlAfterFailed Duration TTLAfterFailed specifies the time to live for the created ArtifactWorkflow(s) after failure.
After this time, the ArtifactWorkflow(s) are automatically deleted.
If unset ArtifactWorkflow(s) are retained indefinitely.
Optional: {}
workflowTemplateRef ArtifactTypeTemplateRef WorkflowTemplateRef specifies the corresponding Workflow for this ArtifactWorkflow as derived from ArtifactType
parameters ArtifactWorkflowParameter array Parameters defines the key-value pairs, that are passed to the underlying Workflow.
srcSecretRef LocalObjectReference SrcSecretRef references the secret containing credentials for the source.
dstSecretRef LocalObjectReference DstSecretRef references the secret containing credentials for the destination.
cron Cron Cron specifies options which determine when the ArtifactWorkflow should be scheduled. Optional: {}

ArtifactWorkflowStatus

ArtifactWorkflowStatus defines the observed state of ArtifactWorkflow

Appears in: - ArtifactWorkflow

Field Description Default Validation
phase WorkflowPhase Phase tracks which phase the corresponding Workflow is in
message string A human readable message describing the current condition of the artifact workflow.
completionTime Time CompletionTime is the time when the workflow finished
failureTime Time FailureTime is the time when the workflow finished with a failure status.
lastScheduled Time LastScheduled is the last time the workflow was scheduled via cron
succeeded integer Succeeded counts how many times child workflows succeeded Optional: {}
failed integer Failed counts how many times child workflows failed Optional: {}
lastReconcileAt Time LastReconcileAt is the last time the ArtifactWorkflow was reconciled
lastForceAt Time LastForceAt is the force-at annotation value last honoured. A later value
forces a reconciliation right away, it is not scheduled for that time.
activeWorkflowRef LocalObjectReference ActiveWorkflowRef tracks the currently spawned workflow, if cron is used.
It resets after a successful or failed run.

ArtifactWorkflowTTLSettings

Appears in: - ArtifactTypeSpec - ArtifactWorkflowSpec

Field Description Default Validation
ttlAfterFinished Duration TTLAfterFinished specifies the time to live for the created ArtifactWorkflow(s) after successful completion.
After this time, the ArtifactWorkflow(s) are automatically deleted.
If unset ArtifactWorkflow(s) are automatically deleted immediately after completion.
Optional: {}
ttlAfterFailed Duration TTLAfterFailed specifies the time to live for the created ArtifactWorkflow(s) after failure.
After this time, the ArtifactWorkflow(s) are automatically deleted.
If unset ArtifactWorkflow(s) are retained indefinitely.
Optional: {}

ClusterArtifactType

ClusterArtifactType is the Schema for the cluster artifact types API

Appears in: - ClusterArtifactTypeList

Field Description Default Validation
kind string Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
Optional: {}
apiVersion string APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
Optional: {}
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec ArtifactTypeSpec
status ArtifactTypeStatus

Cron

Cron represents an order's cron schedule.

Appears in: - ArtifactWorkflowSpec - OrderArtifact - OrderDefaults

Field Description Default Validation
timezone string Timezone is the timezone against which the cron schedule will be calculated, e.g. "Asia/Tokyo". Default is machine's local time.
startingDeadlineSeconds integer StartingDeadlineSeconds is the K8s-style deadline that will limit the time an Order will be run after its
original scheduled time if it is missed.
Minimum: 0
schedules string array Schedules is a list of schedules to run the Order in Cron format MinItems: 1
items:Pattern: ^(@(yearly\|annually\|monthly\|weekly\|daily\|midnight\|hourly)\|@every\s+([0-9]+(ns\|us\|µs\|ms\|s\|m\|h))+\|([0-9*,/?-]+\s+)\{4\}[0-9*,/?-]+)$
when string When is an expression that determines if a run should be scheduled.

Endpoint

Endpoint is the Schema for the endpoints API

Appears in: - EndpointList

Field Description Default Validation
kind string Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
Optional: {}
apiVersion string APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
Optional: {}
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec EndpointSpec
status EndpointStatus

EndpointSpec

EndpointSpec defines the desired state of Endpoint.

Appears in: - Endpoint

Field Description Default Validation
type string Type is the endpoint type, matched against the srcType and dstType rules of an ArtifactType.
remoteURL string RemoteURL defines the URL which is used to interact with the endpoint.
secretRef LocalObjectReference SecretRef specifies the secret containing the relevant credentials for the endpoint. Optional: {}
usage EndpointUsage Usage defines how the endpoint is allowed to be used.

EndpointStatus

EndpointStatus defines the observed state of Endpoint

Appears in: - Endpoint

Field Description Default Validation
conditions Condition array Conditions represent the latest available observations of the Endpoint's state. Optional: {}
observedGeneration integer ObservedGeneration is the .metadata.generation the conditions were computed from. Optional: {}
lastProbeTime Time LastProbeTime is when the connection to spec.remoteURL was last attempted. Optional: {}
probedGeneration integer ProbedGeneration is the .metadata.generation the last probe ran against.
With LastProbeTime it records what the probe result in the conditions was
produced from, so no reconcile has to remember it.
Optional: {}
probedSecretVersion string ProbedSecretVersion is the .metadata.resourceVersion of the Secret whose
credentials the last probe used. The Secret is a separate object, so a
rotation can never move this Endpoint's generation.
Optional: {}
probedForceAt string ProbedForceAt is the force annotation value the last probe honoured, as the
annotation spelled it. Held as a string because it is compared for change
and never for order, like ProbedSecretVersion — annotations do not move the
generation, so nothing else would notice one. A value that does not parse as
a Unix timestamp is ignored rather than recorded here.
Optional: {}

EndpointUsage

Underlying type: string

EndpointUsage is the usage of the endpoint.

Appears in: - EndpointSpec

Field Description
PullOnly EndpointUsagePullOnly means the endpoint can only be used to pull data.
PushOnly EndpointUsagePushOnly means the endpoint can only be used to push data.
All EndpointUsageAll means the endpoint can be used with all kinds of usage patterns.

Order

Order is the Schema for the orders API

Appears in: - OrderList

Field Description Default Validation
kind string Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
Optional: {}
apiVersion string APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
Optional: {}
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec OrderSpec
status OrderStatus

OrderArtifact

OrderArtifact specifies a single artifact which is translated into a corresponding ArtifactWorkflow

Appears in: - OrderSpec

Field Description Default Validation
type string Type specifies which ArtifactType is used to process this artifact.
srcRef LocalObjectReference SrcRef defines which Endpoint object is used as source (falls back to OrderDefaults). Optional: {}
dstRef LocalObjectReference DstRef defines which Endpoint object is used as destination (falls back to OrderDefaults). Optional: {}
spec RawExtension Spec specifies parameters used by the underlying Workflow.
cron Cron Cron specifies options which determine when the order should be scheduled (falls back to OrderDefaults). Optional: {}

OrderArtifactWorkflowStatus

Appears in: - OrderStatus

Field Description Default Validation
phase WorkflowPhase Phase tracks which phase the corresponding Workflow is in
message string A human readable message describing the current condition of the artifact workflow.
completionTime Time CompletionTime is the time when the workflow finished
failureTime Time FailureTime is the time when the workflow finished with a failure status.
lastScheduled Time LastScheduled is the last time the workflow was scheduled via cron
succeeded integer Succeeded counts how many times child workflows succeeded Optional: {}
failed integer Failed counts how many times child workflows failed Optional: {}
artifactIndex integer ArtifactIndex references back the index the corresponding artifact has in the .Spec

OrderDefaults

OrderDefaults is used to set defaults for all other artifacts of an Order.

Appears in: - OrderSpec

Field Description Default Validation
srcRef LocalObjectReference SrcRef defines which Endpoint object is used as fallback source by all artifacts. Optional: {}
dstRef LocalObjectReference DstRef defines which Endpoint object is used as fallback destination by all artifacts. Optional: {}
cron Cron Cron specifies options which determine when the order should be scheduled. Optional: {}

OrderSpec

OrderSpec defines the desired state of Order

Appears in: - Order

Field Description Default Validation
defaults OrderDefaults Defaults sets up defaults for all artifacts. Optional: {}
artifacts OrderArtifact array Artifacts lists all artifacts, that will be processed by this Order.
ttl Duration TTL specifies how long the Order is retained after its creation. Once the
duration has elapsed since the Order's creationTimestamp, the Order is
automatically deleted (garbage collected) together with the artifact
workflows it created. The TTL is measured from creation regardless of
workflow progress: if it elapses while an artifact workflow is still
pending or running, that workflow is deleted mid-execution, interrupting
the in-flight transfer. If unset or zero, the Order is retained
indefinitely. Note that an unset TTLAfterFinished behaves the other way
around and deletes immediately. With a cron schedule the TTL still counts
from creation, so the Order is deleted in the middle of its schedule.
Optional: {}

OrderStatus

OrderStatus defines the observed state of Order

Appears in: - Order

Field Description Default Validation
artifactWorkflows object (keys:string, values:OrderArtifactWorkflowStatus) ArtifactWorkflows tracks the created workflows
message string A human readable message describing the current condition of the order.
lastReconcileAt Time LastReconcileAt is the last time the Order was reconciled
lastForceAt Time LastForceAt is the force-at annotation value last honoured. A later value
forces a reconciliation right away, it is not scheduled for that time.

WorkflowPhase

Underlying type: string

WorkflowPhase is an enum tracking in which phase a Workflow can be.

Appears in: - ArtifactWorkflowStatus - OrderArtifactWorkflowStatus - WorkflowStatus

Field Description
``
Pending
Running
Succeeded
Failed
Error
Active
Stopped

WorkflowStatus

Appears in: - ArtifactWorkflowStatus - OrderArtifactWorkflowStatus

Field Description Default Validation
phase WorkflowPhase Phase tracks which phase the corresponding Workflow is in
message string A human readable message describing the current condition of the artifact workflow.
completionTime Time CompletionTime is the time when the workflow finished
failureTime Time FailureTime is the time when the workflow finished with a failure status.
lastScheduled Time LastScheduled is the last time the workflow was scheduled via cron
succeeded integer Succeeded counts how many times child workflows succeeded Optional: {}
failed integer Failed counts how many times child workflows failed Optional: {}