简体   繁体   中英

What is wrong with my JupyterHub config file ? Error when using helm to install Jupyter

I am attempting to deploy JupyterHub into my kubernetes cluster as i want to have it integrated with a self hosted Gitlab instance running in the same cluster.

I have followed the steps on the Gitlab documentation page as shown here .

however when attempt to install this helm chart with this command

helm install jupyterhub/jupyterhub --namespace jupyter --version=1.2.0 --values values.yaml --generate-name ... i get the below errors.

- (root): Additional property gitlab is not allowed
- hub.extraConfig: Invalid type. Expected: object, given: string
- ingress: Additional property host is not allowed

I am using helm chart from https://github.com/jupyterhub/helm-chart . see below for my values.yaml

VALUES.YAML

#-----------------------------------------------------------------------------
# The gitlab and ingress sections must be customized!
#-----------------------------------------------------------------------------

gitlab:
   clientId: <Your OAuth Application ID>
   clientSecret: <Your OAuth Application Secret>
   callbackUrl: http://<Jupyter Hostname>/hub/oauth_callback,
   # Limit access to members of specific projects or groups:
   # allowedGitlabGroups: [ "my-group-1", "my-group-2" ]
   # allowedProjectIds: [ 12345, 6789 ]

# ingress is required for OAuth to work
ingress:
   enabled: true
   host: <JupyterHostname>
   # tls:
   #    - hosts:
   #       - <JupyterHostanme>
   #         secretName: jupyter-cert
   # annotations:
   #    kubernetes.io/ingress.class: "nginx"
   #    kubernetes.io/tls-acme: "true"

#-----------------------------------------------------------------------------
# NO MODIFICATIONS REQUIRED BEYOND THIS POINT
#-----------------------------------------------------------------------------

hub:
   extraEnv:
      JUPYTER_ENABLE_LAB: 1
   extraConfig: |
      c.KubeSpawner.cmd = ['jupyter-labhub']
      c.GitLabOAuthenticator.scope = ['api read_repository write_repository']

      async def add_auth_env(spawner):
         '''
         We set user's id, login and access token on single user image to
         enable repository integration for JupyterHub.
         See: https://gitlab.com/gitlab-org/gitlab-foss/issues/47138#note_154294790
         '''
         auth_state = await spawner.user.get_auth_state()

         if not auth_state:
            spawner.log.warning("No auth state for %s", spawner.user)
            return

         spawner.environment['GITLAB_ACCESS_TOKEN'] = auth_state['access_token']
         spawner.environment['GITLAB_USER_LOGIN'] = auth_state['gitlab_user']['username']
         spawner.environment['GITLAB_USER_ID'] = str(auth_state['gitlab_user']['id'])
         spawner.environment['GITLAB_USER_EMAIL'] = auth_state['gitlab_user']['email']
         spawner.environment['GITLAB_USER_NAME'] = auth_state['gitlab_user']['name']

      c.KubeSpawner.pre_spawn_hook = add_auth_env

auth:
   type: gitlab
   state:
      enabled: true

singleuser:
   defaultUrl: "/lab"
   image:
      name: registry.gitlab.com/gitlab-org/jupyterhub-user-image
      tag: latest
   lifecycleHooks:
      postStart:
         exec:
         command:
            - "sh"
            - "-c"
            - >
               git clone https://gitlab.com/gitlab-org/nurtch-demo.git DevOps-Runbook-Demo || true;
               echo "https://oauth2:${GITLAB_ACCESS_TOKEN}@${GITLAB_HOST}" > ~/.git-credentials;
               git config --global credential.helper store;
               git config --global user.email "${GITLAB_USER_EMAIL}";
               git config --global user.name "${GITLAB_USER_NAME}";
               jupyter serverextension enable --py jupyterlab_git

proxy:
   service:
      type: ClusterIP

Single-string was deprecated in 0.6, for the dicts that don't conflict. The new structure is kind of:

hub:
  extraConfig:
    myConfigName: |
      print("hi", flush=True)

Please use the following URL's info as a reference issues/1009 .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM