Component
A bundle placed in a project's blueprint, representing a slot for deployable infrastructure.
A component is the design-time building block of your architecture. It says "I want a database here" or "I need a Kubernetes cluster there." The component defines what to deploy; the actual running infrastructure lives in instances -- one per environment the component is deployed to.
Components are connected to each other via links, which declare that one component's output (e.g., a connection string) should be wired into another component's input.
type Component {
id: ID!
name: String!
description: String
attributes: Map!
effectiveAttributes: Map!
position: ComponentPosition
createdAt: DateTime!
updatedAt: DateTime!
deletable: Deletable!
ociRepo: OciRepo
project: Project
instances(
sort: InstancesSort
cursor: Cursor
): InstancesPage
}
Fields
Component.id ● ID! non-null scalar {#id}
Component.name ● String! non-null scalar {#name}
Human-readable display name shown in the UI.
Component.description ● String scalar {#description}
Optional free-text description of this component's purpose.
Component.attributes ● Map! non-null scalar {#attributes}
Key-value attributes assigned directly to this component.
Component.effectiveAttributes ● Map! non-null scalar {#effective-attributes}
The full attribute map the authorization system evaluates policies against for
this component — user attributes merged with the parent project (project wins on
conflict) plus auto-injected md-* system attributes.
System attributes always present on a component:
md-id— the component's identifiermd-project— the project's identifiermd-component— the component's local identifier
Component.position ● ComponentPosition object {#position}
Position on the visual canvas. Null if never placed.
Component.createdAt ● DateTime! non-null scalar {#created-at}
When this component was created (UTC).
Component.updatedAt ● DateTime! non-null scalar {#updated-at}
When this component was last modified (UTC).
Component.deletable ● Deletable! non-null object {#deletable}
Whether this component can be safely deleted. Check constraints for blocking conditions.
Component.ociRepo ● OciRepo object {#oci-repo}
The OCI repository (bundle) this component is based on.
Component.project ● Project object {#project}
The project that owns this component.
Component.instances ● InstancesPage object {#instances}
Paginated list of instances deployed from this component.
Returns one instance per environment the component has been deployed to. Defaults to alphabetical order by name.
Component.instances.sort ● InstancesSort input {#component-instances-sort}
Sort field and direction. Defaults to name ascending.
Component.instances.cursor ● Cursor input {#component-instances-cursor}
Pagination cursor returned by a previous page.
Returned By
component query
Member Of
ComponentEvent object ● ComponentPayload object ● ComponentsPage object ● Instance object ● InstanceComparison object ● Link object