{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "apiVersion": {
      "type": "string"
    },
    "kind": {
      "type": "string"
    },
    "metadata": {
      "type": "object"
    },
    "spec": {
      "properties": {
        "authorizationURL": {
          "type": "string"
        },
        "dnsName": {
          "type": "string"
        },
        "issuerRef": {
          "properties": {
            "group": {
              "type": "string"
            },
            "kind": {
              "type": "string"
            },
            "name": {
              "type": "string"
            }
          },
          "required": [
            "name"
          ],
          "type": "object"
        },
        "key": {
          "type": "string"
        },
        "solver": {
          "properties": {
            "dns01": {
              "properties": {
                "acmeDNS": {
                  "properties": {
                    "accountSecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    },
                    "host": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "accountSecretRef",
                    "host"
                  ],
                  "type": "object"
                },
                "akamai": {
                  "properties": {
                    "accessTokenSecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    },
                    "clientSecretSecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    },
                    "clientTokenSecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    },
                    "serviceConsumerDomain": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "accessTokenSecretRef",
                    "clientSecretSecretRef",
                    "clientTokenSecretRef",
                    "serviceConsumerDomain"
                  ],
                  "type": "object"
                },
                "azureDNS": {
                  "properties": {
                    "clientID": {
                      "type": "string"
                    },
                    "clientSecretSecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    },
                    "environment": {
                      "enum": [
                        "AzurePublicCloud",
                        "AzureChinaCloud",
                        "AzureGermanCloud",
                        "AzureUSGovernmentCloud"
                      ],
                      "type": "string"
                    },
                    "hostedZoneName": {
                      "type": "string"
                    },
                    "managedIdentity": {
                      "properties": {
                        "clientID": {
                          "type": "string"
                        },
                        "resourceID": {
                          "type": "string"
                        },
                        "tenantID": {
                          "type": "string"
                        }
                      },
                      "type": "object"
                    },
                    "resourceGroupName": {
                      "type": "string"
                    },
                    "subscriptionID": {
                      "type": "string"
                    },
                    "tenantID": {
                      "type": "string"
                    },
                    "zoneType": {
                      "enum": [
                        "AzurePublicZone",
                        "AzurePrivateZone"
                      ],
                      "type": "string"
                    }
                  },
                  "required": [
                    "resourceGroupName",
                    "subscriptionID"
                  ],
                  "type": "object"
                },
                "cloudDNS": {
                  "properties": {
                    "hostedZoneName": {
                      "type": "string"
                    },
                    "project": {
                      "type": "string"
                    },
                    "serviceAccountSecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    }
                  },
                  "required": [
                    "project"
                  ],
                  "type": "object"
                },
                "cloudflare": {
                  "properties": {
                    "apiKeySecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    },
                    "apiTokenSecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    },
                    "email": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "cnameStrategy": {
                  "enum": [
                    "None",
                    "Follow"
                  ],
                  "type": "string"
                },
                "digitalocean": {
                  "properties": {
                    "tokenSecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    }
                  },
                  "required": [
                    "tokenSecretRef"
                  ],
                  "type": "object"
                },
                "rfc2136": {
                  "properties": {
                    "nameserver": {
                      "type": "string"
                    },
                    "protocol": {
                      "enum": [
                        "TCP",
                        "UDP"
                      ],
                      "type": "string"
                    },
                    "tsigAlgorithm": {
                      "type": "string"
                    },
                    "tsigKeyName": {
                      "type": "string"
                    },
                    "tsigSecretSecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    }
                  },
                  "required": [
                    "nameserver"
                  ],
                  "type": "object"
                },
                "route53": {
                  "properties": {
                    "accessKeyID": {
                      "type": "string"
                    },
                    "accessKeyIDSecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    },
                    "auth": {
                      "properties": {
                        "kubernetes": {
                          "properties": {
                            "serviceAccountRef": {
                              "properties": {
                                "audiences": {
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": "array",
                                  "x-kubernetes-list-type": "atomic"
                                },
                                "name": {
                                  "type": "string"
                                }
                              },
                              "required": [
                                "name"
                              ],
                              "type": "object"
                            }
                          },
                          "required": [
                            "serviceAccountRef"
                          ],
                          "type": "object"
                        }
                      },
                      "required": [
                        "kubernetes"
                      ],
                      "type": "object"
                    },
                    "hostedZoneID": {
                      "type": "string"
                    },
                    "region": {
                      "type": "string"
                    },
                    "role": {
                      "type": "string"
                    },
                    "secretAccessKeySecretRef": {
                      "properties": {
                        "key": {
                          "type": "string"
                        },
                        "name": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "name"
                      ],
                      "type": "object"
                    }
                  },
                  "type": "object"
                },
                "webhook": {
                  "properties": {
                    "config": {
                      "x-kubernetes-preserve-unknown-fields": true
                    },
                    "groupName": {
                      "type": "string"
                    },
                    "solverName": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "groupName",
                    "solverName"
                  ],
                  "type": "object"
                }
              },
              "type": "object"
            },
            "http01": {
              "properties": {
                "gatewayHTTPRoute": {
                  "properties": {
                    "labels": {
                      "additionalProperties": {
                        "type": "string"
                      },
                      "type": "object"
                    },
                    "parentRefs": {
                      "items": {
                        "properties": {
                          "group": {
                            "default": "gateway.networking.k8s.io",
                            "maxLength": 253,
                            "pattern": "^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
                            "type": "string"
                          },
                          "kind": {
                            "default": "Gateway",
                            "maxLength": 63,
                            "minLength": 1,
                            "pattern": "^[a-zA-Z]([-a-zA-Z0-9]*[a-zA-Z0-9])?$",
                            "type": "string"
                          },
                          "name": {
                            "maxLength": 253,
                            "minLength": 1,
                            "type": "string"
                          },
                          "namespace": {
                            "maxLength": 63,
                            "minLength": 1,
                            "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
                            "type": "string"
                          },
                          "port": {
                            "format": "int32",
                            "maximum": 65535,
                            "minimum": 1,
                            "type": "integer"
                          },
                          "sectionName": {
                            "maxLength": 253,
                            "minLength": 1,
                            "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$",
                            "type": "string"
                          }
                        },
                        "required": [
                          "name"
                        ],
                        "type": "object"
                      },
                      "type": "array",
                      "x-kubernetes-list-type": "atomic"
                    },
                    "podTemplate": {
                      "properties": {
                        "metadata": {
                          "properties": {
                            "annotations": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "labels": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            }
                          },
                          "type": "object"
                        },
                        "spec": {
                          "properties": {
                            "affinity": {
                              "properties": {
                                "nodeAffinity": {
                                  "properties": {
                                    "preferredDuringSchedulingIgnoredDuringExecution": {
                                      "items": {
                                        "properties": {
                                          "preference": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchFields": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "weight": {
                                            "format": "int32",
                                            "type": "integer"
                                          }
                                        },
                                        "required": [
                                          "preference",
                                          "weight"
                                        ],
                                        "type": "object"
                                      },
                                      "type": "array",
                                      "x-kubernetes-list-type": "atomic"
                                    },
                                    "requiredDuringSchedulingIgnoredDuringExecution": {
                                      "properties": {
                                        "nodeSelectorTerms": {
                                          "items": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchFields": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "type": "array",
                                          "x-kubernetes-list-type": "atomic"
                                        }
                                      },
                                      "required": [
                                        "nodeSelectorTerms"
                                      ],
                                      "type": "object",
                                      "x-kubernetes-map-type": "atomic"
                                    }
                                  },
                                  "type": "object"
                                },
                                "podAffinity": {
                                  "properties": {
                                    "preferredDuringSchedulingIgnoredDuringExecution": {
                                      "items": {
                                        "properties": {
                                          "podAffinityTerm": {
                                            "properties": {
                                              "labelSelector": {
                                                "properties": {
                                                  "matchExpressions": {
                                                    "items": {
                                                      "properties": {
                                                        "key": {
                                                          "type": "string"
                                                        },
                                                        "operator": {
                                                          "type": "string"
                                                        },
                                                        "values": {
                                                          "items": {
                                                            "type": "string"
                                                          },
                                                          "type": "array",
                                                          "x-kubernetes-list-type": "atomic"
                                                        }
                                                      },
                                                      "required": [
                                                        "key",
                                                        "operator"
                                                      ],
                                                      "type": "object"
                                                    },
                                                    "type": "array",
                                                    "x-kubernetes-list-type": "atomic"
                                                  },
                                                  "matchLabels": {
                                                    "additionalProperties": {
                                                      "type": "string"
                                                    },
                                                    "type": "object"
                                                  }
                                                },
                                                "type": "object",
                                                "x-kubernetes-map-type": "atomic"
                                              },
                                              "matchLabelKeys": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "mismatchLabelKeys": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "namespaceSelector": {
                                                "properties": {
                                                  "matchExpressions": {
                                                    "items": {
                                                      "properties": {
                                                        "key": {
                                                          "type": "string"
                                                        },
                                                        "operator": {
                                                          "type": "string"
                                                        },
                                                        "values": {
                                                          "items": {
                                                            "type": "string"
                                                          },
                                                          "type": "array",
                                                          "x-kubernetes-list-type": "atomic"
                                                        }
                                                      },
                                                      "required": [
                                                        "key",
                                                        "operator"
                                                      ],
                                                      "type": "object"
                                                    },
                                                    "type": "array",
                                                    "x-kubernetes-list-type": "atomic"
                                                  },
                                                  "matchLabels": {
                                                    "additionalProperties": {
                                                      "type": "string"
                                                    },
                                                    "type": "object"
                                                  }
                                                },
                                                "type": "object",
                                                "x-kubernetes-map-type": "atomic"
                                              },
                                              "namespaces": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "topologyKey": {
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "topologyKey"
                                            ],
                                            "type": "object"
                                          },
                                          "weight": {
                                            "format": "int32",
                                            "type": "integer"
                                          }
                                        },
                                        "required": [
                                          "podAffinityTerm",
                                          "weight"
                                        ],
                                        "type": "object"
                                      },
                                      "type": "array",
                                      "x-kubernetes-list-type": "atomic"
                                    },
                                    "requiredDuringSchedulingIgnoredDuringExecution": {
                                      "items": {
                                        "properties": {
                                          "labelSelector": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchLabels": {
                                                "additionalProperties": {
                                                  "type": "string"
                                                },
                                                "type": "object"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "matchLabelKeys": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "mismatchLabelKeys": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "namespaceSelector": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchLabels": {
                                                "additionalProperties": {
                                                  "type": "string"
                                                },
                                                "type": "object"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "namespaces": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "topologyKey": {
                                            "type": "string"
                                          }
                                        },
                                        "required": [
                                          "topologyKey"
                                        ],
                                        "type": "object"
                                      },
                                      "type": "array",
                                      "x-kubernetes-list-type": "atomic"
                                    }
                                  },
                                  "type": "object"
                                },
                                "podAntiAffinity": {
                                  "properties": {
                                    "preferredDuringSchedulingIgnoredDuringExecution": {
                                      "items": {
                                        "properties": {
                                          "podAffinityTerm": {
                                            "properties": {
                                              "labelSelector": {
                                                "properties": {
                                                  "matchExpressions": {
                                                    "items": {
                                                      "properties": {
                                                        "key": {
                                                          "type": "string"
                                                        },
                                                        "operator": {
                                                          "type": "string"
                                                        },
                                                        "values": {
                                                          "items": {
                                                            "type": "string"
                                                          },
                                                          "type": "array",
                                                          "x-kubernetes-list-type": "atomic"
                                                        }
                                                      },
                                                      "required": [
                                                        "key",
                                                        "operator"
                                                      ],
                                                      "type": "object"
                                                    },
                                                    "type": "array",
                                                    "x-kubernetes-list-type": "atomic"
                                                  },
                                                  "matchLabels": {
                                                    "additionalProperties": {
                                                      "type": "string"
                                                    },
                                                    "type": "object"
                                                  }
                                                },
                                                "type": "object",
                                                "x-kubernetes-map-type": "atomic"
                                              },
                                              "matchLabelKeys": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "mismatchLabelKeys": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "namespaceSelector": {
                                                "properties": {
                                                  "matchExpressions": {
                                                    "items": {
                                                      "properties": {
                                                        "key": {
                                                          "type": "string"
                                                        },
                                                        "operator": {
                                                          "type": "string"
                                                        },
                                                        "values": {
                                                          "items": {
                                                            "type": "string"
                                                          },
                                                          "type": "array",
                                                          "x-kubernetes-list-type": "atomic"
                                                        }
                                                      },
                                                      "required": [
                                                        "key",
                                                        "operator"
                                                      ],
                                                      "type": "object"
                                                    },
                                                    "type": "array",
                                                    "x-kubernetes-list-type": "atomic"
                                                  },
                                                  "matchLabels": {
                                                    "additionalProperties": {
                                                      "type": "string"
                                                    },
                                                    "type": "object"
                                                  }
                                                },
                                                "type": "object",
                                                "x-kubernetes-map-type": "atomic"
                                              },
                                              "namespaces": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "topologyKey": {
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "topologyKey"
                                            ],
                                            "type": "object"
                                          },
                                          "weight": {
                                            "format": "int32",
                                            "type": "integer"
                                          }
                                        },
                                        "required": [
                                          "podAffinityTerm",
                                          "weight"
                                        ],
                                        "type": "object"
                                      },
                                      "type": "array",
                                      "x-kubernetes-list-type": "atomic"
                                    },
                                    "requiredDuringSchedulingIgnoredDuringExecution": {
                                      "items": {
                                        "properties": {
                                          "labelSelector": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchLabels": {
                                                "additionalProperties": {
                                                  "type": "string"
                                                },
                                                "type": "object"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "matchLabelKeys": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "mismatchLabelKeys": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "namespaceSelector": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchLabels": {
                                                "additionalProperties": {
                                                  "type": "string"
                                                },
                                                "type": "object"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "namespaces": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "topologyKey": {
                                            "type": "string"
                                          }
                                        },
                                        "required": [
                                          "topologyKey"
                                        ],
                                        "type": "object"
                                      },
                                      "type": "array",
                                      "x-kubernetes-list-type": "atomic"
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "type": "object"
                            },
                            "imagePullSecrets": {
                              "items": {
                                "properties": {
                                  "name": {
                                    "default": "",
                                    "type": "string"
                                  }
                                },
                                "type": "object",
                                "x-kubernetes-map-type": "atomic"
                              },
                              "type": "array",
                              "x-kubernetes-list-map-keys": [
                                "name"
                              ],
                              "x-kubernetes-list-type": "map"
                            },
                            "nodeSelector": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "priorityClassName": {
                              "type": "string"
                            },
                            "resources": {
                              "properties": {
                                "limits": {
                                  "additionalProperties": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "string"
                                      }
                                    ],
                                    "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
                                    "x-kubernetes-int-or-string": true
                                  },
                                  "type": "object"
                                },
                                "requests": {
                                  "additionalProperties": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "string"
                                      }
                                    ],
                                    "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
                                    "x-kubernetes-int-or-string": true
                                  },
                                  "type": "object"
                                }
                              },
                              "type": "object"
                            },
                            "securityContext": {
                              "properties": {
                                "fsGroup": {
                                  "format": "int64",
                                  "type": "integer"
                                },
                                "fsGroupChangePolicy": {
                                  "type": "string"
                                },
                                "runAsGroup": {
                                  "format": "int64",
                                  "type": "integer"
                                },
                                "runAsNonRoot": {
                                  "type": "boolean"
                                },
                                "runAsUser": {
                                  "format": "int64",
                                  "type": "integer"
                                },
                                "seLinuxOptions": {
                                  "properties": {
                                    "level": {
                                      "type": "string"
                                    },
                                    "role": {
                                      "type": "string"
                                    },
                                    "type": {
                                      "type": "string"
                                    },
                                    "user": {
                                      "type": "string"
                                    }
                                  },
                                  "type": "object"
                                },
                                "seccompProfile": {
                                  "properties": {
                                    "localhostProfile": {
                                      "type": "string"
                                    },
                                    "type": {
                                      "type": "string"
                                    }
                                  },
                                  "required": [
                                    "type"
                                  ],
                                  "type": "object"
                                },
                                "supplementalGroups": {
                                  "items": {
                                    "format": "int64",
                                    "type": "integer"
                                  },
                                  "type": "array",
                                  "x-kubernetes-list-type": "atomic"
                                },
                                "sysctls": {
                                  "items": {
                                    "properties": {
                                      "name": {
                                        "type": "string"
                                      },
                                      "value": {
                                        "type": "string"
                                      }
                                    },
                                    "required": [
                                      "name",
                                      "value"
                                    ],
                                    "type": "object"
                                  },
                                  "type": "array",
                                  "x-kubernetes-list-type": "atomic"
                                }
                              },
                              "type": "object"
                            },
                            "serviceAccountName": {
                              "type": "string"
                            },
                            "tolerations": {
                              "items": {
                                "properties": {
                                  "effect": {
                                    "type": "string"
                                  },
                                  "key": {
                                    "type": "string"
                                  },
                                  "operator": {
                                    "type": "string"
                                  },
                                  "tolerationSeconds": {
                                    "format": "int64",
                                    "type": "integer"
                                  },
                                  "value": {
                                    "type": "string"
                                  }
                                },
                                "type": "object"
                              },
                              "type": "array",
                              "x-kubernetes-list-type": "atomic"
                            }
                          },
                          "type": "object"
                        }
                      },
                      "type": "object"
                    },
                    "serviceType": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "ingress": {
                  "properties": {
                    "class": {
                      "type": "string"
                    },
                    "ingressClassName": {
                      "type": "string"
                    },
                    "ingressTemplate": {
                      "properties": {
                        "metadata": {
                          "properties": {
                            "annotations": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "labels": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            }
                          },
                          "type": "object"
                        }
                      },
                      "type": "object"
                    },
                    "name": {
                      "type": "string"
                    },
                    "podTemplate": {
                      "properties": {
                        "metadata": {
                          "properties": {
                            "annotations": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "labels": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            }
                          },
                          "type": "object"
                        },
                        "spec": {
                          "properties": {
                            "affinity": {
                              "properties": {
                                "nodeAffinity": {
                                  "properties": {
                                    "preferredDuringSchedulingIgnoredDuringExecution": {
                                      "items": {
                                        "properties": {
                                          "preference": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchFields": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "weight": {
                                            "format": "int32",
                                            "type": "integer"
                                          }
                                        },
                                        "required": [
                                          "preference",
                                          "weight"
                                        ],
                                        "type": "object"
                                      },
                                      "type": "array",
                                      "x-kubernetes-list-type": "atomic"
                                    },
                                    "requiredDuringSchedulingIgnoredDuringExecution": {
                                      "properties": {
                                        "nodeSelectorTerms": {
                                          "items": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchFields": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "type": "array",
                                          "x-kubernetes-list-type": "atomic"
                                        }
                                      },
                                      "required": [
                                        "nodeSelectorTerms"
                                      ],
                                      "type": "object",
                                      "x-kubernetes-map-type": "atomic"
                                    }
                                  },
                                  "type": "object"
                                },
                                "podAffinity": {
                                  "properties": {
                                    "preferredDuringSchedulingIgnoredDuringExecution": {
                                      "items": {
                                        "properties": {
                                          "podAffinityTerm": {
                                            "properties": {
                                              "labelSelector": {
                                                "properties": {
                                                  "matchExpressions": {
                                                    "items": {
                                                      "properties": {
                                                        "key": {
                                                          "type": "string"
                                                        },
                                                        "operator": {
                                                          "type": "string"
                                                        },
                                                        "values": {
                                                          "items": {
                                                            "type": "string"
                                                          },
                                                          "type": "array",
                                                          "x-kubernetes-list-type": "atomic"
                                                        }
                                                      },
                                                      "required": [
                                                        "key",
                                                        "operator"
                                                      ],
                                                      "type": "object"
                                                    },
                                                    "type": "array",
                                                    "x-kubernetes-list-type": "atomic"
                                                  },
                                                  "matchLabels": {
                                                    "additionalProperties": {
                                                      "type": "string"
                                                    },
                                                    "type": "object"
                                                  }
                                                },
                                                "type": "object",
                                                "x-kubernetes-map-type": "atomic"
                                              },
                                              "matchLabelKeys": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "mismatchLabelKeys": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "namespaceSelector": {
                                                "properties": {
                                                  "matchExpressions": {
                                                    "items": {
                                                      "properties": {
                                                        "key": {
                                                          "type": "string"
                                                        },
                                                        "operator": {
                                                          "type": "string"
                                                        },
                                                        "values": {
                                                          "items": {
                                                            "type": "string"
                                                          },
                                                          "type": "array",
                                                          "x-kubernetes-list-type": "atomic"
                                                        }
                                                      },
                                                      "required": [
                                                        "key",
                                                        "operator"
                                                      ],
                                                      "type": "object"
                                                    },
                                                    "type": "array",
                                                    "x-kubernetes-list-type": "atomic"
                                                  },
                                                  "matchLabels": {
                                                    "additionalProperties": {
                                                      "type": "string"
                                                    },
                                                    "type": "object"
                                                  }
                                                },
                                                "type": "object",
                                                "x-kubernetes-map-type": "atomic"
                                              },
                                              "namespaces": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "topologyKey": {
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "topologyKey"
                                            ],
                                            "type": "object"
                                          },
                                          "weight": {
                                            "format": "int32",
                                            "type": "integer"
                                          }
                                        },
                                        "required": [
                                          "podAffinityTerm",
                                          "weight"
                                        ],
                                        "type": "object"
                                      },
                                      "type": "array",
                                      "x-kubernetes-list-type": "atomic"
                                    },
                                    "requiredDuringSchedulingIgnoredDuringExecution": {
                                      "items": {
                                        "properties": {
                                          "labelSelector": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchLabels": {
                                                "additionalProperties": {
                                                  "type": "string"
                                                },
                                                "type": "object"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "matchLabelKeys": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "mismatchLabelKeys": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "namespaceSelector": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchLabels": {
                                                "additionalProperties": {
                                                  "type": "string"
                                                },
                                                "type": "object"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "namespaces": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "topologyKey": {
                                            "type": "string"
                                          }
                                        },
                                        "required": [
                                          "topologyKey"
                                        ],
                                        "type": "object"
                                      },
                                      "type": "array",
                                      "x-kubernetes-list-type": "atomic"
                                    }
                                  },
                                  "type": "object"
                                },
                                "podAntiAffinity": {
                                  "properties": {
                                    "preferredDuringSchedulingIgnoredDuringExecution": {
                                      "items": {
                                        "properties": {
                                          "podAffinityTerm": {
                                            "properties": {
                                              "labelSelector": {
                                                "properties": {
                                                  "matchExpressions": {
                                                    "items": {
                                                      "properties": {
                                                        "key": {
                                                          "type": "string"
                                                        },
                                                        "operator": {
                                                          "type": "string"
                                                        },
                                                        "values": {
                                                          "items": {
                                                            "type": "string"
                                                          },
                                                          "type": "array",
                                                          "x-kubernetes-list-type": "atomic"
                                                        }
                                                      },
                                                      "required": [
                                                        "key",
                                                        "operator"
                                                      ],
                                                      "type": "object"
                                                    },
                                                    "type": "array",
                                                    "x-kubernetes-list-type": "atomic"
                                                  },
                                                  "matchLabels": {
                                                    "additionalProperties": {
                                                      "type": "string"
                                                    },
                                                    "type": "object"
                                                  }
                                                },
                                                "type": "object",
                                                "x-kubernetes-map-type": "atomic"
                                              },
                                              "matchLabelKeys": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "mismatchLabelKeys": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "namespaceSelector": {
                                                "properties": {
                                                  "matchExpressions": {
                                                    "items": {
                                                      "properties": {
                                                        "key": {
                                                          "type": "string"
                                                        },
                                                        "operator": {
                                                          "type": "string"
                                                        },
                                                        "values": {
                                                          "items": {
                                                            "type": "string"
                                                          },
                                                          "type": "array",
                                                          "x-kubernetes-list-type": "atomic"
                                                        }
                                                      },
                                                      "required": [
                                                        "key",
                                                        "operator"
                                                      ],
                                                      "type": "object"
                                                    },
                                                    "type": "array",
                                                    "x-kubernetes-list-type": "atomic"
                                                  },
                                                  "matchLabels": {
                                                    "additionalProperties": {
                                                      "type": "string"
                                                    },
                                                    "type": "object"
                                                  }
                                                },
                                                "type": "object",
                                                "x-kubernetes-map-type": "atomic"
                                              },
                                              "namespaces": {
                                                "items": {
                                                  "type": "string"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "topologyKey": {
                                                "type": "string"
                                              }
                                            },
                                            "required": [
                                              "topologyKey"
                                            ],
                                            "type": "object"
                                          },
                                          "weight": {
                                            "format": "int32",
                                            "type": "integer"
                                          }
                                        },
                                        "required": [
                                          "podAffinityTerm",
                                          "weight"
                                        ],
                                        "type": "object"
                                      },
                                      "type": "array",
                                      "x-kubernetes-list-type": "atomic"
                                    },
                                    "requiredDuringSchedulingIgnoredDuringExecution": {
                                      "items": {
                                        "properties": {
                                          "labelSelector": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchLabels": {
                                                "additionalProperties": {
                                                  "type": "string"
                                                },
                                                "type": "object"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "matchLabelKeys": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "mismatchLabelKeys": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "namespaceSelector": {
                                            "properties": {
                                              "matchExpressions": {
                                                "items": {
                                                  "properties": {
                                                    "key": {
                                                      "type": "string"
                                                    },
                                                    "operator": {
                                                      "type": "string"
                                                    },
                                                    "values": {
                                                      "items": {
                                                        "type": "string"
                                                      },
                                                      "type": "array",
                                                      "x-kubernetes-list-type": "atomic"
                                                    }
                                                  },
                                                  "required": [
                                                    "key",
                                                    "operator"
                                                  ],
                                                  "type": "object"
                                                },
                                                "type": "array",
                                                "x-kubernetes-list-type": "atomic"
                                              },
                                              "matchLabels": {
                                                "additionalProperties": {
                                                  "type": "string"
                                                },
                                                "type": "object"
                                              }
                                            },
                                            "type": "object",
                                            "x-kubernetes-map-type": "atomic"
                                          },
                                          "namespaces": {
                                            "items": {
                                              "type": "string"
                                            },
                                            "type": "array",
                                            "x-kubernetes-list-type": "atomic"
                                          },
                                          "topologyKey": {
                                            "type": "string"
                                          }
                                        },
                                        "required": [
                                          "topologyKey"
                                        ],
                                        "type": "object"
                                      },
                                      "type": "array",
                                      "x-kubernetes-list-type": "atomic"
                                    }
                                  },
                                  "type": "object"
                                }
                              },
                              "type": "object"
                            },
                            "imagePullSecrets": {
                              "items": {
                                "properties": {
                                  "name": {
                                    "default": "",
                                    "type": "string"
                                  }
                                },
                                "type": "object",
                                "x-kubernetes-map-type": "atomic"
                              },
                              "type": "array",
                              "x-kubernetes-list-map-keys": [
                                "name"
                              ],
                              "x-kubernetes-list-type": "map"
                            },
                            "nodeSelector": {
                              "additionalProperties": {
                                "type": "string"
                              },
                              "type": "object"
                            },
                            "priorityClassName": {
                              "type": "string"
                            },
                            "resources": {
                              "properties": {
                                "limits": {
                                  "additionalProperties": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "string"
                                      }
                                    ],
                                    "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
                                    "x-kubernetes-int-or-string": true
                                  },
                                  "type": "object"
                                },
                                "requests": {
                                  "additionalProperties": {
                                    "anyOf": [
                                      {
                                        "type": "integer"
                                      },
                                      {
                                        "type": "string"
                                      }
                                    ],
                                    "pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
                                    "x-kubernetes-int-or-string": true
                                  },
                                  "type": "object"
                                }
                              },
                              "type": "object"
                            },
                            "securityContext": {
                              "properties": {
                                "fsGroup": {
                                  "format": "int64",
                                  "type": "integer"
                                },
                                "fsGroupChangePolicy": {
                                  "type": "string"
                                },
                                "runAsGroup": {
                                  "format": "int64",
                                  "type": "integer"
                                },
                                "runAsNonRoot": {
                                  "type": "boolean"
                                },
                                "runAsUser": {
                                  "format": "int64",
                                  "type": "integer"
                                },
                                "seLinuxOptions": {
                                  "properties": {
                                    "level": {
                                      "type": "string"
                                    },
                                    "role": {
                                      "type": "string"
                                    },
                                    "type": {
                                      "type": "string"
                                    },
                                    "user": {
                                      "type": "string"
                                    }
                                  },
                                  "type": "object"
                                },
                                "seccompProfile": {
                                  "properties": {
                                    "localhostProfile": {
                                      "type": "string"
                                    },
                                    "type": {
                                      "type": "string"
                                    }
                                  },
                                  "required": [
                                    "type"
                                  ],
                                  "type": "object"
                                },
                                "supplementalGroups": {
                                  "items": {
                                    "format": "int64",
                                    "type": "integer"
                                  },
                                  "type": "array",
                                  "x-kubernetes-list-type": "atomic"
                                },
                                "sysctls": {
                                  "items": {
                                    "properties": {
                                      "name": {
                                        "type": "string"
                                      },
                                      "value": {
                                        "type": "string"
                                      }
                                    },
                                    "required": [
                                      "name",
                                      "value"
                                    ],
                                    "type": "object"
                                  },
                                  "type": "array",
                                  "x-kubernetes-list-type": "atomic"
                                }
                              },
                              "type": "object"
                            },
                            "serviceAccountName": {
                              "type": "string"
                            },
                            "tolerations": {
                              "items": {
                                "properties": {
                                  "effect": {
                                    "type": "string"
                                  },
                                  "key": {
                                    "type": "string"
                                  },
                                  "operator": {
                                    "type": "string"
                                  },
                                  "tolerationSeconds": {
                                    "format": "int64",
                                    "type": "integer"
                                  },
                                  "value": {
                                    "type": "string"
                                  }
                                },
                                "type": "object"
                              },
                              "type": "array",
                              "x-kubernetes-list-type": "atomic"
                            }
                          },
                          "type": "object"
                        }
                      },
                      "type": "object"
                    },
                    "serviceType": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                }
              },
              "type": "object"
            },
            "selector": {
              "properties": {
                "dnsNames": {
                  "items": {
                    "type": "string"
                  },
                  "type": "array",
                  "x-kubernetes-list-type": "atomic"
                },
                "dnsZones": {
                  "items": {
                    "type": "string"
                  },
                  "type": "array",
                  "x-kubernetes-list-type": "atomic"
                },
                "matchLabels": {
                  "additionalProperties": {
                    "type": "string"
                  },
                  "type": "object"
                }
              },
              "type": "object"
            }
          },
          "type": "object"
        },
        "token": {
          "type": "string"
        },
        "type": {
          "enum": [
            "HTTP-01",
            "DNS-01"
          ],
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "wildcard": {
          "type": "boolean"
        }
      },
      "required": [
        "authorizationURL",
        "dnsName",
        "issuerRef",
        "key",
        "solver",
        "token",
        "type",
        "url"
      ],
      "type": "object"
    },
    "status": {
      "properties": {
        "presented": {
          "type": "boolean"
        },
        "processing": {
          "type": "boolean"
        },
        "reason": {
          "type": "string"
        },
        "state": {
          "enum": [
            "valid",
            "ready",
            "pending",
            "processing",
            "invalid",
            "expired",
            "errored"
          ],
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "required": [
    "metadata",
    "spec"
  ],
  "type": "object"
}
