---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.17.2
  name: firewallpolicies.unifi.engen.priv.no
spec:
  group: unifi.engen.priv.no
  names:
    kind: FirewallPolicy
    listKind: FirewallPolicyList
    plural: firewallpolicies
    singular: firewallpolicy
  scope: Namespaced
  versions:
  - name: v1beta1
    schema:
      openAPIV3Schema:
        description: FirewallPolicy is the Schema for the firewallpolicies API.
        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:
              destination:
                properties:
                  firewall_groups:
                    items:
                      properties:
                        name:
                          type: string
                        namespace:
                          type: string
                      type: object
                    type: array
                  services:
                    items:
                      properties:
                        name:
                          type: string
                        namespace:
                          type: string
                      type: object
                    type: array
                type: object
              match_firewall_groups_in_all_namespaces:
                type: boolean
              match_services_in_all_namespaces:
                type: boolean
              name:
                type: string
              source:
                properties:
                  from_networks:
                    items:
                      properties:
                        name:
                          type: string
                        namespace:
                          type: string
                      type: object
                    type: array
                  from_zones:
                    items:
                      properties:
                        name:
                          type: string
                        namespace:
                          type: string
                      type: object
                    type: array
                type: object
            required:
            - destination
            - name
            - source
            type: object
          status:
            description: FirewallPolicyStatus defines the observed state of FirewallPolicy.
            properties:
              resources_managed:
                properties:
                  firewall_groups_managed:
                    items:
                      properties:
                        name:
                          type: string
                        namespace:
                          type: string
                      type: object
                    type: array
                  firewall_policies_managed:
                    items:
                      properties:
                        from:
                          type: string
                        tcpipv4_id:
                          type: string
                        tcpipv6_id:
                          type: string
                        to:
                          type: string
                        udpipv4_id:
                          type: string
                        udpipv6_id:
                          type: string
                      required:
                      - from
                      - tcpipv4_id
                      - tcpipv6_id
                      - to
                      - udpipv4_id
                      - udpipv6_id
                      type: object
                    type: array
                type: object
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
