github.com/projectcontour/contour@v1.28.2/site/content/docs/v1.6.1/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.
   701  The <code>Host</code> header is treated specially and if set in a HTTP response
   702  will be used as the SNI server name when forwarding over TLS. It is an
   703  error to attempt to set the <code>Host</code> header in a HTTP response.</p>
   704  </p>
   705  <table class="table table-striped table-borderless" style="border:none">
   706  <thead class="border-bottom">
   707  <tr>
   708  <th>Field</th>
   709  <th>Description</th>
   710  </tr>
   711  </thead>
   712  <tbody class="border-top">
   713  <tr>
   714  <td style="white-space:nowrap">
   715  <code>set</code>
   716  <br>
   717  <em>
   718  <a href="#projectcontour.io/v1.HeaderValue">
   719  []HeaderValue
   720  </a>
   721  </em>
   722  </td>
   723  <td>
   724  <em>(Optional)</em>
   725  <p>Set specifies a list of HTTP header values that will be set in the HTTP header.
   726  If the header does not exist it will be added, otherwise it will be overwritten with the new value.</p>
   727  </td>
   728  </tr>
   729  <tr>
   730  <td style="white-space:nowrap">
   731  <code>remove</code>
   732  <br>
   733  <em>
   734  []string
   735  </em>
   736  </td>
   737  <td>
   738  <em>(Optional)</em>
   739  <p>Remove specifies a list of HTTP header names to remove.</p>
   740  </td>
   741  </tr>
   742  </tbody>
   743  </table>
   744  <h3 id="projectcontour.io/v1.Include">Include
   745  </h3>
   746  <p>
   747  (<em>Appears on:</em>
   748  <a href="#projectcontour.io/v1.HTTPProxySpec">HTTPProxySpec</a>)
   749  </p>
   750  <p>
   751  <p>Include describes a set of policies that can be applied to an HTTPProxy in a namespace.</p>
   752  </p>
   753  <table class="table table-striped table-borderless" style="border:none">
   754  <thead class="border-bottom">
   755  <tr>
   756  <th>Field</th>
   757  <th>Description</th>
   758  </tr>
   759  </thead>
   760  <tbody class="border-top">
   761  <tr>
   762  <td style="white-space:nowrap">
   763  <code>name</code>
   764  <br>
   765  <em>
   766  string
   767  </em>
   768  </td>
   769  <td>
   770  <p>Name of the HTTPProxy</p>
   771  </td>
   772  </tr>
   773  <tr>
   774  <td style="white-space:nowrap">
   775  <code>namespace</code>
   776  <br>
   777  <em>
   778  string
   779  </em>
   780  </td>
   781  <td>
   782  <em>(Optional)</em>
   783  <p>Namespace of the HTTPProxy to include. Defaults to the current namespace if not supplied.</p>
   784  </td>
   785  </tr>
   786  <tr>
   787  <td style="white-space:nowrap">
   788  <code>conditions</code>
   789  <br>
   790  <em>
   791  <a href="#projectcontour.io/v1.Condition">
   792  []Condition
   793  </a>
   794  </em>
   795  </td>
   796  <td>
   797  <em>(Optional)</em>
   798  <p>Conditions are a set of routing properties that is applied to an HTTPProxy in a namespace.</p>
   799  </td>
   800  </tr>
   801  </tbody>
   802  </table>
   803  <h3 id="projectcontour.io/v1.LoadBalancerPolicy">LoadBalancerPolicy
   804  </h3>
   805  <p>
   806  (<em>Appears on:</em>
   807  <a href="#projectcontour.io/v1.Route">Route</a>, 
   808  <a href="#projectcontour.io/v1.TCPProxy">TCPProxy</a>)
   809  </p>
   810  <p>
   811  <p>LoadBalancerPolicy defines the load balancing policy.</p>
   812  </p>
   813  <table class="table table-striped table-borderless" style="border:none">
   814  <thead class="border-bottom">
   815  <tr>
   816  <th>Field</th>
   817  <th>Description</th>
   818  </tr>
   819  </thead>
   820  <tbody class="border-top">
   821  <tr>
   822  <td style="white-space:nowrap">
   823  <code>strategy</code>
   824  <br>
   825  <em>
   826  string
   827  </em>
   828  </td>
   829  <td>
   830  <p>Strategy specifies the policy used to balance requests
   831  across the pool of backend pods. Valid policy names are
   832  <code>Random</code>, <code>RoundRobin</code>, <code>WeightedLeastRequest</code>, <code>Random</code>
   833  and <code>Cookie</code>. If an unknown strategy name is specified
   834  or no policy is supplied, the default <code>RoundRobin</code> policy
   835  is used.</p>
   836  </td>
   837  </tr>
   838  </tbody>
   839  </table>
   840  <h3 id="projectcontour.io/v1.PathRewritePolicy">PathRewritePolicy
   841  </h3>
   842  <p>
   843  (<em>Appears on:</em>
   844  <a href="#projectcontour.io/v1.Route">Route</a>)
   845  </p>
   846  <p>
   847  <p>PathRewritePolicy specifies how a request URL path should be
   848  rewritten. This rewriting takes place after a request is routed
   849  and has no subsequent effects on the proxy&rsquo;s routing decision.
   850  No HTTP headers or body content is rewritten.</p>
   851  <p>Exactly one field in this struct may be specified.</p>
   852  </p>
   853  <table class="table table-striped table-borderless" style="border:none">
   854  <thead class="border-bottom">
   855  <tr>
   856  <th>Field</th>
   857  <th>Description</th>
   858  </tr>
   859  </thead>
   860  <tbody class="border-top">
   861  <tr>
   862  <td style="white-space:nowrap">
   863  <code>replacePrefix</code>
   864  <br>
   865  <em>
   866  <a href="#projectcontour.io/v1.ReplacePrefix">
   867  []ReplacePrefix
   868  </a>
   869  </em>
   870  </td>
   871  <td>
   872  <em>(Optional)</em>
   873  <p>ReplacePrefix describes how the path prefix should be replaced.</p>
   874  </td>
   875  </tr>
   876  </tbody>
   877  </table>
   878  <h3 id="projectcontour.io/v1.ReplacePrefix">ReplacePrefix
   879  </h3>
   880  <p>
   881  (<em>Appears on:</em>
   882  <a href="#projectcontour.io/v1.PathRewritePolicy">PathRewritePolicy</a>)
   883  </p>
   884  <p>
   885  <p>ReplacePrefix describes a path prefix replacement.</p>
   886  </p>
   887  <table class="table table-striped table-borderless" style="border:none">
   888  <thead class="border-bottom">
   889  <tr>
   890  <th>Field</th>
   891  <th>Description</th>
   892  </tr>
   893  </thead>
   894  <tbody class="border-top">
   895  <tr>
   896  <td style="white-space:nowrap">
   897  <code>prefix</code>
   898  <br>
   899  <em>
   900  string
   901  </em>
   902  </td>
   903  <td>
   904  <em>(Optional)</em>
   905  <p>Prefix specifies the URL path prefix to be replaced.</p>
   906  <p>If Prefix is specified, it must exactly match the Condition
   907  prefix that is rendered by the chain of including HTTPProxies
   908  and only that path prefix will be replaced by Replacement.
   909  This allows HTTPProxies that are included through multiple
   910  roots to only replace specific path prefixes, leaving others
   911  unmodified.</p>
   912  <p>If Prefix is not specified, all routing prefixes rendered
   913  by the include chain will be replaced.</p>
   914  </td>
   915  </tr>
   916  <tr>
   917  <td style="white-space:nowrap">
   918  <code>replacement</code>
   919  <br>
   920  <em>
   921  string
   922  </em>
   923  </td>
   924  <td>
   925  <p>Replacement is the string that the routing path prefix
   926  will be replaced with. This must not be empty.</p>
   927  </td>
   928  </tr>
   929  </tbody>
   930  </table>
   931  <h3 id="projectcontour.io/v1.RetryPolicy">RetryPolicy
   932  </h3>
   933  <p>
   934  (<em>Appears on:</em>
   935  <a href="#projectcontour.io/v1.Route">Route</a>)
   936  </p>
   937  <p>
   938  <p>RetryPolicy defines the attributes associated with retrying policy.</p>
   939  </p>
   940  <table class="table table-striped table-borderless" style="border:none">
   941  <thead class="border-bottom">
   942  <tr>
   943  <th>Field</th>
   944  <th>Description</th>
   945  </tr>
   946  </thead>
   947  <tbody class="border-top">
   948  <tr>
   949  <td style="white-space:nowrap">
   950  <code>count</code>
   951  <br>
   952  <em>
   953  int64
   954  </em>
   955  </td>
   956  <td>
   957  <em>(Optional)</em>
   958  <p>NumRetries is maximum allowed number of retries.
   959  If not supplied, the number of retries is one.</p>
   960  </td>
   961  </tr>
   962  <tr>
   963  <td style="white-space:nowrap">
   964  <code>perTryTimeout</code>
   965  <br>
   966  <em>
   967  string
   968  </em>
   969  </td>
   970  <td>
   971  <p>PerTryTimeout specifies the timeout per retry attempt.
   972  Ignored if NumRetries is not supplied.</p>
   973  </td>
   974  </tr>
   975  </tbody>
   976  </table>
   977  <h3 id="projectcontour.io/v1.Route">Route
   978  </h3>
   979  <p>
   980  (<em>Appears on:</em>
   981  <a href="#projectcontour.io/v1.HTTPProxySpec">HTTPProxySpec</a>)
   982  </p>
   983  <p>
   984  <p>Route contains the set of routes for a virtual host.</p>
   985  </p>
   986  <table class="table table-striped table-borderless" style="border:none">
   987  <thead class="border-bottom">
   988  <tr>
   989  <th>Field</th>
   990  <th>Description</th>
   991  </tr>
   992  </thead>
   993  <tbody class="border-top">
   994  <tr>
   995  <td style="white-space:nowrap">
   996  <code>conditions</code>
   997  <br>
   998  <em>
   999  <a href="#projectcontour.io/v1.Condition">
  1000  []Condition
  1001  </a>
  1002  </em>
  1003  </td>
  1004  <td>
  1005  <em>(Optional)</em>
  1006  <p>Conditions are a set of routing properties that is applied to an HTTPProxy in a namespace.</p>
  1007  </td>
  1008  </tr>
  1009  <tr>
  1010  <td style="white-space:nowrap">
  1011  <code>services</code>
  1012  <br>
  1013  <em>
  1014  <a href="#projectcontour.io/v1.Service">
  1015  []Service
  1016  </a>
  1017  </em>
  1018  </td>
  1019  <td>
  1020  <p>Services are the services to proxy traffic.</p>
  1021  </td>
  1022  </tr>
  1023  <tr>
  1024  <td style="white-space:nowrap">
  1025  <code>enableWebsockets</code>
  1026  <br>
  1027  <em>
  1028  bool
  1029  </em>
  1030  </td>
  1031  <td>
  1032  <em>(Optional)</em>
  1033  <p>Enables websocket support for the route.</p>
  1034  </td>
  1035  </tr>
  1036  <tr>
  1037  <td style="white-space:nowrap">
  1038  <code>permitInsecure</code>
  1039  <br>
  1040  <em>
  1041  bool
  1042  </em>
  1043  </td>
  1044  <td>
  1045  <em>(Optional)</em>
  1046  <p>Allow this path to respond to insecure requests over HTTP which are normally
  1047  not permitted when a <code>virtualhost.tls</code> block is present.</p>
  1048  </td>
  1049  </tr>
  1050  <tr>
  1051  <td style="white-space:nowrap">
  1052  <code>timeoutPolicy</code>
  1053  <br>
  1054  <em>
  1055  <a href="#projectcontour.io/v1.TimeoutPolicy">
  1056  TimeoutPolicy
  1057  </a>
  1058  </em>
  1059  </td>
  1060  <td>
  1061  <em>(Optional)</em>
  1062  <p>The timeout policy for this route.</p>
  1063  </td>
  1064  </tr>
  1065  <tr>
  1066  <td style="white-space:nowrap">
  1067  <code>retryPolicy</code>
  1068  <br>
  1069  <em>
  1070  <a href="#projectcontour.io/v1.RetryPolicy">
  1071  RetryPolicy
  1072  </a>
  1073  </em>
  1074  </td>
  1075  <td>
  1076  <em>(Optional)</em>
  1077  <p>The retry policy for this route.</p>
  1078  </td>
  1079  </tr>
  1080  <tr>
  1081  <td style="white-space:nowrap">
  1082  <code>healthCheckPolicy</code>
  1083  <br>
  1084  <em>
  1085  <a href="#projectcontour.io/v1.HTTPHealthCheckPolicy">
  1086  HTTPHealthCheckPolicy
  1087  </a>
  1088  </em>
  1089  </td>
  1090  <td>
  1091  <em>(Optional)</em>
  1092  <p>The health check policy for this route.</p>
  1093  </td>
  1094  </tr>
  1095  <tr>
  1096  <td style="white-space:nowrap">
  1097  <code>loadBalancerPolicy</code>
  1098  <br>
  1099  <em>
  1100  <a href="#projectcontour.io/v1.LoadBalancerPolicy">
  1101  LoadBalancerPolicy
  1102  </a>
  1103  </em>
  1104  </td>
  1105  <td>
  1106  <em>(Optional)</em>
  1107  <p>The load balancing policy for this route.</p>
  1108  </td>
  1109  </tr>
  1110  <tr>
  1111  <td style="white-space:nowrap">
  1112  <code>pathRewritePolicy</code>
  1113  <br>
  1114  <em>
  1115  <a href="#projectcontour.io/v1.PathRewritePolicy">
  1116  PathRewritePolicy
  1117  </a>
  1118  </em>
  1119  </td>
  1120  <td>
  1121  <em>(Optional)</em>
  1122  <p>The policy for rewriting the path of the request URL
  1123  after the request has been routed to a Service.</p>
  1124  </td>
  1125  </tr>
  1126  <tr>
  1127  <td style="white-space:nowrap">
  1128  <code>requestHeadersPolicy</code>
  1129  <br>
  1130  <em>
  1131  <a href="#projectcontour.io/v1.HeadersPolicy">
  1132  HeadersPolicy
  1133  </a>
  1134  </em>
  1135  </td>
  1136  <td>
  1137  <em>(Optional)</em>
  1138  <p>The policy for managing request headers during proxying</p>
  1139  </td>
  1140  </tr>
  1141  <tr>
  1142  <td style="white-space:nowrap">
  1143  <code>responseHeadersPolicy</code>
  1144  <br>
  1145  <em>
  1146  <a href="#projectcontour.io/v1.HeadersPolicy">
  1147  HeadersPolicy
  1148  </a>
  1149  </em>
  1150  </td>
  1151  <td>
  1152  <em>(Optional)</em>
  1153  <p>The policy for managing response headers during proxying</p>
  1154  </td>
  1155  </tr>
  1156  </tbody>
  1157  </table>
  1158  <h3 id="projectcontour.io/v1.Service">Service
  1159  </h3>
  1160  <p>
  1161  (<em>Appears on:</em>
  1162  <a href="#projectcontour.io/v1.Route">Route</a>, 
  1163  <a href="#projectcontour.io/v1.TCPProxy">TCPProxy</a>)
  1164  </p>
  1165  <p>
  1166  <p>Service defines an Kubernetes Service to proxy traffic.</p>
  1167  </p>
  1168  <table class="table table-striped table-borderless" style="border:none">
  1169  <thead class="border-bottom">
  1170  <tr>
  1171  <th>Field</th>
  1172  <th>Description</th>
  1173  </tr>
  1174  </thead>
  1175  <tbody class="border-top">
  1176  <tr>
  1177  <td style="white-space:nowrap">
  1178  <code>name</code>
  1179  <br>
  1180  <em>
  1181  string
  1182  </em>
  1183  </td>
  1184  <td>
  1185  <p>Name is the name of Kubernetes service to proxy traffic.
  1186  Names defined here will be used to look up corresponding endpoints which contain the ips to route.</p>
  1187  </td>
  1188  </tr>
  1189  <tr>
  1190  <td style="white-space:nowrap">
  1191  <code>port</code>
  1192  <br>
  1193  <em>
  1194  int
  1195  </em>
  1196  </td>
  1197  <td>
  1198  <p>Port (defined as Integer) to proxy traffic to since a service can have multiple defined.</p>
  1199  </td>
  1200  </tr>
  1201  <tr>
  1202  <td style="white-space:nowrap">
  1203  <code>protocol</code>
  1204  <br>
  1205  <em>
  1206  string
  1207  </em>
  1208  </td>
  1209  <td>
  1210  <em>(Optional)</em>
  1211  <p>Protocol may be used to specify (or override) the protocol used to reach this Service.
  1212  Values may be tls, h2, h2c. If omitted, protocol-selection falls back on Service annotations.</p>
  1213  </td>
  1214  </tr>
  1215  <tr>
  1216  <td style="white-space:nowrap">
  1217  <code>weight</code>
  1218  <br>
  1219  <em>
  1220  int64
  1221  </em>
  1222  </td>
  1223  <td>
  1224  <em>(Optional)</em>
  1225  <p>Weight defines percentage of traffic to balance traffic</p>
  1226  </td>
  1227  </tr>
  1228  <tr>
  1229  <td style="white-space:nowrap">
  1230  <code>validation</code>
  1231  <br>
  1232  <em>
  1233  <a href="#projectcontour.io/v1.UpstreamValidation">
  1234  UpstreamValidation
  1235  </a>
  1236  </em>
  1237  </td>
  1238  <td>
  1239  <em>(Optional)</em>
  1240  <p>UpstreamValidation defines how to verify the backend service&rsquo;s certificate</p>
  1241  </td>
  1242  </tr>
  1243  <tr>
  1244  <td style="white-space:nowrap">
  1245  <code>mirror</code>
  1246  <br>
  1247  <em>
  1248  bool
  1249  </em>
  1250  </td>
  1251  <td>
  1252  <p>If Mirror is true the Service will receive a read only mirror of the traffic for this route.</p>
  1253  </td>
  1254  </tr>
  1255  <tr>
  1256  <td style="white-space:nowrap">
  1257  <code>requestHeadersPolicy</code>
  1258  <br>
  1259  <em>
  1260  <a href="#projectcontour.io/v1.HeadersPolicy">
  1261  HeadersPolicy
  1262  </a>
  1263  </em>
  1264  </td>
  1265  <td>
  1266  <em>(Optional)</em>
  1267  <p>The policy for managing request headers during proxying</p>
  1268  </td>
  1269  </tr>
  1270  <tr>
  1271  <td style="white-space:nowrap">
  1272  <code>responseHeadersPolicy</code>
  1273  <br>
  1274  <em>
  1275  <a href="#projectcontour.io/v1.HeadersPolicy">
  1276  HeadersPolicy
  1277  </a>
  1278  </em>
  1279  </td>
  1280  <td>
  1281  <em>(Optional)</em>
  1282  <p>The policy for managing response headers during proxying</p>
  1283  </td>
  1284  </tr>
  1285  </tbody>
  1286  </table>
  1287  <h3 id="projectcontour.io/v1.Status">Status
  1288  </h3>
  1289  <p>
  1290  (<em>Appears on:</em>
  1291  <a href="#projectcontour.io/v1.HTTPProxy">HTTPProxy</a>)
  1292  </p>
  1293  <p>
  1294  <p>Status reports the current state of the HTTPProxy.</p>
  1295  </p>
  1296  <table class="table table-striped table-borderless" style="border:none">
  1297  <thead class="border-bottom">
  1298  <tr>
  1299  <th>Field</th>
  1300  <th>Description</th>
  1301  </tr>
  1302  </thead>
  1303  <tbody class="border-top">
  1304  <tr>
  1305  <td style="white-space:nowrap">
  1306  <code>currentStatus</code>
  1307  <br>
  1308  <em>
  1309  string
  1310  </em>
  1311  </td>
  1312  <td>
  1313  <em>(Optional)</em>
  1314  </td>
  1315  </tr>
  1316  <tr>
  1317  <td style="white-space:nowrap">
  1318  <code>description</code>
  1319  <br>
  1320  <em>
  1321  string
  1322  </em>
  1323  </td>
  1324  <td>
  1325  <em>(Optional)</em>
  1326  </td>
  1327  </tr>
  1328  <tr>
  1329  <td style="white-space:nowrap">
  1330  <code>loadBalancer</code>
  1331  <br>
  1332  <em>
  1333  <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/#loadbalancerstatus-v1-core">
  1334  Kubernetes core/v1.LoadBalancerStatus
  1335  </a>
  1336  </em>
  1337  </td>
  1338  <td>
  1339  <em>(Optional)</em>
  1340  <p>LoadBalancer contains the current status of the load balancer.</p>
  1341  </td>
  1342  </tr>
  1343  </tbody>
  1344  </table>
  1345  <h3 id="projectcontour.io/v1.TCPHealthCheckPolicy">TCPHealthCheckPolicy
  1346  </h3>
  1347  <p>
  1348  (<em>Appears on:</em>
  1349  <a href="#projectcontour.io/v1.TCPProxy">TCPProxy</a>)
  1350  </p>
  1351  <p>
  1352  <p>TCPHealthCheckPolicy defines health checks on the upstream service.</p>
  1353  </p>
  1354  <table class="table table-striped table-borderless" style="border:none">
  1355  <thead class="border-bottom">
  1356  <tr>
  1357  <th>Field</th>
  1358  <th>Description</th>
  1359  </tr>
  1360  </thead>
  1361  <tbody class="border-top">
  1362  <tr>
  1363  <td style="white-space:nowrap">
  1364  <code>intervalSeconds</code>
  1365  <br>
  1366  <em>
  1367  int64
  1368  </em>
  1369  </td>
  1370  <td>
  1371  <em>(Optional)</em>
  1372  <p>The interval (seconds) between health checks</p>
  1373  </td>
  1374  </tr>
  1375  <tr>
  1376  <td style="white-space:nowrap">
  1377  <code>timeoutSeconds</code>
  1378  <br>
  1379  <em>
  1380  int64
  1381  </em>
  1382  </td>
  1383  <td>
  1384  <em>(Optional)</em>
  1385  <p>The time to wait (seconds) for a health check response</p>
  1386  </td>
  1387  </tr>
  1388  <tr>
  1389  <td style="white-space:nowrap">
  1390  <code>unhealthyThresholdCount</code>
  1391  <br>
  1392  <em>
  1393  uint32
  1394  </em>
  1395  </td>
  1396  <td>
  1397  <em>(Optional)</em>
  1398  <p>The number of unhealthy health checks required before a host is marked unhealthy</p>
  1399  </td>
  1400  </tr>
  1401  <tr>
  1402  <td style="white-space:nowrap">
  1403  <code>healthyThresholdCount</code>
  1404  <br>
  1405  <em>
  1406  uint32
  1407  </em>
  1408  </td>
  1409  <td>
  1410  <em>(Optional)</em>
  1411  <p>The number of healthy health checks required before a host is marked healthy</p>
  1412  </td>
  1413  </tr>
  1414  </tbody>
  1415  </table>
  1416  <h3 id="projectcontour.io/v1.TCPProxy">TCPProxy
  1417  </h3>
  1418  <p>
  1419  (<em>Appears on:</em>
  1420  <a href="#projectcontour.io/v1.HTTPProxySpec">HTTPProxySpec</a>)
  1421  </p>
  1422  <p>
  1423  <p>TCPProxy contains the set of services to proxy TCP connections.</p>
  1424  </p>
  1425  <table class="table table-striped table-borderless" style="border:none">
  1426  <thead class="border-bottom">
  1427  <tr>
  1428  <th>Field</th>
  1429  <th>Description</th>
  1430  </tr>
  1431  </thead>
  1432  <tbody class="border-top">
  1433  <tr>
  1434  <td style="white-space:nowrap">
  1435  <code>loadBalancerPolicy</code>
  1436  <br>
  1437  <em>
  1438  <a href="#projectcontour.io/v1.LoadBalancerPolicy">
  1439  LoadBalancerPolicy
  1440  </a>
  1441  </em>
  1442  </td>
  1443  <td>
  1444  <em>(Optional)</em>
  1445  <p>The load balancing policy for the backend services.</p>
  1446  </td>
  1447  </tr>
  1448  <tr>
  1449  <td style="white-space:nowrap">
  1450  <code>services</code>
  1451  <br>
  1452  <em>
  1453  <a href="#projectcontour.io/v1.Service">
  1454  []Service
  1455  </a>
  1456  </em>
  1457  </td>
  1458  <td>
  1459  <p>Services are the services to proxy traffic</p>
  1460  </td>
  1461  </tr>
  1462  <tr>
  1463  <td style="white-space:nowrap">
  1464  <code>include</code>
  1465  <br>
  1466  <em>
  1467  <a href="#projectcontour.io/v1.TCPProxyInclude">
  1468  TCPProxyInclude
  1469  </a>
  1470  </em>
  1471  </td>
  1472  <td>
  1473  <em>(Optional)</em>
  1474  <p>Include specifies that this tcpproxy should be delegated to another HTTPProxy.</p>
  1475  </td>
  1476  </tr>
  1477  <tr>
  1478  <td style="white-space:nowrap">
  1479  <code>includes</code>
  1480  <br>
  1481  <em>
  1482  <a href="#projectcontour.io/v1.TCPProxyInclude">
  1483  TCPProxyInclude
  1484  </a>
  1485  </em>
  1486  </td>
  1487  <td>
  1488  <em>(Optional)</em>
  1489  <p>IncludesDeprecated allow for specific routing configuration to be appended to another HTTPProxy in another namespace.</p>
  1490  <p>Exists due to a mistake when developing HTTPProxy and the field was marked plural
  1491  when it should have been singular. This field should stay to not break backwards compatibility to v1 users.</p>
  1492  </td>
  1493  </tr>
  1494  <tr>
  1495  <td style="white-space:nowrap">
  1496  <code>healthCheckPolicy</code>
  1497  <br>
  1498  <em>
  1499  <a href="#projectcontour.io/v1.TCPHealthCheckPolicy">
  1500  TCPHealthCheckPolicy
  1501  </a>
  1502  </em>
  1503  </td>
  1504  <td>
  1505  <em>(Optional)</em>
  1506  <p>The health check policy for this tcp proxy</p>
  1507  </td>
  1508  </tr>
  1509  </tbody>
  1510  </table>
  1511  <h3 id="projectcontour.io/v1.TCPProxyInclude">TCPProxyInclude
  1512  </h3>
  1513  <p>
  1514  (<em>Appears on:</em>
  1515  <a href="#projectcontour.io/v1.TCPProxy">TCPProxy</a>)
  1516  </p>
  1517  <p>
  1518  <p>TCPProxyInclude describes a target HTTPProxy document which contains the TCPProxy details.</p>
  1519  </p>
  1520  <table class="table table-striped table-borderless" style="border:none">
  1521  <thead class="border-bottom">
  1522  <tr>
  1523  <th>Field</th>
  1524  <th>Description</th>
  1525  </tr>
  1526  </thead>
  1527  <tbody class="border-top">
  1528  <tr>
  1529  <td style="white-space:nowrap">
  1530  <code>name</code>
  1531  <br>
  1532  <em>
  1533  string
  1534  </em>
  1535  </td>
  1536  <td>
  1537  <p>Name of the child HTTPProxy</p>
  1538  </td>
  1539  </tr>
  1540  <tr>
  1541  <td style="white-space:nowrap">
  1542  <code>namespace</code>
  1543  <br>
  1544  <em>
  1545  string
  1546  </em>
  1547  </td>
  1548  <td>
  1549  <em>(Optional)</em>
  1550  <p>Namespace of the HTTPProxy to include. Defaults to the current namespace if not supplied.</p>
  1551  </td>
  1552  </tr>
  1553  </tbody>
  1554  </table>
  1555  <h3 id="projectcontour.io/v1.TLS">TLS
  1556  </h3>
  1557  <p>
  1558  (<em>Appears on:</em>
  1559  <a href="#projectcontour.io/v1.VirtualHost">VirtualHost</a>)
  1560  </p>
  1561  <p>
  1562  <p>TLS describes tls properties. The SNI names that will be matched on
  1563  are described in fqdn, the tls.secretName secret must contain a
  1564  matching certificate unless tls.passthrough is set to true.</p>
  1565  </p>
  1566  <table class="table table-striped table-borderless" style="border:none">
  1567  <thead class="border-bottom">
  1568  <tr>
  1569  <th>Field</th>
  1570  <th>Description</th>
  1571  </tr>
  1572  </thead>
  1573  <tbody class="border-top">
  1574  <tr>
  1575  <td style="white-space:nowrap">
  1576  <code>secretName</code>
  1577  <br>
  1578  <em>
  1579  string
  1580  </em>
  1581  </td>
  1582  <td>
  1583  <p>required, the name of a secret in the current namespace</p>
  1584  </td>
  1585  </tr>
  1586  <tr>
  1587  <td style="white-space:nowrap">
  1588  <code>minimumProtocolVersion</code>
  1589  <br>
  1590  <em>
  1591  string
  1592  </em>
  1593  </td>
  1594  <td>
  1595  <em>(Optional)</em>
  1596  <p>Minimum TLS version this vhost should negotiate</p>
  1597  </td>
  1598  </tr>
  1599  <tr>
  1600  <td style="white-space:nowrap">
  1601  <code>passthrough</code>
  1602  <br>
  1603  <em>
  1604  bool
  1605  </em>
  1606  </td>
  1607  <td>
  1608  <em>(Optional)</em>
  1609  <p>If Passthrough is set to true, the SecretName will be ignored
  1610  and the encrypted handshake will be passed through to the
  1611  backing cluster.</p>
  1612  </td>
  1613  </tr>
  1614  <tr>
  1615  <td style="white-space:nowrap">
  1616  <code>clientValidation</code>
  1617  <br>
  1618  <em>
  1619  <a href="#projectcontour.io/v1.DownstreamValidation">
  1620  DownstreamValidation
  1621  </a>
  1622  </em>
  1623  </td>
  1624  <td>
  1625  <em>(Optional)</em>
  1626  <p>ClientValidation defines how to verify the client certificate
  1627  when an external client establishes a TLS connection to Envoy.</p>
  1628  <p>This setting:</p>
  1629  <ol>
  1630  <li>Enables TLS client certificate validation.</li>
  1631  <li>Requires clients to present a TLS certificate (i.e. not optional validation).</li>
  1632  <li>Specifies how the client certificate will be validated.</li>
  1633  </ol>
  1634  </td>
  1635  </tr>
  1636  <tr>
  1637  <td style="white-space:nowrap">
  1638  <code>enableFallbackCertificate</code>
  1639  <br>
  1640  <em>
  1641  bool
  1642  </em>
  1643  </td>
  1644  <td>
  1645  <p>EnableFallbackCertificate defines if the vhost should allow a default certificate to
  1646  be applied which handles all requests which don&rsquo;t match the SNI defined in this vhost.</p>
  1647  </td>
  1648  </tr>
  1649  </tbody>
  1650  </table>
  1651  <h3 id="projectcontour.io/v1.TLSCertificateDelegationSpec">TLSCertificateDelegationSpec
  1652  </h3>
  1653  <p>
  1654  (<em>Appears on:</em>
  1655  <a href="#projectcontour.io/v1.TLSCertificateDelegation">TLSCertificateDelegation</a>)
  1656  </p>
  1657  <p>
  1658  <p>TLSCertificateDelegationSpec defines the spec of the CRD</p>
  1659  </p>
  1660  <table class="table table-striped table-borderless" style="border:none">
  1661  <thead class="border-bottom">
  1662  <tr>
  1663  <th>Field</th>
  1664  <th>Description</th>
  1665  </tr>
  1666  </thead>
  1667  <tbody class="border-top">
  1668  <tr>
  1669  <td style="white-space:nowrap">
  1670  <code>delegations</code>
  1671  <br>
  1672  <em>
  1673  <a href="#projectcontour.io/v1.CertificateDelegation">
  1674  []CertificateDelegation
  1675  </a>
  1676  </em>
  1677  </td>
  1678  <td>
  1679  </td>
  1680  </tr>
  1681  </tbody>
  1682  </table>
  1683  <h3 id="projectcontour.io/v1.TimeoutPolicy">TimeoutPolicy
  1684  </h3>
  1685  <p>
  1686  (<em>Appears on:</em>
  1687  <a href="#projectcontour.io/v1.Route">Route</a>)
  1688  </p>
  1689  <p>
  1690  <p>TimeoutPolicy configures timeouts that are used for handling network requests.</p>
  1691  <p>TimeoutPolicy durations are expressed in the Go <a href="https://godoc.org/time#ParseDuration">Duration format</a>.
  1692  Valid time units are &ldquo;ns&rdquo;, &ldquo;us&rdquo; (or &ldquo;µs&rdquo;), &ldquo;ms&rdquo;, &ldquo;s&rdquo;, &ldquo;m&rdquo;, &ldquo;h&rdquo;.
  1693  The string &ldquo;infinity&rdquo; is also a valid input and specifies no timeout.
  1694  A value of &ldquo;0s&rdquo; will be treated as if the field were not set, i.e. by using Envoy&rsquo;s default behavior.</p>
  1695  <p>Example input values: &ldquo;300ms&rdquo;, &ldquo;5s&rdquo;, &ldquo;1m&rdquo;.</p>
  1696  </p>
  1697  <table class="table table-striped table-borderless" style="border:none">
  1698  <thead class="border-bottom">
  1699  <tr>
  1700  <th>Field</th>
  1701  <th>Description</th>
  1702  </tr>
  1703  </thead>
  1704  <tbody class="border-top">
  1705  <tr>
  1706  <td style="white-space:nowrap">
  1707  <code>response</code>
  1708  <br>
  1709  <em>
  1710  string
  1711  </em>
  1712  </td>
  1713  <td>
  1714  <em>(Optional)</em>
  1715  <p>Timeout for receiving a response from the server after processing a request from client.
  1716  If not supplied, Envoy&rsquo;s default value of 15s applies.</p>
  1717  </td>
  1718  </tr>
  1719  <tr>
  1720  <td style="white-space:nowrap">
  1721  <code>idle</code>
  1722  <br>
  1723  <em>
  1724  string
  1725  </em>
  1726  </td>
  1727  <td>
  1728  <em>(Optional)</em>
  1729  <p>Timeout after which, if there are no active requests for this route, the connection between
  1730  Envoy and the backend or Envoy and the external client will be closed.
  1731  If not specified, there is no per-route idle timeout, though a connection manager-wide
  1732  stream_idle_timeout default of 5m still applies.</p>
  1733  </td>
  1734  </tr>
  1735  </tbody>
  1736  </table>
  1737  <h3 id="projectcontour.io/v1.UpstreamValidation">UpstreamValidation
  1738  </h3>
  1739  <p>
  1740  (<em>Appears on:</em>
  1741  <a href="#projectcontour.io/v1.Service">Service</a>)
  1742  </p>
  1743  <p>
  1744  <p>UpstreamValidation defines how to verify the backend service&rsquo;s certificate</p>
  1745  </p>
  1746  <table class="table table-striped table-borderless" style="border:none">
  1747  <thead class="border-bottom">
  1748  <tr>
  1749  <th>Field</th>
  1750  <th>Description</th>
  1751  </tr>
  1752  </thead>
  1753  <tbody class="border-top">
  1754  <tr>
  1755  <td style="white-space:nowrap">
  1756  <code>caSecret</code>
  1757  <br>
  1758  <em>
  1759  string
  1760  </em>
  1761  </td>
  1762  <td>
  1763  <p>Name of the Kubernetes secret be used to validate the certificate presented by the backend</p>
  1764  </td>
  1765  </tr>
  1766  <tr>
  1767  <td style="white-space:nowrap">
  1768  <code>subjectName</code>
  1769  <br>
  1770  <em>
  1771  string
  1772  </em>
  1773  </td>
  1774  <td>
  1775  <p>Key which is expected to be present in the &lsquo;subjectAltName&rsquo; of the presented certificate</p>
  1776  </td>
  1777  </tr>
  1778  </tbody>
  1779  </table>
  1780  <h3 id="projectcontour.io/v1.VirtualHost">VirtualHost
  1781  </h3>
  1782  <p>
  1783  (<em>Appears on:</em>
  1784  <a href="#projectcontour.io/v1.HTTPProxySpec">HTTPProxySpec</a>)
  1785  </p>
  1786  <p>
  1787  <p>VirtualHost appears at most once. If it is present, the object is considered
  1788  to be a &ldquo;root&rdquo;.</p>
  1789  </p>
  1790  <table class="table table-striped table-borderless" style="border:none">
  1791  <thead class="border-bottom">
  1792  <tr>
  1793  <th>Field</th>
  1794  <th>Description</th>
  1795  </tr>
  1796  </thead>
  1797  <tbody class="border-top">
  1798  <tr>
  1799  <td style="white-space:nowrap">
  1800  <code>fqdn</code>
  1801  <br>
  1802  <em>
  1803  string
  1804  </em>
  1805  </td>
  1806  <td>
  1807  <p>The fully qualified domain name of the root of the ingress tree
  1808  all leaves of the DAG rooted at this object relate to the fqdn</p>
  1809  </td>
  1810  </tr>
  1811  <tr>
  1812  <td style="white-space:nowrap">
  1813  <code>tls</code>
  1814  <br>
  1815  <em>
  1816  <a href="#projectcontour.io/v1.TLS">
  1817  TLS
  1818  </a>
  1819  </em>
  1820  </td>
  1821  <td>
  1822  <em>(Optional)</em>
  1823  <p>If present describes tls properties. The SNI names that will be matched on
  1824  are described in fqdn, the tls.secretName secret must contain a
  1825  matching certificate</p>
  1826  </td>
  1827  </tr>
  1828  </tbody>
  1829  </table>
  1830  <hr/>
  1831  <p><em>
  1832  Generated with <code>gen-crd-api-reference-docs</code>.
  1833  </em></p>