apiVersion: apis.kcp.io/v1alpha1 kind: APIResourceSchema metadata: name: v1alpha1-13.infras.socialweb.computer spec: group: socialweb.computer names: kind: Infra listKind: InfraList plural: infras singular: infra scope: Cluster versions: - name: v1alpha1 served: true storage: true subresources: status: {} schema: type: object properties: apiVersion: type: string kind: type: string metadata: type: object spec: type: object properties: description: type: string maxLength: 1024 contracts: type: array items: type: object properties: name: type: string maxLength: 63 pattern: ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$ state: type: string enum: - Staged - Requested - Released default: Staged releaseRequestedAt: type: string vmName: type: string bidderDids: type: array items: type: string denyBidderDids: type: array items: type: string sshAuthorizedKeys: type: array items: type: string userData: type: string computeKind: type: string enum: - vm - deno default: vm policy: type: string policyArgs: type: string vmReadyTimeoutSec: type: integer tunnels: type: array items: type: object properties: tag: type: string pattern: ^[a-z0-9]([a-z0-9-]{0,30}[a-z0-9])?$ port: type: integer minimum: 1 maximum: 65535 server: type: string shell: type: object properties: envFile: type: string default: /etc/wootty/wootty.env transport: type: string enum: - opentunnel - webrtc default: opentunnel required: - tag - port x-kubernetes-list-type: map x-kubernetes-list-map-keys: - tag agent: type: object properties: envFile: type: string default: /etc/atirc/atirc.env association: type: object properties: subject: type: string fromGuest: type: boolean refFile: type: string default: /etc/socialweb-computer/association-ref guestTools: type: array items: type: string enum: - socialweb-computer x-kubernetes-list-type: set required: - name x-kubernetes-list-type: map x-kubernetes-list-map-keys: - name secrets: type: array items: type: object properties: contract: type: string secretsRef: type: object properties: vault: type: object properties: group: type: string kind: type: string maxLength: 63 name: type: string maxLength: 253 workspace: type: string required: - kind - name mount: type: string path: type: string key: type: string required: - mount - path required: - contract - secretsRef x-kubernetes-list-type: map x-kubernetes-list-map-keys: - contract nodes: type: array items: type: object properties: contract: type: string ownerDid: type: string adopt: type: boolean nodeJoin: type: object properties: clusterRef: type: object properties: name: type: string maxLength: 253 required: - name meshd: type: object properties: downloadBase: type: string pins: type: array items: type: object properties: arch: type: string sha256: type: string required: - arch - sha256 required: - downloadBase - pins nodeAgent: type: object properties: downloadBase: type: string pins: type: array items: type: object properties: arch: type: string sha256: type: string required: - arch - sha256 required: - downloadBase - pins required: - clusterRef nodeClaimRef: type: object properties: group: type: string kind: type: string maxLength: 63 name: type: string maxLength: 253 workspace: type: string required: - kind - name required: - contract - nodeClaimRef x-kubernetes-list-type: map x-kubernetes-list-map-keys: - contract clusterRef: type: object properties: group: type: string kind: type: string maxLength: 63 name: type: string maxLength: 253 workspace: type: string required: - kind - name record: type: object properties: repoRef: type: object properties: group: type: string kind: type: string maxLength: 63 name: type: string maxLength: 253 workspace: type: string required: - kind - name sync: type: string enum: - Both - Publish default: Both uri: type: string eventSourceRefs: type: array items: type: object properties: group: type: string kind: type: string maxLength: 63 name: type: string maxLength: 253 workspace: type: string required: - kind - name required: - repoRef status: type: object properties: observedGeneration: type: integer format: int64 phase: type: string enum: - Pending - Staged - Deploying - Deployed - Releasing - Released - Degraded - Ending - Deleting - Ended message: type: string contracts: type: array items: type: object properties: name: type: string phase: type: string enum: - Staged - Requesting - Deployed - Releasing - Released - Failed computeContract: type: string winner: type: string receiptUri: type: string message: type: string required: - name - phase record: type: object properties: uri: type: string cid: type: string declarationHash: type: string syncedGeneration: type: integer format: int64 syncedAt: type: string direction: type: string enum: - Created - Pushed - Pulled - InSync - Retained conditions: type: array items: type: object x-kubernetes-preserve-unknown-fields: true additionalPrinterColumns: - name: Phase type: string jsonPath: .status.phase - name: Record type: string jsonPath: .status.record.uri - name: Sync type: string jsonPath: .status.record.direction - name: Age type: date jsonPath: .metadata.creationTimestamp