Host editor binaries internally for air-gapped clusters

Host editor binaries internally by configuring custom download URLs for editors in air-gapped Che environments where editors cannot be retrieved from the public internet. This option applies only to JetBrains editors.

Prerequisites
Procedure
  1. Determine the IDs of the available editors. An editor ID has the following format: publisher/name/version.

    kubectl exec deploy/che-dashboard -n eclipse-che  \
        -- curl -s http://localhost:8080/dashboard/api/editors | jq -r '[.[] | "\(.metadata.attributes.publisher)/\(.metadata.name)/\(.metadata.attributes.version)"]'
  2. Configure the download URLs for editors:

    kubectl patch checluster/eclipse-che \
      --namespace eclipse-che \
      --type='merge' \
      -p '{
        "spec": {
          "devEnvironments": {
            "editorsDownloadUrls": [
              { "editor": "publisher1/editor-name1/version1", "url": "https://example.com/editor1.tar.gz" },
              { "editor": "publisher2/editor-name2/version2", "url": "https://example.com/editor2.tar.gz" }
            ]
          }
        }
      }'

    where:

    editor

    The editor ID in the format publisher/name/version. Determine the IDs by running the command in step 1.

    url

    The URL of the editor archive to download.

Verification
  • Verify that the editor download URLs appear in the CheCluster Custom Resource specification.