Ingress

Questions on ingress and load balancing

How do I configure the ingress domain in Dev, Staging or Production?

With the new helm 3 based boot every environment uses boot - so there is a single way to configure anything whether its in the dev, staging or production environment and whether or not you are using multiple clusters.

You can override the domain name for use in all apps within an environment by modifying the jx-requirements.yml in the git repository for the dev, staging or production environment.

ingress:
  domain: mydomain.com 

Also by default there is a namespace specific separator added. So if your service is cheese the full domain name would be something like cheese.jx-staging.mydomain.com.

If you wish to avoid the namespace specific separator if each environment already has its own unique domain value then you can specify:

ingress:
  domain: mydomain.com  
  namespaceSubDomain: "."

If you wish to change any of these values for a single app only then you can use the app customisation mechanism.

e.g. for an app called mychart you can create a file called apps/mychart/values.yaml in the git repository for your environment and add the following YAML:

jxRequirements:
  ingress:
    domain: mydomain.com  
    namespaceSubDomain: "."

How do I configure the ingress TLS certificate in Dev, Staging or Production?

You can specify the TLS certificate to use for the dev, staging or production environment by modifying the jx-requirements.yml file in the environments git repository:

ingress: 
  tls:
    enabled:
    secretName: my-tls-secret-name

This will then be applied to all the Jenkins X ingress resources for things like lighthouse or nexus - plus any apps you deploy to dev, staging or production.

If you want to override the TLS secret name for a specific app in a specific environment then rather like the above question you can use the app customisation mechanism.

e.g. for an app called mychart you can create a file called apps/mychart/values.yaml in the git repository for your environment and add the following YAML:

jxRequirements:
  ingress:
    tls:
      enabled:
      secretName: my-tls-secret-name

Last modified February 25, 2021: fix: add a better FAQ layout (f478d54032)