~ knotless Search/
↑↓ move↵ open⇧↵ all results
0
0
main
817 lines · 25.2 KB Raw History
apiVersion: apis.kcp.io/v1alpha1
kind: APIResourceSchema
metadata:
  name: v1alpha1-31.computecontracts.socialweb.computer
spec:
  group: socialweb.computer
  names:
    kind: ComputeContract
    listKind: ComputeContractList
    plural: computecontracts
    singular: computecontract
  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:
              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
              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
              release:
                type: boolean
              releaseRequestedAt:
                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
              ttlSecondsAfterFinished:
                type: integer
                format: int32
                default: 691200
                minimum: 0
          status:
            type: object
            properties:
              observedGeneration:
                type: integer
                format: int64
              phase:
                type: string
                enum:
                  - Pending
                  - Requesting
                  - Held
                  - Releasing
                  - Released
                  - Failed
              message:
                type: string
              secretsUrl:
                type: string
              secretsFetchedAt:
                type: string
              contract:
                type: object
                properties:
                  vmUri:
                    type: string
                  rfpUri:
                    type: string
                  acceptUri:
                    type: string
                  receiptUri:
                    type: string
                  receiptCid:
                    type: string
                  submitEventRef:
                    type: string
                  version:
                    type: integer
                  phase:
                    type: string
                    enum:
                      - requested
                      - rfp_submitted
                      - winner_selected
                      - accepted
                      - receipt
                      - network
                      - released
                  vmName:
                    type: string
                  requesterDid:
                    type: string
                  marketDid:
                    type: string
                  payload:
                    type: object
                    properties:
                      uri:
                        type: string
                      cid:
                        type: string
                    required:
                      - uri
                      - cid
                  rfp:
                    type: object
                    properties:
                      uri:
                        type: string
                      cid:
                        type: string
                    required:
                      - uri
                      - cid
                  policy:
                    type: object
                    properties:
                      uri:
                        type: string
                      cid:
                        type: string
                    required:
                      - uri
                      - cid
                  bid:
                    type: object
                    properties:
                      uri:
                        type: string
                      cid:
                        type: string
                    required:
                      - uri
                      - cid
                  winner:
                    type: object
                    properties:
                      did:
                        type: string
                      submitAccept:
                        type: string
                    required:
                      - did
                  acceptPending:
                    type: object
                    properties:
                      bidUri:
                        type: string
                    required:
                      - bidUri
                  accept:
                    type: object
                    properties:
                      uri:
                        type: string
                      cid:
                        type: string
                    required:
                      - uri
                      - cid
                  receipt:
                    type: object
                    properties:
                      uri:
                        type: string
                      cid:
                        type: string
                    required:
                      - uri
                      - cid
                  receiptOk:
                    type: boolean
                  vmAddress:
                    type: string
                  networks:
                    type: array
                    items:
                      type: object
                      properties:
                        tag:
                          type: string
                        kind:
                          type: string
                          enum:
                            - iroh
                            - https
                            - webrtc
                        address:
                          type: string
                        at:
                          type: string
                        event:
                          type: object
                          properties:
                            uri:
                              type: string
                            cid:
                              type: string
                          required:
                            - uri
                            - cid
                      required:
                        - tag
                        - address
                        - event
                  bids:
                    type: integer
                  release:
                    type: object
                    properties:
                      event:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                      payload:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                      ok:
                        type: boolean
                      status:
                        type: integer
                    required:
                      - event
                      - payload
                      - ok
                  termination:
                    type: object
                    properties:
                      reason:
                        type: string
                      exitCode:
                        type: integer
                      observedAt:
                        type: string
                      event:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                      payload:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                      request:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                    required:
                      - reason
                      - observedAt
                      - event
                      - payload
                  hostKeys:
                    type: object
                    properties:
                      keys:
                        type: array
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                            publicKey:
                              type: string
                            fingerprint:
                              type: string
                          required:
                            - type
                            - publicKey
                            - fingerprint
                      observedAt:
                        type: string
                      event:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                      payload:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                    required:
                      - keys
                      - observedAt
                      - event
                      - payload
                  sandbox:
                    type: object
                    properties:
                      exitCode:
                        type: integer
                      timedOut:
                        type: boolean
                      stdout:
                        type: string
                      stderr:
                        type: string
                      observedAt:
                        type: string
                    required:
                      - exitCode
                  secretsRequested:
                    type: object
                    properties:
                      requestedAt:
                        type: string
                      event:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                      payload:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                    required:
                      - requestedAt
                      - event
                      - payload
                  secretsApplied:
                    type: object
                    properties:
                      appliedAt:
                        type: string
                      via:
                        type: string
                      count:
                        type: integer
                        format: int64
                      event:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                      payload:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                    required:
                      - appliedAt
                      - event
                      - payload
                  guestRequester:
                    type: object
                    properties:
                      did:
                        type: string
                      state:
                        type: string
                        enum:
                          - Pending
                          - Verified
                          - Refused
                      message:
                        type: string
                      reportedAt:
                        type: string
                      event:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                      payload:
                        type: object
                        properties:
                          uri:
                            type: string
                          cid:
                            type: string
                        required:
                          - uri
                          - cid
                    required:
                      - did
                      - state
                      - reportedAt
                      - event
                      - payload
                  r2Release:
                    type: object
                    properties:
                      phase:
                        type: string
                        enum:
                          - Requested
                          - Released
                          - Failed
                          - TimedOut
                      ok:
                        type: boolean
                      message:
                        type: string
                      requestedAt:
                        type: string
                      answeredAt:
                        type: string
                    required:
                      - phase
                  outcome:
                    type: string
                    enum:
                      - no_bids
                      - bids_denied
                      - policy_rejected
                      - returned
                      - receipt_invalid
                      - network_timeout
                      - complete
                  error:
                    type: string
                  timestamps:
                    type: object
                    properties:
                      requested:
                        type: string
                      rfp_submitted:
                        type: string
                      winner_selected:
                        type: string
                      accepted:
                        type: string
                      receipt:
                        type: string
                      network:
                        type: string
                      released:
                        type: string
              grant:
                type: object
                properties:
                  issuer:
                    type: string
                  subject:
                    type: string
                  audience:
                    type: string
                  role:
                    type: string
                required:
                  - issuer
                  - subject
                  - audience
              bids:
                type: array
                items:
                  type: object
                  properties:
                    did:
                      type: string
                    uri:
                      type: string
                    offer:
                      type: string
                    cost:
                      type: integer
                      format: int64
                    verdict:
                      type: string
                      enum:
                        - considered
                        - denied
                        - chosen
                        - notChosen
                        - policyRejected
                    arrivedAt:
                      type: string
                  required:
                    - did
                    - uri
                    - verdict
                    - arrivedAt
              chosen:
                type: object
                properties:
                  uri:
                    type: string
                  did:
                    type: string
                  reason:
                    type: string
                    enum:
                      - firstFree
                      - bestWithinWindow
                      - policy
                      - resumed
                  considered:
                    type: integer
                required:
                  - uri
                  - did
                  - reason
                  - considered
              conditions:
                type: array
                items:
                  type: object
                  x-kubernetes-preserve-unknown-fields: true
              execution:
                type: object
                properties:
                  step:
                    type: string
                  stepStartedAt:
                    type: string
                  lastEventAt:
                    type: string
                  lastError:
                    type: string
                  attempts:
                    type: integer
                    format: int32
              release:
                type: object
                properties:
                  startedAt:
                    type: string
                  deadline:
                    type: string
                  attempts:
                    type: integer
                  lastError:
                    type: string
                  requestedAt:
                    type: string
              pendingEvents:
                type: array
                items:
                  type: object
                  properties:
                    uri:
                      type: string
                    cid:
                      type: string
                    receiptUri:
                      type: string
                    receivedAt:
                      type: string
                  required:
                    - uri
              association:
                type: object
                properties:
                  uri:
                    type: string
                  cid:
                    type: string
                required:
                  - uri
                  - cid
              associationMessage:
                type: string
              atircRevokes:
                type: string
                enum:
                  - Pending
                  - Done
                  - Abandoned
              heldSession:
                type: object
                properties:
                  name:
                    type: string
                  guestKeyPath:
                    type: string
                  until:
                    type: string
                required:
                  - name
                  - until
      additionalPrinterColumns:
        - name: Phase
          type: string
          jsonPath: .status.phase
        - name: Contract
          type: string
          jsonPath: .status.contract.phase
        - name: Winner
          type: string
          jsonPath: .status.contract.winner.did
        - name: Age
          type: date
          jsonPath: .metadata.creationTimestamp