Skip to content

Commit

Permalink
feat: (IAC-1186) Updated logic based on latest supported ingress vers…
Browse files Browse the repository at this point in the history
…ions
  • Loading branch information
riragh committed Jan 11, 2024
1 parent 61abf9c commit 6a4f583
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 9 deletions.
2 changes: 1 addition & 1 deletion docs/CONFIG-VARS.md
Original file line number Diff line number Diff line change
Expand Up @@ -408,7 +408,7 @@ The EBS CSI driver is currently only used for kubernetes v1.23 or later AWS EKS
| INGRESS_NGINX_NAMESPACE | NGINX Ingress Helm installation namespace | string | ingress-nginx | false | | baseline |
| INGRESS_NGINX_CHART_URL | NGINX Ingress Helm chart URL | string | See [this document](https://kubernetes.github.io/ingress-nginx) for more information. | false | | baseline |
| INGRESS_NGINX_CHART_NAME | NGINX Ingress Helm chart name | string | ingress-nginx | false | | baseline |
| INGRESS_NGINX_CHART_VERSION | NGINX Ingress Helm chart version | string | "" | false | If left as "" (empty string), version 4.3.0 is used for Kubernetes clusters whose version is <= 1.24.X, and version 4.9.0 is used for Kubernetes clusters whose version is >= 1.25.X. | baseline |
| INGRESS_NGINX_CHART_VERSION | NGINX Ingress Helm chart version | string | "" | false | If left as "" (empty string), version `4.9.0` is used for Kubernetes clusters whose version is >= 1.25.X, and for Kubernetes clusters whose version is <= 1.24.X please set this variable to avoid errors. See [Supported Versions table](https://github.com/kubernetes/ingress-nginx/?tab=readme-ov-file#supported-versions-table) for the supported versions list. | baseline |
| INGRESS_NGINX_CONFIG | NGINX Ingress Helm values | string | See [this file](../roles/baseline/defaults/main.yml) for more information. Altering this value will affect the cluster. | false | | baseline |

### Metrics Server
Expand Down
6 changes: 1 addition & 5 deletions roles/baseline/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,7 @@ METRICS_SERVER_CONFIG:

## Ingress-nginx - Defaults
ingressVersions:
k8sMinorVersionCeiling:
value: 24
api:
chartVersion: 4.3.0
k8sMinorVersionFloor:
k8sMinorVersion:
value: 25
api:
chartVersion: 4.9.0
Expand Down
12 changes: 9 additions & 3 deletions roles/baseline/tasks/ingress-nginx.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,17 @@
register: cluster_info
- name: Set the default INGRESS_NGINX_CHART_VERSION based on K8s server minor version
set_fact:
INGRESS_NGINX_CHART_VERSION: "{{ ingressVersions.k8sMinorVersionFloor.api.chartVersion if cluster_info.version.server.kubernetes.minor is version(ingressVersions.k8sMinorVersionFloor.value,
'ge') else ingressVersions.k8sMinorVersionCeiling.api.chartVersion }}"
INGRESS_NGINX_CHART_VERSION: "{{ ingressVersions.k8sMinorVersion.api.chartVersion if cluster_info.version.server.kubernetes.minor is version(ingressVersions.k8sMinorVersion.value,
'ge') else '' }}"
- name: Output INGRESS_NGINX_CHART_VERSION
debug:
msg: "{{ INGRESS_NGINX_CHART_VERSION }}"
- name: Fail when INGRESS_NGINX_CHART_VERSION not set
fail:
msg: "INGRESS_NGINX_CHART_VERSION isn't set when K8s version is < 1.{{ingressVersions.k8sMinorVersion.value}}."

Check failure on line 35 in roles/baseline/tasks/ingress-nginx.yaml

View workflow job for this annotation

GitHub Actions / ansible-lint

jinja[spacing]

Jinja2 spacing could be improved: INGRESS_NGINX_CHART_VERSION isn't set when K8s version is < 1.{{ingressVersions.k8sMinorVersion.value}}. -> INGRESS_NGINX_CHART_VERSION isn't set when K8s version is < 1.{{ ingressVersions.k8sMinorVersion.value }}.
when:
- cluster_info.version.server.kubernetes.minor is version(ingressVersions.k8sMinorVersion.value, 'lt')
- INGRESS_NGINX_CHART_VERSION == ""

- name: Update INGRESS_NGINX_CONFIG to use NLB for AWS
set_fact:
Expand Down Expand Up @@ -62,7 +68,7 @@
set_fact:
INGRESS_NGINX_CONFIG: "{{ INGRESS_NGINX_CONFIG | combine(INGRESS_NGINX_CVE_2021_25742_PATCH, recursive=True) }}"
when:
- cluster_info.version.server.kubernetes.minor is version(ingressVersions.k8sMinorVersionFloor.value, 'ge')
- cluster_info.version.server.kubernetes.minor is version(ingressVersions.k8sMinorVersion.value, 'ge')
- INGRESS_NGINX_CHART_VERSION is version('4.0.10', ">=") or (INGRESS_NGINX_CHART_VERSION is version('3.40.0', ">=") and INGRESS_NGINX_CHART_VERSION is version('4.0.0',
"<"))

Expand Down

0 comments on commit 6a4f583

Please sign in to comment.