Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unable to install in an air-gapped environment #5374

Open
angeloxx opened this issue Apr 11, 2024 · 9 comments · Fixed by #5493
Open

unable to install in an air-gapped environment #5374

angeloxx opened this issue Apr 11, 2024 · 9 comments · Fixed by #5493
Labels
backlog Pull requests/issues that are backlog items refined Issues that are ready to be prioritized

Comments

@angeloxx
Copy link

Describe the bug
Installing or templating with helm, using current helm cart nginxinc/charts/nginx-ingress is not possible in an air-gapped environment due the reference, in values.schema.json, to external resources like https://raw.githubusercontent.com/nginxinc/kubernetes-json-schema/master/v1.29.0/_definitions.json event if the configuration is correct.

To Reproduce
Deploy the application in an air-gapped environment and launch

helm --version=1.2.0 template --create-namespace -f=/tmp/nginx-1.yaml ingress-tier-1 oci://ghcr.io/nginxinc/charts/nginx-ingress

and error is

Error: values don't meet the specifications of the schema(s) in the following chart(s):
nginx-ingress:
Get "https://raw.githubusercontent.com/nginxinc/kubernetes-json-schema/master/v1.29.0/_definitions.json": dial tcp 185.199.108.133:443: i/o timeout

Expected behavior
Install the controller as expected, the configuration is correct because on a connected environment, with same values, the application is installed without issues.

Your environment

  • Version of the Ingress Controller Helm Chart - 1.2
  • Version of Kubernetes 1.29
Copy link

Hi @angeloxx thanks for reporting!

Be sure to check out the docs and the Contributing Guidelines while you wait for a human to take a look at this 🙂

Cheers!

@angeloxx
Copy link
Author

angeloxx commented Apr 11, 2024

Value file is:

controller:
  ingressClass:
    name: nginx-tier-1
  tolerations:
    - key: "node-role.kubernetes.io/network-node"
      operator: "Exists"
      effect: "NoSchedule"
  pod:
    annotations:
      selector: tier-1
service:
  create: false

@angeloxx angeloxx changed the title impossible to install in an air-gapped environment unable to install in an air-gapped environment Apr 11, 2024
@brianehlert
Copy link
Collaborator

The project has included this schema file in the Operator to accommodate OpenShift customers in this scenario.
I believe that the schema was first separated due to concerns about its size and thus the resulting size of the chart.
If the schema was incorporated, I would love to see some effort to reduce the size of the schema itself and if that is possible.

@vepatel
Copy link
Contributor

vepatel commented Apr 12, 2024

@angeloxx as a temporary measure, is it possible for you to remove the values.schema.json file (only possible if you're building from source).

@brianehlert the only way I see for now is to either:

@vepatel vepatel added backlog candidate Pull requests/issues that are candidates to be backlog items ready for refinement An issue that was triaged and it is ready to be refined and removed backlog candidate Pull requests/issues that are candidates to be backlog items labels Apr 12, 2024
@angeloxx
Copy link
Author

@angeloxx as a temporary measure, is it possible for you to remove the values.schema.json file (only possible if you're building from source).

Yes, already applied the W/A downloading the chart and removing the file before the deploy but isn't a viable long-term solution. We still have the same issues with other charts via a wrong values.schema.json and for that reason we still waiting for the --skip-schema-validation flag in Helm (and its adoption in helmfile).

@vepatel
Copy link
Contributor

vepatel commented Apr 15, 2024

@angeloxx yes the --skip-schema-validation is pretty much a requirement at this point, i guess as part of this issue we'll try to see if there's a short term solution or not, will keep you posted 👍🏼

@danielnginx
Copy link
Collaborator

@angeloxx The idea is to have the schema embedded in the helm chart. We will look into in the due course.

@danielnginx danielnginx added backlog Pull requests/issues that are backlog items refined Issues that are ready to be prioritized and removed ready for refinement An issue that was triaged and it is ready to be refined labels May 2, 2024
@danielnginx
Copy link
Collaborator

We have a PR merged to fix this issue #5493

We need to validate the fix.

@pdabelf5 pdabelf5 linked a pull request May 7, 2024 that will close this issue
6 tasks
@vepatel
Copy link
Contributor

vepatel commented May 9, 2024

#5528 reverting above PR because of issue with helm relative path

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backlog Pull requests/issues that are backlog items refined Issues that are ready to be prioritized
Projects
Status: Todo
Development

Successfully merging a pull request may close this issue.

4 participants