API Reference

agent-forge-operator API Reference

Packages:

agent-forge.containeroo.ch/v1alpha1

Package v1alpha1 contains API Schema definitions for the agent-forge.containeroo.ch v1alpha1 API group.

Resource Types:

    AgentBindingSpec

    (Appears on: VsphereAgentPoolSpec)

    AgentBindingSpec describes how a discovered Assisted Installer Agent should be made consumable by the Hypershift Agent NodePool.

    Field Description
    role
    string

    Role is the Hypershift NodePool role label value to apply to discovered Agents. For worker pools this is normally “worker”.

    labels
    map[string]string

    Labels are required on a discovered Agent before the Agent CAPI provider can bind it to an AgentMachine. These should match the NodePool spec.platform.agent.agentLabelSelector labels.

    approve
    bool
    (Optional)

    Approve controls whether matching discovered Agents are automatically patched with spec.approved=true.

    CleanupPolicy (string alias)

    (Appears on: VsphereAgentPoolSpec)

    CleanupPolicy controls whether the operator deletes external inventory when demand disappears or the VsphereAgentPool is deleted.

    ISOCacheHistoryEntry

    (Appears on: ISOCacheStatus)

    ISOCacheHistoryEntry records one uploaded content-addressed ISO object.

    Field Description
    path
    string

    Path is the datastore path to the ISO object.

    sha256
    string

    SHA256 is the ISO content digest.

    sizeBytes
    int64
    (Optional)

    SizeBytes is the downloaded ISO size.

    uploadedAt
    Kubernetes meta/v1.Time
    (Optional)

    UploadedAt is when this ISO object was uploaded.

    ISOCacheSpec

    (Appears on: VsphereAgentPoolSpec)

    ISOCacheSpec controls how the InfraEnv discovery ISO is cached in vSphere.

    Field Description
    checkInterval
    Kubernetes meta/v1.Duration
    (Optional)

    CheckInterval controls how often the operator downloads and hashes the InfraEnv ISO to detect content changes when the URL remains stable.

    retainVersions
    int32
    (Optional)

    RetainVersions controls how many content-addressed ISO objects are kept in the datastore. The current ISO is always retained.

    pathPrefix
    string
    (Optional)

    PathPrefix is the datastore directory used for content-addressed ISO objects. When empty, the operator uses agent-forge//.

    ISOCacheStatus

    (Appears on: VsphereAgentPoolStatus)

    ISOCacheStatus records the active cached InfraEnv discovery ISO.

    Field Description
    url
    string
    (Optional)

    URL is the InfraEnv status.isoDownloadURL used for the last check.

    path
    string
    (Optional)

    Path is the datastore path inserted into newly created VMs.

    sha256
    string
    (Optional)

    SHA256 is the content digest of the active ISO.

    sizeBytes
    int64
    (Optional)

    SizeBytes is the downloaded ISO size.

    checkedAt
    Kubernetes meta/v1.Time
    (Optional)

    CheckedAt is when the operator last downloaded and hashed the ISO.

    uploadedAt
    Kubernetes meta/v1.Time
    (Optional)

    UploadedAt is when the active ISO object was uploaded.

    forceRefreshToken
    string
    (Optional)

    ForceRefreshToken stores the last processed force refresh annotation value.

    history
    []ISOCacheHistoryEntry
    (Optional)

    History records retained content-addressed ISO objects, newest first.

    LocalObjectReference

    (Appears on: VsphereAgentPoolSpec, VsphereAgentSpec)

    LocalObjectReference identifies another object in the same namespace as the VsphereAgentPool.

    Field Description
    name
    string

    Name is the referenced object’s metadata.name.

    OwnedVMStatus

    (Appears on: VsphereAgentPoolStatus, VsphereAgentStatus)

    OwnedVMStatus records a VM created or managed by this VsphereAgentPool.

    Field Description
    name
    string

    Name is the vSphere VM name.

    biosUUID
    string
    (Optional)

    BIOSUUID is the VM BIOS UUID when known.

    macAddress
    string
    (Optional)

    MACAddress is the primary NIC MAC address normalized with hyphens.

    agentRef
    Kubernetes core/v1.ObjectReference
    (Optional)

    AgentRef points to the discovered Assisted Installer Agent, when matched.

    machineRef
    Kubernetes core/v1.ObjectReference
    (Optional)

    MachineRef points to the CAPI Machine, when bound.

    phase
    string
    (Optional)

    Phase is the current bridge view of the VM lifecycle, such as Provisioning, Available, Bound, Released, or Orphaned.

    reason
    string
    (Optional)

    Reason provides a short machine-readable explanation for Phase.

    lastTransitionTime
    Kubernetes meta/v1.Time
    (Optional)

    LastTransitionTime is updated when Phase changes.

    PlannedActionStatus

    (Appears on: VsphereAgentPoolStatus)

    PlannedActionStatus records the latest create/delete/patch actions the operator planned or executed.

    Field Description
    type
    string

    Type is the action type, such as CreateVM, DeleteVM, DeleteAgent, PatchAgent, or Noop.

    name
    string
    (Optional)

    Name is the target VM or Agent name when known.

    reason
    string

    Reason explains why the action is needed.

    SecretReference

    (Appears on: VspherePlacementSpec)

    SecretReference identifies a Secret. When namespace is empty, the VsphereAgentPool namespace is used.

    Field Description
    name
    string

    Name is the Secret metadata.name.

    namespace
    string
    (Optional)

    Namespace is the Secret metadata.namespace. Leave empty to use the VsphereAgentPool namespace.

    VMTemplateSpec

    (Appears on: VsphereAgentPoolSpec)

    VMTemplateSpec describes the VM hardware profile.

    Field Description
    namePrefix
    string
    (Optional)

    NamePrefix prefixes operator-created VM names. When empty, the operator uses -.

    numCPUs
    int32

    NumCPUs is the VM vCPU count.

    memoryMiB
    int32

    MemoryMiB is the VM memory size in MiB.

    diskGiB
    int32

    DiskGiB is the primary disk size in GiB.

    VsphereAgent

    VsphereAgent is one vSphere VM requested to satisfy AgentMachine demand.

    Field Description
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    VsphereAgentSpec


    poolRef
    LocalObjectReference

    PoolRef references the VsphereAgentPool whose configuration is used to create and manage this VM.

    status
    VsphereAgentStatus

    VsphereAgentPool

    VsphereAgentPool is a namespace-scoped bridge between a Hypershift Agent NodePool and vSphere VM inventory. It watches CAPI AgentMachine demand and ensures matching Assisted Installer Agents exist for the Agent CAPI provider to consume.

    Field Description
    metadata
    Kubernetes meta/v1.ObjectMeta
    Refer to the Kubernetes API documentation for the fields of the metadata field.
    spec
    VsphereAgentPoolSpec


    hostedClusterRef
    LocalObjectReference

    HostedClusterRef references the Hypershift HostedCluster this pool serves.

    nodePoolRef
    LocalObjectReference

    NodePoolRef references the Hypershift NodePool this bridge follows.

    infraEnvRef
    LocalObjectReference

    InfraEnvRef references the Assisted Installer InfraEnv that exposes the discovery ISO and labels newly discovered Agents.

    controlPlaneNamespace
    string

    ControlPlaneNamespace is the hosted control plane namespace that contains the CAPI AgentMachine and Machine objects rendered by Hypershift, for example demo-demo.

    vsphere
    VspherePlacementSpec

    VSphere configures placement and VM platform settings.

    template
    VMTemplateSpec

    Template configures the worker VM hardware profile.

    agent
    AgentBindingSpec

    Agent configures Agent labels, hostname assignment, and approval.

    iso
    ISOCacheSpec
    (Optional)

    ISO configures content-addressed caching of the InfraEnv discovery ISO.

    cleanupPolicy
    CleanupPolicy
    (Optional)

    CleanupPolicy controls whether stale vSphere VMs and unbound Assisted Installer Agents are deleted by the operator. Use Retain for conservative production rollouts where external inventory cleanup is handled manually.

    status
    VsphereAgentPoolStatus

    VsphereAgentPoolSpec

    (Appears on: VsphereAgentPool)

    VsphereAgentPoolSpec defines the desired state of VsphereAgentPool.

    Field Description
    hostedClusterRef
    LocalObjectReference

    HostedClusterRef references the Hypershift HostedCluster this pool serves.

    nodePoolRef
    LocalObjectReference

    NodePoolRef references the Hypershift NodePool this bridge follows.

    infraEnvRef
    LocalObjectReference

    InfraEnvRef references the Assisted Installer InfraEnv that exposes the discovery ISO and labels newly discovered Agents.

    controlPlaneNamespace
    string

    ControlPlaneNamespace is the hosted control plane namespace that contains the CAPI AgentMachine and Machine objects rendered by Hypershift, for example demo-demo.

    vsphere
    VspherePlacementSpec

    VSphere configures placement and VM platform settings.

    template
    VMTemplateSpec

    Template configures the worker VM hardware profile.

    agent
    AgentBindingSpec

    Agent configures Agent labels, hostname assignment, and approval.

    iso
    ISOCacheSpec
    (Optional)

    ISO configures content-addressed caching of the InfraEnv discovery ISO.

    cleanupPolicy
    CleanupPolicy
    (Optional)

    CleanupPolicy controls whether stale vSphere VMs and unbound Assisted Installer Agents are deleted by the operator. Use Retain for conservative production rollouts where external inventory cleanup is handled manually.

    VsphereAgentPoolStatus

    (Appears on: VsphereAgentPool)

    VsphereAgentPoolStatus defines the observed state of VsphereAgentPool.

    Field Description
    observedGeneration
    int64
    (Optional)

    ObservedGeneration is the most recent metadata.generation reconciled by the controller.

    desiredReplicas
    int32
    (Optional)

    DesiredReplicas is the observed AgentMachine count.

    agentMachines
    int32
    (Optional)

    AgentMachines is the number of non-deleting AgentMachines observed for spec.nodePoolRef in spec.controlPlaneNamespace.

    waitingAgentMachines
    int32
    (Optional)

    WaitingAgentMachines is the number of AgentMachines reporting Ready=False with reason NoSuitableAgents.

    unreadyAgentMachines
    int32
    (Optional)

    UnreadyAgentMachines is the number of observed AgentMachines whose Ready condition is not True. This includes AgentMachines waiting for suitable Agents and AgentMachines still installing.

    agentMachinesWithoutAgent
    int32
    (Optional)

    AgentMachinesWithoutAgent is the number of unready AgentMachines that do not yet have an assigned Agent. Surplus available Agents are retained while this is non-zero.

    matchingAgents
    int32
    (Optional)

    MatchingAgents is the number of Agents matching spec.agent.labels.

    boundAgents
    int32
    (Optional)

    BoundAgents is the number of matching Agents already bound to CAPI.

    availableAgents
    int32
    (Optional)

    AvailableAgents is the number of matching Agents not yet bound to CAPI.

    ownedVMs
    []OwnedVMStatus
    (Optional)

    OwnedVMs records VMs created or tracked by this bridge.

    plannedActions
    []PlannedActionStatus
    (Optional)

    PlannedActions records the most recent actions planned or executed.

    iso
    ISOCacheStatus
    (Optional)

    ISO records the active cached InfraEnv discovery ISO.

    conditions
    []Kubernetes meta/v1.Condition
    (Optional)

    Conditions summarizes readiness, discovery, and errors.

    VsphereAgentSpec

    (Appears on: VsphereAgent)

    VsphereAgentSpec defines the desired state of a single vSphere-backed Assisted Installer Agent candidate.

    Field Description
    poolRef
    LocalObjectReference

    PoolRef references the VsphereAgentPool whose configuration is used to create and manage this VM.

    VsphereAgentStatus

    (Appears on: VsphereAgent)

    VsphereAgentStatus defines the observed state of a VsphereAgent.

    Field Description
    observedGeneration
    int64
    (Optional)

    ObservedGeneration is the most recent metadata.generation reconciled by the controller.

    vm
    OwnedVMStatus
    (Optional)

    VM records the vSphere VM created for this VsphereAgent.

    conditions
    []Kubernetes meta/v1.Condition
    (Optional)

    Conditions summarizes readiness and provider errors.

    VspherePlacementSpec

    (Appears on: VsphereAgentPoolSpec)

    VspherePlacementSpec describes where worker VMs are created in vSphere.

    Field Description
    credentialsSecretRef
    SecretReference

    CredentialsSecretRef references a Secret containing vSphere credentials. The Secret must contain server, username, and password keys. It may also contain an insecure key with “true” when the vCenter certificate should not be verified.

    datacenter
    string

    Datacenter is the target vSphere datacenter name.

    datastoreCluster
    string

    DatastoreCluster is the datastore cluster used for VM disks. It maps to the static module’s vsphere_datastore_cluster input.

    isoDatastore
    string

    ISODatastore is the datastore that contains the uploaded discovery ISO. It maps to the static module’s vsphere_iso_datastore input.

    resourcePool
    string

    ResourcePool is the vSphere resource pool path, for example cluster/Resources.

    folder
    string
    (Optional)

    Folder is the VM folder path. When empty, the operator uses the hosted cluster name.

    network
    string

    Network is the vSphere network name attached to the VM NIC.

    vmTags
    []string
    (Optional)

    VMTags contains optional vSphere tag IDs to attach to each VM.

    guestID
    string
    (Optional)

    GuestID is the vSphere guest OS identifier used for from-scratch VMs.

    scsiType
    string
    (Optional)

    SCSIType is the SCSI controller type used for from-scratch VMs.

    firmware
    string
    (Optional)

    Firmware is the VM firmware type.

    networkAdapterType
    string
    (Optional)

    NetworkAdapterType is the vSphere NIC adapter type.

    diskEagerlyScrub
    bool
    (Optional)

    DiskEagerlyScrub controls eager scrubbing for the primary disk.

    This page was automatically generated with gen-crd-api-reference-docs