Expose with Contour HTTPProxy

Use this procedure to publish the APEx Dispatch API through Contour using an HTTPProxy resource.

Enable HTTPProxy

Set:

contour:
  enabled: true
  annotations:
    projectcontour.io/ingress.class: contour
  virtualhost:
    fqdn: api.example.org
    tls:
      enabled: false
  route:
    prefix: /
    port: 80

Then apply with:

helm upgrade --install apex-dispatch-api ./charts -f my-values.yaml

Enable TLS termination

To terminate TLS at Contour, configure:

contour:
  enabled: true
  virtualhost:
    fqdn: api.example.org
    tls:
      enabled: true
      secretName: api-example-org-tls
      minimumProtocolVersion: "1.2"
      permitInsecure: false

secretName must reference an existing Kubernetes TLS secret in the release namespace.

Common annotations and labels

Use contour.annotations and contour.labels for standard metadata such as ingress class selection, ownership tags, and operational labels.

Notes

  • contour.virtualhost.fqdn is required when contour.enabled=true.
  • The HTTPProxy backend points to the Knative service generated by this chart.
  • Keep contour.route.port aligned with the backend service port exposed by the Knative networking layer (default 80).