github.com/projectcontour/contour@v1.28.2/site/content/docs/v1.4.0/api-reference.html (about)

     1  <p>Packages:</p>
     2  <ul>
     3  <li>
     4  <a href="#projectcontour.io%2fv1">projectcontour.io/v1</a>
     5  </li>
     6  </ul>
     7  <h2 id="projectcontour.io/v1">projectcontour.io/v1</h2>
     8  <p>
     9  <p>Package v1 is the v1 version of the API.</p>
    10  </p>
    11  Resource Types:
    12  <ul><li>
    13  <a href="#projectcontour.io/v1.HTTPProxy">HTTPProxy</a>
    14  </li><li>
    15  <a href="#projectcontour.io/v1.TLSCertificateDelegation">TLSCertificateDelegation</a>
    16  </li></ul>
    17  <h3 id="projectcontour.io/v1.HTTPProxy">HTTPProxy
    18  </h3>
    19  <p>
    20  <p>HTTPProxy is an Ingress CRD specification</p>
    21  </p>
    22  <table class="table table-striped table-borderless" style="border:none">
    23  <thead class="border-bottom">
    24  <tr>
    25  <th>Field</th>
    26  <th>Description</th>
    27  </tr>
    28  </thead>
    29  <tbody class="border-top">
    30  <tr>
    31  <td>
    32  <code>apiVersion</code>
    33  <br>
    34  string</td>
    35  <td>
    36  <code>
    37  projectcontour.io/v1
    38  </code>
    39  </td>
    40  </tr>
    41  <tr>
    42  <td>
    43  <code>kind</code>
    44  <br>
    45  string
    46  </td>
    47  <td><code>HTTPProxy</code></td>
    48  </tr>
    49  <tr>
    50  <td style="white-space:nowrap">
    51  <code>metadata</code>
    52  <br>
    53  <em>
    54  <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/#objectmeta-v1-meta">
    55  Kubernetes meta/v1.ObjectMeta
    56  </a>
    57  </em>
    58  </td>
    59  <td>
    60  Refer to the Kubernetes API documentation for the fields of the
    61  <code>metadata</code> field.
    62  </td>
    63  </tr>
    64  <tr>
    65  <td style="white-space:nowrap">
    66  <code>spec</code>
    67  <br>
    68  <em>
    69  <a href="#projectcontour.io/v1.HTTPProxySpec">
    70  HTTPProxySpec
    71  </a>
    72  </em>
    73  </td>
    74  <td>
    75  <br>
    76  <br>
    77  <table style="border:none">
    78  <tr>
    79  <td style="white-space:nowrap">
    80  <code>virtualhost</code>
    81  <br>
    82  <em>
    83  <a href="#projectcontour.io/v1.VirtualHost">
    84  VirtualHost
    85  </a>
    86  </em>
    87  </td>
    88  <td>
    89  <em>(Optional)</em>
    90  <p>Virtualhost appears at most once. If it is present, the object is considered
    91  to be a &ldquo;root&rdquo;.</p>
    92  </td>
    93  </tr>
    94  <tr>
    95  <td style="white-space:nowrap">
    96  <code>routes</code>
    97  <br>
    98  <em>
    99  <a href="#projectcontour.io/v1.Route">
   100  []Route
   101  </a>
   102  </em>
   103  </td>
   104  <td>
   105  <em>(Optional)</em>
   106  <p>Routes are the ingress routes. If TCPProxy is present, Routes is ignored.</p>
   107  </td>
   108  </tr>
   109  <tr>
   110  <td style="white-space:nowrap">
   111  <code>tcpproxy</code>
   112  <br>
   113  <em>
   114  <a href="#projectcontour.io/v1.TCPProxy">
   115  TCPProxy
   116  </a>
   117  </em>
   118  </td>
   119  <td>
   120  <em>(Optional)</em>
   121  <p>TCPProxy holds TCP proxy information.</p>
   122  </td>
   123  </tr>
   124  <tr>
   125  <td style="white-space:nowrap">
   126  <code>includes</code>
   127  <br>
   128  <em>
   129  <a href="#projectcontour.io/v1.Include">
   130  []Include
   131  </a>
   132  </em>
   133  </td>
   134  <td>
   135  <em>(Optional)</em>
   136  <p>Includes allow for specific routing configuration to be appended to another HTTPProxy in another namespace.</p>
   137  </td>
   138  </tr>
   139  </table>
   140  </td>
   141  </tr>
   142  <tr>
   143  <td style="white-space:nowrap">
   144  <code>status</code>
   145  <br>
   146  <em>
   147  <a href="#projectcontour.io/v1.Status">
   148  Status
   149  </a>
   150  </em>
   151  </td>
   152  <td>
   153  <em>(Optional)</em>
   154  </td>
   155  </tr>
   156  </tbody>
   157  </table>
   158  <h3 id="projectcontour.io/v1.TLSCertificateDelegation">TLSCertificateDelegation
   159  </h3>
   160  <p>
   161  <p>TLSCertificateDelegation is an TLS Certificate Delegation CRD specification.
   162  See design/tls-certificate-delegation.md for details.</p>
   163  </p>
   164  <table class="table table-striped table-borderless" style="border:none">
   165  <thead class="border-bottom">
   166  <tr>
   167  <th>Field</th>
   168  <th>Description</th>
   169  </tr>
   170  </thead>
   171  <tbody class="border-top">
   172  <tr>
   173  <td>
   174  <code>apiVersion</code>
   175  <br>
   176  string</td>
   177  <td>
   178  <code>
   179  projectcontour.io/v1
   180  </code>
   181  </td>
   182  </tr>
   183  <tr>
   184  <td>
   185  <code>kind</code>
   186  <br>
   187  string
   188  </td>
   189  <td><code>TLSCertificateDelegation</code></td>
   190  </tr>
   191  <tr>
   192  <td style="white-space:nowrap">
   193  <code>metadata</code>
   194  <br>
   195  <em>
   196  <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/#objectmeta-v1-meta">
   197  Kubernetes meta/v1.ObjectMeta
   198  </a>
   199  </em>
   200  </td>
   201  <td>
   202  Refer to the Kubernetes API documentation for the fields of the
   203  <code>metadata</code> field.
   204  </td>
   205  </tr>
   206  <tr>
   207  <td style="white-space:nowrap">
   208  <code>spec</code>
   209  <br>
   210  <em>
   211  <a href="#projectcontour.io/v1.TLSCertificateDelegationSpec">
   212  TLSCertificateDelegationSpec
   213  </a>
   214  </em>
   215  </td>
   216  <td>
   217  <br>
   218  <br>
   219  <table style="border:none">
   220  <tr>
   221  <td style="white-space:nowrap">
   222  <code>delegations</code>
   223  <br>
   224  <em>
   225  <a href="#projectcontour.io/v1.CertificateDelegation">
   226  []CertificateDelegation
   227  </a>
   228  </em>
   229  </td>
   230  <td>
   231  </td>
   232  </tr>
   233  </table>
   234  </td>
   235  </tr>
   236  </tbody>
   237  </table>
   238  <h3 id="projectcontour.io/v1.CertificateDelegation">CertificateDelegation
   239  </h3>
   240  <p>
   241  (<em>Appears on:</em>
   242  <a href="#projectcontour.io/v1.TLSCertificateDelegationSpec">TLSCertificateDelegationSpec</a>)
   243  </p>
   244  <p>
   245  <p>CertificateDelegation maps the authority to reference a secret
   246  in the current namespace to a set of namespaces.</p>
   247  </p>
   248  <table class="table table-striped table-borderless" style="border:none">
   249  <thead class="border-bottom">
   250  <tr>
   251  <th>Field</th>
   252  <th>Description</th>
   253  </tr>
   254  </thead>
   255  <tbody class="border-top">
   256  <tr>
   257  <td style="white-space:nowrap">
   258  <code>secretName</code>
   259  <br>
   260  <em>
   261  string
   262  </em>
   263  </td>
   264  <td>
   265  <p>required, the name of a secret in the current namespace.</p>
   266  </td>
   267  </tr>
   268  <tr>
   269  <td style="white-space:nowrap">
   270  <code>targetNamespaces</code>
   271  <br>
   272  <em>
   273  []string
   274  </em>
   275  </td>
   276  <td>
   277  <p>required, the namespaces the authority to reference the
   278  the secret will be delegated to.
   279  If TargetNamespaces is nil or empty, the CertificateDelegation&rsquo;
   280  is ignored. If the TargetNamespace list contains the character, &ldquo;*&rdquo;
   281  the secret will be delegated to all namespaces.</p>
   282  </td>
   283  </tr>
   284  </tbody>
   285  </table>
   286  <h3 id="projectcontour.io/v1.Condition">Condition
   287  </h3>
   288  <p>
   289  (<em>Appears on:</em>
   290  <a href="#projectcontour.io/v1.Include">Include</a>, 
   291  <a href="#projectcontour.io/v1.Route">Route</a>)
   292  </p>
   293  <p>
   294  <p>Condition are policies that are applied on top of HTTPProxies.
   295  One of Prefix or Header must be provided.</p>
   296  </p>
   297  <table class="table table-striped table-borderless" style="border:none">
   298  <thead class="border-bottom">
   299  <tr>
   300  <th>Field</th>
   301  <th>Description</th>
   302  </tr>
   303  </thead>
   304  <tbody class="border-top">
   305  <tr>
   306  <td style="white-space:nowrap">
   307  <code>prefix</code>
   308  <br>
   309  <em>
   310  string
   311  </em>
   312  </td>
   313  <td>
   314  <em>(Optional)</em>
   315  <p>Prefix defines a prefix match for a request.</p>
   316  </td>
   317  </tr>
   318  <tr>
   319  <td style="white-space:nowrap">
   320  <code>header</code>
   321  <br>
   322  <em>
   323  <a href="#projectcontour.io/v1.HeaderCondition">
   324  HeaderCondition
   325  </a>
   326  </em>
   327  </td>
   328  <td>
   329  <em>(Optional)</em>
   330  <p>Header specifies the header condition to match.</p>
   331  </td>
   332  </tr>
   333  </tbody>
   334  </table>
   335  <h3 id="projectcontour.io/v1.DownstreamValidation">DownstreamValidation
   336  </h3>
   337  <p>
   338  (<em>Appears on:</em>
   339  <a href="#projectcontour.io/v1.TLS">TLS</a>)
   340  </p>
   341  <p>
   342  <p>DownstreamValidation defines how to verify the client certificate.</p>
   343  </p>
   344  <table class="table table-striped table-borderless" style="border:none">
   345  <thead class="border-bottom">
   346  <tr>
   347  <th>Field</th>
   348  <th>Description</th>
   349  </tr>
   350  </thead>
   351  <tbody class="border-top">
   352  <tr>
   353  <td style="white-space:nowrap">
   354  <code>caSecret</code>
   355  <br>
   356  <em>
   357  string
   358  </em>
   359  </td>
   360  <td>
   361  <p>Name of a Kubernetes secret that contains a CA certificate bundle.
   362  The client certificate must validate against the certificates in the bundle.</p>
   363  </td>
   364  </tr>
   365  </tbody>
   366  </table>
   367  <h3 id="projectcontour.io/v1.HTTPHealthCheckPolicy">HTTPHealthCheckPolicy
   368  </h3>
   369  <p>
   370  (<em>Appears on:</em>
   371  <a href="#projectcontour.io/v1.Route">Route</a>)
   372  </p>
   373  <p>
   374  <p>HTTPHealthCheckPolicy defines health checks on the upstream service.</p>
   375  </p>
   376  <table class="table table-striped table-borderless" style="border:none">
   377  <thead class="border-bottom">
   378  <tr>
   379  <th>Field</th>
   380  <th>Description</th>
   381  </tr>
   382  </thead>
   383  <tbody class="border-top">
   384  <tr>
   385  <td style="white-space:nowrap">
   386  <code>path</code>
   387  <br>
   388  <em>
   389  string
   390  </em>
   391  </td>
   392  <td>
   393  <p>HTTP endpoint used to perform health checks on upstream service</p>
   394  </td>
   395  </tr>
   396  <tr>
   397  <td style="white-space:nowrap">
   398  <code>host</code>
   399  <br>
   400  <em>
   401  string
   402  </em>
   403  </td>
   404  <td>
   405  <p>The value of the host header in the HTTP health check request.
   406  If left empty (default value), the name &ldquo;contour-envoy-healthcheck&rdquo;
   407  will be used.</p>
   408  </td>
   409  </tr>
   410  <tr>
   411  <td style="white-space:nowrap">
   412  <code>intervalSeconds</code>
   413  <br>
   414  <em>
   415  int64
   416  </em>
   417  </td>
   418  <td>
   419  <em>(Optional)</em>
   420  <p>The interval (seconds) between health checks</p>
   421  </td>
   422  </tr>
   423  <tr>
   424  <td style="white-space:nowrap">
   425  <code>timeoutSeconds</code>
   426  <br>
   427  <em>
   428  int64
   429  </em>
   430  </td>
   431  <td>
   432  <em>(Optional)</em>
   433  <p>The time to wait (seconds) for a health check response</p>
   434  </td>
   435  </tr>
   436  <tr>
   437  <td style="white-space:nowrap">
   438  <code>unhealthyThresholdCount</code>
   439  <br>
   440  <em>
   441  int64
   442  </em>
   443  </td>
   444  <td>
   445  <em>(Optional)</em>
   446  <p>The number of unhealthy health checks required before a host is marked unhealthy</p>
   447  </td>
   448  </tr>
   449  <tr>
   450  <td style="white-space:nowrap">
   451  <code>healthyThresholdCount</code>
   452  <br>
   453  <em>
   454  int64
   455  </em>
   456  </td>
   457  <td>
   458  <em>(Optional)</em>
   459  <p>The number of healthy health checks required before a host is marked healthy</p>
   460  </td>
   461  </tr>
   462  </tbody>
   463  </table>
   464  <h3 id="projectcontour.io/v1.HTTPProxySpec">HTTPProxySpec
   465  </h3>
   466  <p>
   467  (<em>Appears on:</em>
   468  <a href="#projectcontour.io/v1.HTTPProxy">HTTPProxy</a>)
   469  </p>
   470  <p>
   471  <p>HTTPProxySpec defines the spec of the CRD.</p>
   472  </p>
   473  <table class="table table-striped table-borderless" style="border:none">
   474  <thead class="border-bottom">
   475  <tr>
   476  <th>Field</th>
   477  <th>Description</th>
   478  </tr>
   479  </thead>
   480  <tbody class="border-top">
   481  <tr>
   482  <td style="white-space:nowrap">
   483  <code>virtualhost</code>
   484  <br>
   485  <em>
   486  <a href="#projectcontour.io/v1.VirtualHost">
   487  VirtualHost
   488  </a>
   489  </em>
   490  </td>
   491  <td>
   492  <em>(Optional)</em>
   493  <p>Virtualhost appears at most once. If it is present, the object is considered
   494  to be a &ldquo;root&rdquo;.</p>
   495  </td>
   496  </tr>
   497  <tr>
   498  <td style="white-space:nowrap">
   499  <code>routes</code>
   500  <br>
   501  <em>
   502  <a href="#projectcontour.io/v1.Route">
   503  []Route
   504  </a>
   505  </em>
   506  </td>
   507  <td>
   508  <em>(Optional)</em>
   509  <p>Routes are the ingress routes. If TCPProxy is present, Routes is ignored.</p>
   510  </td>
   511  </tr>
   512  <tr>
   513  <td style="white-space:nowrap">
   514  <code>tcpproxy</code>
   515  <br>
   516  <em>
   517  <a href="#projectcontour.io/v1.TCPProxy">
   518  TCPProxy
   519  </a>
   520  </em>
   521  </td>
   522  <td>
   523  <em>(Optional)</em>
   524  <p>TCPProxy holds TCP proxy information.</p>
   525  </td>
   526  </tr>
   527  <tr>
   528  <td style="white-space:nowrap">
   529  <code>includes</code>
   530  <br>
   531  <em>
   532  <a href="#projectcontour.io/v1.Include">
   533  []Include
   534  </a>
   535  </em>
   536  </td>
   537  <td>
   538  <em>(Optional)</em>
   539  <p>Includes allow for specific routing configuration to be appended to another HTTPProxy in another namespace.</p>
   540  </td>
   541  </tr>
   542  </tbody>
   543  </table>
   544  <h3 id="projectcontour.io/v1.HeaderCondition">HeaderCondition
   545  </h3>
   546  <p>
   547  (<em>Appears on:</em>
   548  <a href="#projectcontour.io/v1.Condition">Condition</a>)
   549  </p>
   550  <p>
   551  <p>HeaderCondition specifies how to conditionally match against HTTP
   552  headers. The Name field is required, but only one of the remaining
   553  fields should be be provided.</p>
   554  </p>
   555  <table class="table table-striped table-borderless" style="border:none">
   556  <thead class="border-bottom">
   557  <tr>
   558  <th>Field</th>
   559  <th>Description</th>
   560  </tr>
   561  </thead>
   562  <tbody class="border-top">
   563  <tr>
   564  <td style="white-space:nowrap">
   565  <code>name</code>
   566  <br>
   567  <em>
   568  string
   569  </em>
   570  </td>
   571  <td>
   572  <p>Name is the name of the header to match against. Name is required.
   573  Header names are case insensitive.</p>
   574  </td>
   575  </tr>
   576  <tr>
   577  <td style="white-space:nowrap">
   578  <code>present</code>
   579  <br>
   580  <em>
   581  bool
   582  </em>
   583  </td>
   584  <td>
   585  <em>(Optional)</em>
   586  <p>Present specifies that condition is true when the named header
   587  is present, regardless of its value. Note that setting Present
   588  to false does not make the condition true if the named header
   589  is absent.</p>
   590  </td>
   591  </tr>
   592  <tr>
   593  <td style="white-space:nowrap">
   594  <code>contains</code>
   595  <br>
   596  <em>
   597  string
   598  </em>
   599  </td>
   600  <td>
   601  <em>(Optional)</em>
   602  <p>Contains specifies a substring that must be present in
   603  the header value.</p>
   604  </td>
   605  </tr>
   606  <tr>
   607  <td style="white-space:nowrap">
   608  <code>notcontains</code>
   609  <br>
   610  <em>
   611  string
   612  </em>
   613  </td>
   614  <td>
   615  <em>(Optional)</em>
   616  <p>NotContains specifies a substring that must not be present
   617  in the header value.</p>
   618  </td>
   619  </tr>
   620  <tr>
   621  <td style="white-space:nowrap">
   622  <code>exact</code>
   623  <br>
   624  <em>
   625  string
   626  </em>
   627  </td>
   628  <td>
   629  <em>(Optional)</em>
   630  <p>Exact specifies a string that the header value must be equal to.</p>
   631  </td>
   632  </tr>
   633  <tr>
   634  <td style="white-space:nowrap">
   635  <code>notexact</code>
   636  <br>
   637  <em>
   638  string
   639  </em>
   640  </td>
   641  <td>
   642  <em>(Optional)</em>
   643  <p>NoExact specifies a string that the header value must not be
   644  equal to. The condition is true if the header has any other value.</p>
   645  </td>
   646  </tr>
   647  </tbody>
   648  </table>
   649  <h3 id="projectcontour.io/v1.HeaderValue">HeaderValue
   650  </h3>
   651  <p>
   652  (<em>Appears on:</em>
   653  <a href="#projectcontour.io/v1.HeadersPolicy">HeadersPolicy</a>)
   654  </p>
   655  <p>
   656  <p>HeaderValue represents a header name/value pair</p>
   657  </p>
   658  <table class="table table-striped table-borderless" style="border:none">
   659  <thead class="border-bottom">
   660  <tr>
   661  <th>Field</th>
   662  <th>Description</th>
   663  </tr>
   664  </thead>
   665  <tbody class="border-top">
   666  <tr>
   667  <td style="white-space:nowrap">
   668  <code>name</code>
   669  <br>
   670  <em>
   671  string
   672  </em>
   673  </td>
   674  <td>
   675  <p>Name represents a key of a header</p>
   676  </td>
   677  </tr>
   678  <tr>
   679  <td style="white-space:nowrap">
   680  <code>value</code>
   681  <br>
   682  <em>
   683  string
   684  </em>
   685  </td>
   686  <td>
   687  <p>Value represents the value of a header specified by a key</p>
   688  </td>
   689  </tr>
   690  </tbody>
   691  </table>
   692  <h3 id="projectcontour.io/v1.HeadersPolicy">HeadersPolicy
   693  </h3>
   694  <p>
   695  (<em>Appears on:</em>
   696  <a href="#projectcontour.io/v1.Route">Route</a>, 
   697  <a href="#projectcontour.io/v1.Service">Service</a>)
   698  </p>
   699  <p>
   700  <p>HeadersPolicy defines how headers are managed during forwarding</p>
   701  </p>
   702  <table class="table table-striped table-borderless" style="border:none">
   703  <thead class="border-bottom">
   704  <tr>
   705  <th>Field</th>
   706  <th>Description</th>
   707  </tr>
   708  </thead>
   709  <tbody class="border-top">
   710  <tr>
   711  <td style="white-space:nowrap">
   712  <code>set</code>
   713  <br>
   714  <em>
   715  <a href="#projectcontour.io/v1.HeaderValue">
   716  []HeaderValue
   717  </a>
   718  </em>
   719  </td>
   720  <td>
   721  <em>(Optional)</em>
   722  <p>Set specifies a list of HTTP header values that will be set in the HTTP header</p>
   723  </td>
   724  </tr>
   725  <tr>
   726  <td style="white-space:nowrap">
   727  <code>remove</code>
   728  <br>
   729  <em>
   730  []string
   731  </em>
   732  </td>
   733  <td>
   734  <em>(Optional)</em>
   735  <p>Remove specifies a list of HTTP header names to remove</p>
   736  </td>
   737  </tr>
   738  </tbody>
   739  </table>
   740  <h3 id="projectcontour.io/v1.Include">Include
   741  </h3>
   742  <p>
   743  (<em>Appears on:</em>
   744  <a href="#projectcontour.io/v1.HTTPProxySpec">HTTPProxySpec</a>)
   745  </p>
   746  <p>
   747  <p>Include describes a set of policies that can be applied to an HTTPProxy in a namespace.</p>
   748  </p>
   749  <table class="table table-striped table-borderless" style="border:none">
   750  <thead class="border-bottom">
   751  <tr>
   752  <th>Field</th>
   753  <th>Description</th>
   754  </tr>
   755  </thead>
   756  <tbody class="border-top">
   757  <tr>
   758  <td style="white-space:nowrap">
   759  <code>name</code>
   760  <br>
   761  <em>
   762  string
   763  </em>
   764  </td>
   765  <td>
   766  <p>Name of the HTTPProxy</p>
   767  </td>
   768  </tr>
   769  <tr>
   770  <td style="white-space:nowrap">
   771  <code>namespace</code>
   772  <br>
   773  <em>
   774  string
   775  </em>
   776  </td>
   777  <td>
   778  <em>(Optional)</em>
   779  <p>Namespace of the HTTPProxy to include. Defaults to the current namespace if not supplied.</p>
   780  </td>
   781  </tr>
   782  <tr>
   783  <td style="white-space:nowrap">
   784  <code>conditions</code>
   785  <br>
   786  <em>
   787  <a href="#projectcontour.io/v1.Condition">
   788  []Condition
   789  </a>
   790  </em>
   791  </td>
   792  <td>
   793  <em>(Optional)</em>
   794  <p>Conditions are a set of routing properties that is applied to an HTTPProxy in a namespace.</p>
   795  </td>
   796  </tr>
   797  </tbody>
   798  </table>
   799  <h3 id="projectcontour.io/v1.LoadBalancerPolicy">LoadBalancerPolicy
   800  </h3>
   801  <p>
   802  (<em>Appears on:</em>
   803  <a href="#projectcontour.io/v1.Route">Route</a>, 
   804  <a href="#projectcontour.io/v1.TCPProxy">TCPProxy</a>)
   805  </p>
   806  <p>
   807  <p>LoadBalancerPolicy defines the load balancing policy.</p>
   808  </p>
   809  <table class="table table-striped table-borderless" style="border:none">
   810  <thead class="border-bottom">
   811  <tr>
   812  <th>Field</th>
   813  <th>Description</th>
   814  </tr>
   815  </thead>
   816  <tbody class="border-top">
   817  <tr>
   818  <td style="white-space:nowrap">
   819  <code>strategy</code>
   820  <br>
   821  <em>
   822  string
   823  </em>
   824  </td>
   825  <td>
   826  <p>Strategy specifies the policy used to balance requests
   827  across the pool of backend pods. Valid policy names are
   828  <code>Random</code>, <code>RoundRobin</code>, <code>WeightedLeastRequest</code>, <code>Random</code>
   829  and <code>Cookie</code>. If an unknown strategy name is specified
   830  or no policy is supplied, the default <code>RoundRobin</code> policy
   831  is used.</p>
   832  </td>
   833  </tr>
   834  </tbody>
   835  </table>
   836  <h3 id="projectcontour.io/v1.PathRewritePolicy">PathRewritePolicy
   837  </h3>
   838  <p>
   839  (<em>Appears on:</em>
   840  <a href="#projectcontour.io/v1.Route">Route</a>)
   841  </p>
   842  <p>
   843  <p>PathRewritePolicy specifies how a request URL path should be
   844  rewritten. This rewriting takes place after a request is routed
   845  and has no subsequent effects on the proxy&rsquo;s routing decision.
   846  No HTTP headers or body content is rewritten.</p>
   847  <p>Exactly one field in this struct may be specified.</p>
   848  </p>
   849  <table class="table table-striped table-borderless" style="border:none">
   850  <thead class="border-bottom">
   851  <tr>
   852  <th>Field</th>
   853  <th>Description</th>
   854  </tr>
   855  </thead>
   856  <tbody class="border-top">
   857  <tr>
   858  <td style="white-space:nowrap">
   859  <code>replacePrefix</code>
   860  <br>
   861  <em>
   862  <a href="#projectcontour.io/v1.ReplacePrefix">
   863  []ReplacePrefix
   864  </a>
   865  </em>
   866  </td>
   867  <td>
   868  <em>(Optional)</em>
   869  <p>ReplacePrefix describes how the path prefix should be replaced.</p>
   870  </td>
   871  </tr>
   872  </tbody>
   873  </table>
   874  <h3 id="projectcontour.io/v1.ReplacePrefix">ReplacePrefix
   875  </h3>
   876  <p>
   877  (<em>Appears on:</em>
   878  <a href="#projectcontour.io/v1.PathRewritePolicy">PathRewritePolicy</a>)
   879  </p>
   880  <p>
   881  <p>ReplacePrefix describes a path prefix replacement.</p>
   882  </p>
   883  <table class="table table-striped table-borderless" style="border:none">
   884  <thead class="border-bottom">
   885  <tr>
   886  <th>Field</th>
   887  <th>Description</th>
   888  </tr>
   889  </thead>
   890  <tbody class="border-top">
   891  <tr>
   892  <td style="white-space:nowrap">
   893  <code>prefix</code>
   894  <br>
   895  <em>
   896  string
   897  </em>
   898  </td>
   899  <td>
   900  <em>(Optional)</em>
   901  <p>Prefix specifies the URL path prefix to be replaced.</p>
   902  <p>If Prefix is specified, it must exactly match the Condition
   903  prefix that is rendered by the chain of including HTTPProxies
   904  and only that path prefix will be replaced by Replacement.
   905  This allows HTTPProxies that are included through multiple
   906  roots to only replace specific path prefixes, leaving others
   907  unmodified.</p>
   908  <p>If Prefix is not specified, all routing prefixes rendered
   909  by the include chain will be replaced.</p>
   910  </td>
   911  </tr>
   912  <tr>
   913  <td style="white-space:nowrap">
   914  <code>replacement</code>
   915  <br>
   916  <em>
   917  string
   918  </em>
   919  </td>
   920  <td>
   921  <p>Replacement is the string that the routing path prefix
   922  will be replaced with. This must not be empty.</p>
   923  </td>
   924  </tr>
   925  </tbody>
   926  </table>
   927  <h3 id="projectcontour.io/v1.RetryPolicy">RetryPolicy
   928  </h3>
   929  <p>
   930  (<em>Appears on:</em>
   931  <a href="#projectcontour.io/v1.Route">Route</a>)
   932  </p>
   933  <p>
   934  <p>RetryPolicy defines the attributes associated with retrying policy.</p>
   935  </p>
   936  <table class="table table-striped table-borderless" style="border:none">
   937  <thead class="border-bottom">
   938  <tr>
   939  <th>Field</th>
   940  <th>Description</th>
   941  </tr>
   942  </thead>
   943  <tbody class="border-top">
   944  <tr>
   945  <td style="white-space:nowrap">
   946  <code>count</code>
   947  <br>
   948  <em>
   949  int64
   950  </em>
   951  </td>
   952  <td>
   953  <em>(Optional)</em>
   954  <p>NumRetries is maximum allowed number of retries.
   955  If not supplied, the number of retries is one.</p>
   956  </td>
   957  </tr>
   958  <tr>
   959  <td style="white-space:nowrap">
   960  <code>perTryTimeout</code>
   961  <br>
   962  <em>
   963  string
   964  </em>
   965  </td>
   966  <td>
   967  <p>PerTryTimeout specifies the timeout per retry attempt.
   968  Ignored if NumRetries is not supplied.</p>
   969  </td>
   970  </tr>
   971  </tbody>
   972  </table>
   973  <h3 id="projectcontour.io/v1.Route">Route
   974  </h3>
   975  <p>
   976  (<em>Appears on:</em>
   977  <a href="#projectcontour.io/v1.HTTPProxySpec">HTTPProxySpec</a>)
   978  </p>
   979  <p>
   980  <p>Route contains the set of routes for a virtual host.</p>
   981  </p>
   982  <table class="table table-striped table-borderless" style="border:none">
   983  <thead class="border-bottom">
   984  <tr>
   985  <th>Field</th>
   986  <th>Description</th>
   987  </tr>
   988  </thead>
   989  <tbody class="border-top">
   990  <tr>
   991  <td style="white-space:nowrap">
   992  <code>conditions</code>
   993  <br>
   994  <em>
   995  <a href="#projectcontour.io/v1.Condition">
   996  []Condition
   997  </a>
   998  </em>
   999  </td>
  1000  <td>
  1001  <em>(Optional)</em>
  1002  <p>Conditions are a set of routing properties that is applied to an HTTPProxy in a namespace.</p>
  1003  </td>
  1004  </tr>
  1005  <tr>
  1006  <td style="white-space:nowrap">
  1007  <code>services</code>
  1008  <br>
  1009  <em>
  1010  <a href="#projectcontour.io/v1.Service">
  1011  []Service
  1012  </a>
  1013  </em>
  1014  </td>
  1015  <td>
  1016  <p>Services are the services to proxy traffic.</p>
  1017  </td>
  1018  </tr>
  1019  <tr>
  1020  <td style="white-space:nowrap">
  1021  <code>enableWebsockets</code>
  1022  <br>
  1023  <em>
  1024  bool
  1025  </em>
  1026  </td>
  1027  <td>
  1028  <em>(Optional)</em>
  1029  <p>Enables websocket support for the route.</p>
  1030  </td>
  1031  </tr>
  1032  <tr>
  1033  <td style="white-space:nowrap">
  1034  <code>permitInsecure</code>
  1035  <br>
  1036  <em>
  1037  bool
  1038  </em>
  1039  </td>
  1040  <td>
  1041  <em>(Optional)</em>
  1042  <p>Allow this path to respond to insecure requests over HTTP which are normally
  1043  not permitted when a <code>virtualhost.tls</code> block is present.</p>
  1044  </td>
  1045  </tr>
  1046  <tr>
  1047  <td style="white-space:nowrap">
  1048  <code>timeoutPolicy</code>
  1049  <br>
  1050  <em>
  1051  <a href="#projectcontour.io/v1.TimeoutPolicy">
  1052  TimeoutPolicy
  1053  </a>
  1054  </em>
  1055  </td>
  1056  <td>
  1057  <em>(Optional)</em>
  1058  <p>The timeout policy for this route.</p>
  1059  </td>
  1060  </tr>
  1061  <tr>
  1062  <td style="white-space:nowrap">
  1063  <code>retryPolicy</code>
  1064  <br>
  1065  <em>
  1066  <a href="#projectcontour.io/v1.RetryPolicy">
  1067  RetryPolicy
  1068  </a>
  1069  </em>
  1070  </td>
  1071  <td>
  1072  <em>(Optional)</em>
  1073  <p>The retry policy for this route.</p>
  1074  </td>
  1075  </tr>
  1076  <tr>
  1077  <td style="white-space:nowrap">
  1078  <code>healthCheckPolicy</code>
  1079  <br>
  1080  <em>
  1081  <a href="#projectcontour.io/v1.HTTPHealthCheckPolicy">
  1082  HTTPHealthCheckPolicy
  1083  </a>
  1084  </em>
  1085  </td>
  1086  <td>
  1087  <em>(Optional)</em>
  1088  <p>The health check policy for this route.</p>
  1089  </td>
  1090  </tr>
  1091  <tr>
  1092  <td style="white-space:nowrap">
  1093  <code>loadBalancerPolicy</code>
  1094  <br>
  1095  <em>
  1096  <a href="#projectcontour.io/v1.LoadBalancerPolicy">
  1097  LoadBalancerPolicy
  1098  </a>
  1099  </em>
  1100  </td>
  1101  <td>
  1102  <em>(Optional)</em>
  1103  <p>The load balancing policy for this route.</p>
  1104  </td>
  1105  </tr>
  1106  <tr>
  1107  <td style="white-space:nowrap">
  1108  <code>pathRewritePolicy</code>
  1109  <br>
  1110  <em>
  1111  <a href="#projectcontour.io/v1.PathRewritePolicy">
  1112  PathRewritePolicy
  1113  </a>
  1114  </em>
  1115  </td>
  1116  <td>
  1117  <em>(Optional)</em>
  1118  <p>The policy for rewriting the path of the request URL
  1119  after the request has been routed to a Service.</p>
  1120  </td>
  1121  </tr>
  1122  <tr>
  1123  <td style="white-space:nowrap">
  1124  <code>requestHeadersPolicy</code>
  1125  <br>
  1126  <em>
  1127  <a href="#projectcontour.io/v1.HeadersPolicy">
  1128  HeadersPolicy
  1129  </a>
  1130  </em>
  1131  </td>
  1132  <td>
  1133  <em>(Optional)</em>
  1134  <p>The policy for managing request headers during proxying</p>
  1135  </td>
  1136  </tr>
  1137  <tr>
  1138  <td style="white-space:nowrap">
  1139  <code>responseHeadersPolicy</code>
  1140  <br>
  1141  <em>
  1142  <a href="#projectcontour.io/v1.HeadersPolicy">
  1143  HeadersPolicy
  1144  </a>
  1145  </em>
  1146  </td>
  1147  <td>
  1148  <em>(Optional)</em>
  1149  <p>The policy for managing response headers during proxying</p>
  1150  </td>
  1151  </tr>
  1152  </tbody>
  1153  </table>
  1154  <h3 id="projectcontour.io/v1.Service">Service
  1155  </h3>
  1156  <p>
  1157  (<em>Appears on:</em>
  1158  <a href="#projectcontour.io/v1.Route">Route</a>, 
  1159  <a href="#projectcontour.io/v1.TCPProxy">TCPProxy</a>)
  1160  </p>
  1161  <p>
  1162  <p>Service defines an Kubernetes Service to proxy traffic.</p>
  1163  </p>
  1164  <table class="table table-striped table-borderless" style="border:none">
  1165  <thead class="border-bottom">
  1166  <tr>
  1167  <th>Field</th>
  1168  <th>Description</th>
  1169  </tr>
  1170  </thead>
  1171  <tbody class="border-top">
  1172  <tr>
  1173  <td style="white-space:nowrap">
  1174  <code>name</code>
  1175  <br>
  1176  <em>
  1177  string
  1178  </em>
  1179  </td>
  1180  <td>
  1181  <p>Name is the name of Kubernetes service to proxy traffic.
  1182  Names defined here will be used to look up corresponding endpoints which contain the ips to route.</p>
  1183  </td>
  1184  </tr>
  1185  <tr>
  1186  <td style="white-space:nowrap">
  1187  <code>port</code>
  1188  <br>
  1189  <em>
  1190  int
  1191  </em>
  1192  </td>
  1193  <td>
  1194  <p>Port (defined as Integer) to proxy traffic to since a service can have multiple defined.</p>
  1195  </td>
  1196  </tr>
  1197  <tr>
  1198  <td style="white-space:nowrap">
  1199  <code>protocol</code>
  1200  <br>
  1201  <em>
  1202  string
  1203  </em>
  1204  </td>
  1205  <td>
  1206  <em>(Optional)</em>
  1207  <p>Protocol may be used to specify (or override) the protocol used to reach this Service.
  1208  Values may be tls, h2, h2c. If omitted, protocol-selection falls back on Service annotations.</p>
  1209  </td>
  1210  </tr>
  1211  <tr>
  1212  <td style="white-space:nowrap">
  1213  <code>weight</code>
  1214  <br>
  1215  <em>
  1216  int64
  1217  </em>
  1218  </td>
  1219  <td>
  1220  <em>(Optional)</em>
  1221  <p>Weight defines percentage of traffic to balance traffic</p>
  1222  </td>
  1223  </tr>
  1224  <tr>
  1225  <td style="white-space:nowrap">
  1226  <code>validation</code>
  1227  <br>
  1228  <em>
  1229  <a href="#projectcontour.io/v1.UpstreamValidation">
  1230  UpstreamValidation
  1231  </a>
  1232  </em>
  1233  </td>
  1234  <td>
  1235  <em>(Optional)</em>
  1236  <p>UpstreamValidation defines how to verify the backend service&rsquo;s certificate</p>
  1237  </td>
  1238  </tr>
  1239  <tr>
  1240  <td style="white-space:nowrap">
  1241  <code>mirror</code>
  1242  <br>
  1243  <em>
  1244  bool
  1245  </em>
  1246  </td>
  1247  <td>
  1248  <p>If Mirror is true the Service will receive a read only mirror of the traffic for this route.</p>
  1249  </td>
  1250  </tr>
  1251  <tr>
  1252  <td style="white-space:nowrap">
  1253  <code>requestHeadersPolicy</code>
  1254  <br>
  1255  <em>
  1256  <a href="#projectcontour.io/v1.HeadersPolicy">
  1257  HeadersPolicy
  1258  </a>
  1259  </em>
  1260  </td>
  1261  <td>
  1262  <em>(Optional)</em>
  1263  <p>The policy for managing request headers during proxying</p>
  1264  </td>
  1265  </tr>
  1266  <tr>
  1267  <td style="white-space:nowrap">
  1268  <code>responseHeadersPolicy</code>
  1269  <br>
  1270  <em>
  1271  <a href="#projectcontour.io/v1.HeadersPolicy">
  1272  HeadersPolicy
  1273  </a>
  1274  </em>
  1275  </td>
  1276  <td>
  1277  <em>(Optional)</em>
  1278  <p>The policy for managing response headers during proxying</p>
  1279  </td>
  1280  </tr>
  1281  </tbody>
  1282  </table>
  1283  <h3 id="projectcontour.io/v1.Status">Status
  1284  </h3>
  1285  <p>
  1286  (<em>Appears on:</em>
  1287  <a href="#projectcontour.io/v1.HTTPProxy">HTTPProxy</a>)
  1288  </p>
  1289  <p>
  1290  <p>Status reports the current state of the HTTPProxy.</p>
  1291  </p>
  1292  <table class="table table-striped table-borderless" style="border:none">
  1293  <thead class="border-bottom">
  1294  <tr>
  1295  <th>Field</th>
  1296  <th>Description</th>
  1297  </tr>
  1298  </thead>
  1299  <tbody class="border-top">
  1300  <tr>
  1301  <td style="white-space:nowrap">
  1302  <code>currentStatus</code>
  1303  <br>
  1304  <em>
  1305  string
  1306  </em>
  1307  </td>
  1308  <td>
  1309  <em>(Optional)</em>
  1310  </td>
  1311  </tr>
  1312  <tr>
  1313  <td style="white-space:nowrap">
  1314  <code>description</code>
  1315  <br>
  1316  <em>
  1317  string
  1318  </em>
  1319  </td>
  1320  <td>
  1321  <em>(Optional)</em>
  1322  </td>
  1323  </tr>
  1324  </tbody>
  1325  </table>
  1326  <h3 id="projectcontour.io/v1.TCPHealthCheckPolicy">TCPHealthCheckPolicy
  1327  </h3>
  1328  <p>
  1329  (<em>Appears on:</em>
  1330  <a href="#projectcontour.io/v1.TCPProxy">TCPProxy</a>)
  1331  </p>
  1332  <p>
  1333  <p>TCPHealthCheckPolicy defines health checks on the upstream service.</p>
  1334  </p>
  1335  <table class="table table-striped table-borderless" style="border:none">
  1336  <thead class="border-bottom">
  1337  <tr>
  1338  <th>Field</th>
  1339  <th>Description</th>
  1340  </tr>
  1341  </thead>
  1342  <tbody class="border-top">
  1343  <tr>
  1344  <td style="white-space:nowrap">
  1345  <code>intervalSeconds</code>
  1346  <br>
  1347  <em>
  1348  int64
  1349  </em>
  1350  </td>
  1351  <td>
  1352  <em>(Optional)</em>
  1353  <p>The interval (seconds) between health checks</p>
  1354  </td>
  1355  </tr>
  1356  <tr>
  1357  <td style="white-space:nowrap">
  1358  <code>timeoutSeconds</code>
  1359  <br>
  1360  <em>
  1361  int64
  1362  </em>
  1363  </td>
  1364  <td>
  1365  <em>(Optional)</em>
  1366  <p>The time to wait (seconds) for a health check response</p>
  1367  </td>
  1368  </tr>
  1369  <tr>
  1370  <td style="white-space:nowrap">
  1371  <code>unhealthyThresholdCount</code>
  1372  <br>
  1373  <em>
  1374  uint32
  1375  </em>
  1376  </td>
  1377  <td>
  1378  <em>(Optional)</em>
  1379  <p>The number of unhealthy health checks required before a host is marked unhealthy</p>
  1380  </td>
  1381  </tr>
  1382  <tr>
  1383  <td style="white-space:nowrap">
  1384  <code>healthyThresholdCount</code>
  1385  <br>
  1386  <em>
  1387  uint32
  1388  </em>
  1389  </td>
  1390  <td>
  1391  <em>(Optional)</em>
  1392  <p>The number of healthy health checks required before a host is marked healthy</p>
  1393  </td>
  1394  </tr>
  1395  </tbody>
  1396  </table>
  1397  <h3 id="projectcontour.io/v1.TCPProxy">TCPProxy
  1398  </h3>
  1399  <p>
  1400  (<em>Appears on:</em>
  1401  <a href="#projectcontour.io/v1.HTTPProxySpec">HTTPProxySpec</a>)
  1402  </p>
  1403  <p>
  1404  <p>TCPProxy contains the set of services to proxy TCP connections.</p>
  1405  </p>
  1406  <table class="table table-striped table-borderless" style="border:none">
  1407  <thead class="border-bottom">
  1408  <tr>
  1409  <th>Field</th>
  1410  <th>Description</th>
  1411  </tr>
  1412  </thead>
  1413  <tbody class="border-top">
  1414  <tr>
  1415  <td style="white-space:nowrap">
  1416  <code>loadBalancerPolicy</code>
  1417  <br>
  1418  <em>
  1419  <a href="#projectcontour.io/v1.LoadBalancerPolicy">
  1420  LoadBalancerPolicy
  1421  </a>
  1422  </em>
  1423  </td>
  1424  <td>
  1425  <em>(Optional)</em>
  1426  <p>The load balancing policy for the backend services.</p>
  1427  </td>
  1428  </tr>
  1429  <tr>
  1430  <td style="white-space:nowrap">
  1431  <code>services</code>
  1432  <br>
  1433  <em>
  1434  <a href="#projectcontour.io/v1.Service">
  1435  []Service
  1436  </a>
  1437  </em>
  1438  </td>
  1439  <td>
  1440  <p>Services are the services to proxy traffic</p>
  1441  </td>
  1442  </tr>
  1443  <tr>
  1444  <td style="white-space:nowrap">
  1445  <code>include</code>
  1446  <br>
  1447  <em>
  1448  <a href="#projectcontour.io/v1.TCPProxyInclude">
  1449  TCPProxyInclude
  1450  </a>
  1451  </em>
  1452  </td>
  1453  <td>
  1454  <em>(Optional)</em>
  1455  <p>Include specifies that this tcpproxy should be delegated to another HTTPProxy.</p>
  1456  </td>
  1457  </tr>
  1458  <tr>
  1459  <td style="white-space:nowrap">
  1460  <code>includes</code>
  1461  <br>
  1462  <em>
  1463  <a href="#projectcontour.io/v1.TCPProxyInclude">
  1464  TCPProxyInclude
  1465  </a>
  1466  </em>
  1467  </td>
  1468  <td>
  1469  <em>(Optional)</em>
  1470  <p>IncludesDeprecated allow for specific routing configuration to be appended to another HTTPProxy in another namespace.</p>
  1471  <p>Exists due to a mistake when developing HTTPProxy and the field was marked plural
  1472  when it should have been singular. This field should stay to not break backwards compatibility to v1 users.</p>
  1473  </td>
  1474  </tr>
  1475  <tr>
  1476  <td style="white-space:nowrap">
  1477  <code>healthCheckPolicy</code>
  1478  <br>
  1479  <em>
  1480  <a href="#projectcontour.io/v1.TCPHealthCheckPolicy">
  1481  TCPHealthCheckPolicy
  1482  </a>
  1483  </em>
  1484  </td>
  1485  <td>
  1486  <em>(Optional)</em>
  1487  <p>The health check policy for this tcp proxy</p>
  1488  </td>
  1489  </tr>
  1490  </tbody>
  1491  </table>
  1492  <h3 id="projectcontour.io/v1.TCPProxyInclude">TCPProxyInclude
  1493  </h3>
  1494  <p>
  1495  (<em>Appears on:</em>
  1496  <a href="#projectcontour.io/v1.TCPProxy">TCPProxy</a>)
  1497  </p>
  1498  <p>
  1499  <p>TCPProxyInclude describes a target HTTPProxy document which contains the TCPProxy details.</p>
  1500  </p>
  1501  <table class="table table-striped table-borderless" style="border:none">
  1502  <thead class="border-bottom">
  1503  <tr>
  1504  <th>Field</th>
  1505  <th>Description</th>
  1506  </tr>
  1507  </thead>
  1508  <tbody class="border-top">
  1509  <tr>
  1510  <td style="white-space:nowrap">
  1511  <code>name</code>
  1512  <br>
  1513  <em>
  1514  string
  1515  </em>
  1516  </td>
  1517  <td>
  1518  <p>Name of the child HTTPProxy</p>
  1519  </td>
  1520  </tr>
  1521  <tr>
  1522  <td style="white-space:nowrap">
  1523  <code>namespace</code>
  1524  <br>
  1525  <em>
  1526  string
  1527  </em>
  1528  </td>
  1529  <td>
  1530  <em>(Optional)</em>
  1531  <p>Namespace of the HTTPProxy to include. Defaults to the current namespace if not supplied.</p>
  1532  </td>
  1533  </tr>
  1534  </tbody>
  1535  </table>
  1536  <h3 id="projectcontour.io/v1.TLS">TLS
  1537  </h3>
  1538  <p>
  1539  (<em>Appears on:</em>
  1540  <a href="#projectcontour.io/v1.VirtualHost">VirtualHost</a>)
  1541  </p>
  1542  <p>
  1543  <p>TLS describes tls properties. The SNI names that will be matched on
  1544  are described in fqdn, the tls.secretName secret must contain a
  1545  matching certificate unless tls.passthrough is set to true.</p>
  1546  </p>
  1547  <table class="table table-striped table-borderless" style="border:none">
  1548  <thead class="border-bottom">
  1549  <tr>
  1550  <th>Field</th>
  1551  <th>Description</th>
  1552  </tr>
  1553  </thead>
  1554  <tbody class="border-top">
  1555  <tr>
  1556  <td style="white-space:nowrap">
  1557  <code>secretName</code>
  1558  <br>
  1559  <em>
  1560  string
  1561  </em>
  1562  </td>
  1563  <td>
  1564  <p>required, the name of a secret in the current namespace</p>
  1565  </td>
  1566  </tr>
  1567  <tr>
  1568  <td style="white-space:nowrap">
  1569  <code>minimumProtocolVersion</code>
  1570  <br>
  1571  <em>
  1572  string
  1573  </em>
  1574  </td>
  1575  <td>
  1576  <em>(Optional)</em>
  1577  <p>Minimum TLS version this vhost should negotiate</p>
  1578  </td>
  1579  </tr>
  1580  <tr>
  1581  <td style="white-space:nowrap">
  1582  <code>passthrough</code>
  1583  <br>
  1584  <em>
  1585  bool
  1586  </em>
  1587  </td>
  1588  <td>
  1589  <em>(Optional)</em>
  1590  <p>If Passthrough is set to true, the SecretName will be ignored
  1591  and the encrypted handshake will be passed through to the
  1592  backing cluster.</p>
  1593  </td>
  1594  </tr>
  1595  <tr>
  1596  <td style="white-space:nowrap">
  1597  <code>clientValidation</code>
  1598  <br>
  1599  <em>
  1600  <a href="#projectcontour.io/v1.DownstreamValidation">
  1601  DownstreamValidation
  1602  </a>
  1603  </em>
  1604  </td>
  1605  <td>
  1606  <em>(Optional)</em>
  1607  <p>ClientValidation defines how to verify the client certificate
  1608  when an external client establishes a TLS connection to Envoy.
  1609  This setting:
  1610  1. Enables TLS client certificate validation.
  1611  2. Requires clients to present a TLS certificate (i.e. not optional validation).
  1612  3. Specifies how the client certificate will be validated.</p>
  1613  </td>
  1614  </tr>
  1615  </tbody>
  1616  </table>
  1617  <h3 id="projectcontour.io/v1.TLSCertificateDelegationSpec">TLSCertificateDelegationSpec
  1618  </h3>
  1619  <p>
  1620  (<em>Appears on:</em>
  1621  <a href="#projectcontour.io/v1.TLSCertificateDelegation">TLSCertificateDelegation</a>)
  1622  </p>
  1623  <p>
  1624  <p>TLSCertificateDelegationSpec defines the spec of the CRD</p>
  1625  </p>
  1626  <table class="table table-striped table-borderless" style="border:none">
  1627  <thead class="border-bottom">
  1628  <tr>
  1629  <th>Field</th>
  1630  <th>Description</th>
  1631  </tr>
  1632  </thead>
  1633  <tbody class="border-top">
  1634  <tr>
  1635  <td style="white-space:nowrap">
  1636  <code>delegations</code>
  1637  <br>
  1638  <em>
  1639  <a href="#projectcontour.io/v1.CertificateDelegation">
  1640  []CertificateDelegation
  1641  </a>
  1642  </em>
  1643  </td>
  1644  <td>
  1645  </td>
  1646  </tr>
  1647  </tbody>
  1648  </table>
  1649  <h3 id="projectcontour.io/v1.TimeoutPolicy">TimeoutPolicy
  1650  </h3>
  1651  <p>
  1652  (<em>Appears on:</em>
  1653  <a href="#projectcontour.io/v1.Route">Route</a>)
  1654  </p>
  1655  <p>
  1656  <p>TimeoutPolicy defines the attributes associated with timeout.</p>
  1657  </p>
  1658  <table class="table table-striped table-borderless" style="border:none">
  1659  <thead class="border-bottom">
  1660  <tr>
  1661  <th>Field</th>
  1662  <th>Description</th>
  1663  </tr>
  1664  </thead>
  1665  <tbody class="border-top">
  1666  <tr>
  1667  <td style="white-space:nowrap">
  1668  <code>response</code>
  1669  <br>
  1670  <em>
  1671  string
  1672  </em>
  1673  </td>
  1674  <td>
  1675  <em>(Optional)</em>
  1676  <p>Timeout for receiving a response from the server after processing a request from client.
  1677  If not supplied the timeout duration is undefined.</p>
  1678  </td>
  1679  </tr>
  1680  <tr>
  1681  <td style="white-space:nowrap">
  1682  <code>idle</code>
  1683  <br>
  1684  <em>
  1685  string
  1686  </em>
  1687  </td>
  1688  <td>
  1689  <em>(Optional)</em>
  1690  <p>Timeout after which if there are no active requests for this route, the connection between
  1691  Envoy and the backend will be closed. If not specified, there is no per-route idle timeout.</p>
  1692  </td>
  1693  </tr>
  1694  </tbody>
  1695  </table>
  1696  <h3 id="projectcontour.io/v1.UpstreamValidation">UpstreamValidation
  1697  </h3>
  1698  <p>
  1699  (<em>Appears on:</em>
  1700  <a href="#projectcontour.io/v1.Service">Service</a>)
  1701  </p>
  1702  <p>
  1703  <p>UpstreamValidation defines how to verify the backend service&rsquo;s certificate</p>
  1704  </p>
  1705  <table class="table table-striped table-borderless" style="border:none">
  1706  <thead class="border-bottom">
  1707  <tr>
  1708  <th>Field</th>
  1709  <th>Description</th>
  1710  </tr>
  1711  </thead>
  1712  <tbody class="border-top">
  1713  <tr>
  1714  <td style="white-space:nowrap">
  1715  <code>caSecret</code>
  1716  <br>
  1717  <em>
  1718  string
  1719  </em>
  1720  </td>
  1721  <td>
  1722  <p>Name of the Kubernetes secret be used to validate the certificate presented by the backend</p>
  1723  </td>
  1724  </tr>
  1725  <tr>
  1726  <td style="white-space:nowrap">
  1727  <code>subjectName</code>
  1728  <br>
  1729  <em>
  1730  string
  1731  </em>
  1732  </td>
  1733  <td>
  1734  <p>Key which is expected to be present in the &lsquo;subjectAltName&rsquo; of the presented certificate</p>
  1735  </td>
  1736  </tr>
  1737  </tbody>
  1738  </table>
  1739  <h3 id="projectcontour.io/v1.VirtualHost">VirtualHost
  1740  </h3>
  1741  <p>
  1742  (<em>Appears on:</em>
  1743  <a href="#projectcontour.io/v1.HTTPProxySpec">HTTPProxySpec</a>)
  1744  </p>
  1745  <p>
  1746  <p>VirtualHost appears at most once. If it is present, the object is considered
  1747  to be a &ldquo;root&rdquo;.</p>
  1748  </p>
  1749  <table class="table table-striped table-borderless" style="border:none">
  1750  <thead class="border-bottom">
  1751  <tr>
  1752  <th>Field</th>
  1753  <th>Description</th>
  1754  </tr>
  1755  </thead>
  1756  <tbody class="border-top">
  1757  <tr>
  1758  <td style="white-space:nowrap">
  1759  <code>fqdn</code>
  1760  <br>
  1761  <em>
  1762  string
  1763  </em>
  1764  </td>
  1765  <td>
  1766  <p>The fully qualified domain name of the root of the ingress tree
  1767  all leaves of the DAG rooted at this object relate to the fqdn</p>
  1768  </td>
  1769  </tr>
  1770  <tr>
  1771  <td style="white-space:nowrap">
  1772  <code>tls</code>
  1773  <br>
  1774  <em>
  1775  <a href="#projectcontour.io/v1.TLS">
  1776  TLS
  1777  </a>
  1778  </em>
  1779  </td>
  1780  <td>
  1781  <em>(Optional)</em>
  1782  <p>If present describes tls properties. The SNI names that will be matched on
  1783  are described in fqdn, the tls.secretName secret must contain a
  1784  matching certificate</p>
  1785  </td>
  1786  </tr>
  1787  </tbody>
  1788  </table>
  1789  <hr/>
  1790  <p><em>
  1791  Generated with <code>gen-crd-api-reference-docs</code>.
  1792  </em></p>