---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.16.3
  name: runaidgxcnetworkpolicies.runai.dgxc.nvidia.com
spec:
  group: runai.dgxc.nvidia.com
  names:
    kind: RunaiDGXCNetworkPolicy
    listKind: RunaiDGXCNetworkPolicyList
    plural: runaidgxcnetworkpolicies
    singular: runaidgxcnetworkpolicy
  scope: Namespaced
  versions:
  - name: v1beta1
    schema:
      openAPIV3Schema:
        description: RunaiDGXCNetworkPolicy defines tenant cluster scoped network
          policies.
        properties:
          apiVersion:
            description: |-
              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
            type: string
          kind:
            description: |-
              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
            type: string
          metadata:
            type: object
          spec:
            properties:
              clusterAccessPolicy:
                description: ClusterAccessPolicy defines how the cluster may be accessed
                  through the apiserver.
                properties:
                  permittedCIDR:
                    description: PermittedCIDR defines IP blocks that may access the
                      cluster through the apiserver.
                    items:
                      type: string
                    type: array
                required:
                - permittedCIDR
                type: object
              egressPolicy:
                description: EgressPolicy if defined limits the egress NetworkPolicies
                  that may be defined per-namespace.  Applies to all namespaces.
                properties:
                  permittedCIDR:
                    description: PermittedCIDR defines permitted egress CIDR ranges
                    items:
                      properties:
                        cidr:
                          description: CIDR defines the CIDR range
                          type: string
                        port:
                          description: Port defines the allowed port
                          type: string
                      required:
                      - cidr
                      - port
                      type: object
                    type: array
                required:
                - permittedCIDR
                type: object
              ingressPolicy:
                description: IngressPolicy if defined limits the ingress NetworkPolicies
                  that may be defined per-namespace.  Applies to all namespaces.
                properties:
                  permittedCIDR:
                    description: PermittedCIDR defines permitted ingress CIDR ranges
                    items:
                      type: string
                    type: array
                required:
                - permittedCIDR
                type: object
            type: object
          status:
            properties:
              clusterAccessPolicy:
                description: ClusterAccessPolicy defines how the cluster may be accessed
                  through the apiserver.
                properties:
                  permittedCIDR:
                    description: PermittedCIDR defines IP blocks that may access the
                      cluster through the apiserver.
                    items:
                      type: string
                    type: array
                required:
                - permittedCIDR
                type: object
              egressPolicy:
                description: EgressPolicy is the egressPolicy for the last fully reconciled
                  spec
                properties:
                  permittedCIDR:
                    description: PermittedCIDR defines permitted egress CIDR ranges
                    items:
                      properties:
                        cidr:
                          description: CIDR defines the CIDR range
                          type: string
                        port:
                          description: Port defines the allowed port
                          type: string
                      required:
                      - cidr
                      - port
                      type: object
                    type: array
                required:
                - permittedCIDR
                type: object
              ingressPolicy:
                description: IngressPolicy is the ingressPolicy for the last fully
                  reconciled spec
                properties:
                  permittedCIDR:
                    description: PermittedCIDR defines permitted ingress CIDR ranges
                    items:
                      type: string
                    type: array
                required:
                - permittedCIDR
                type: object
              reconcileErrors:
                description: ReconcileErrors are errors seen during the last reconciliation.
                items:
                  type: string
                type: array
            type: object
        required:
        - spec
        type: object
    served: true
    storage: true
    subresources:
      status: {}
