How to Override Values in .datahubenv File Set to Read-Only

Original Slack Thread

<@U06TM7M40RK> how to override the values in .datahubenv file when it is set to read only ?

I’m not able to find any data sources to answer your question. Could you provide more details about your deployment environment or specific configurations you’re trying to override? If this doesn’t help, please reach out to the DataHub support team for further assistance. :+1: 0 button :-1: 0 button :bulb: Hint: Mention @runllm in the thread for followups.

<@U06TM7M40RK> the existing .datahubenv file has outdated access token. I need to update this token with current one but the file is set to read only mode. My datahub is deployed on kubernetes cluster using helm charts. How do I include deployment of .datahubenv as part of datahub component or prerequisite deployment ?

To update the .datahubenv file with a new access token in a Kubernetes deployment using Helm charts, you can follow these steps:

  1. Create a Kubernetes Secret: Store the updated .datahubenv file in a Kubernetes Secret.
  2. Mount the Secret as a Volume: Configure your Helm chart to mount this Secret as a volume in the DataHub components that require it.

Step-by-Step Process

1. Create a Kubernetes Secret

First, create a Kubernetes Secret from your updated .datahubenv file. You can do this using the kubectl command:

kubectl create secret generic datahub-env-secret --from-file=.datahubenv=./path-to-your-updated-datahubenv

2. Update Helm Chart to Mount the Secret

Next, update your Helm chart to mount this Secret as a volume in the DataHub components. You will need to modify the values.yaml file and the deployment templates.

Example values.yaml Configuration:

datahub-frontend:
  extraVolumes:
    - name: datahub-env
      secret:
        secretName: datahub-env-secret
  extraVolumeMounts:
    - name: datahub-env
      mountPath: /path/to/.datahubenv
      subPath: .datahubenv

datahub-gms:
  extraVolumes:
    - name: datahub-env
      secret:
        secretName: datahub-env-secret
  extraVolumeMounts:
    - name: datahub-env
      mountPath: /path/to/.datahubenv
      subPath: .datahubenv

Example Deployment Template Update:

Ensure that the deployment templates for datahub-frontend and datahub-gms include the volume and volume mount configurations. Here is an example snippet for the datahub-frontend deployment:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: datahub-frontend
spec:
  template:
    spec:
      containers:
      - name: datahub-frontend
        volumeMounts:
        - name: datahub-env
          mountPath: /path/to/.datahubenv
          subPath: .datahubenv
      volumes:
      - name: datahub-env
        secret:
          secretName: datahub-env-secret

Repeat similar configurations for the datahub-gms deployment.

3. Deploy the Helm Chart

Finally, deploy the Helm chart with the updated configurations:

helm upgrade --install datahub datahub/datahub -f values.yaml

This setup will ensure that the .datahubenv file with the updated access token is mounted as a volume in the DataHub components, making the process seamless and automated.

Would you like more detailed steps or have any specific questions about this process?

Sources:

  • <Slack Slack Discussion> :+1: 0 button :-1: 0 button :bulb: Hint: Mention @runllm in the thread for followups.

Hi :slight_smile: ! Did this interaction resolve your issue or do you still require assistance ?

Please tag @ RunLLM if you still need further assistance !

Or tag @Datahub Community Support if you require a person to take a look :slight_smile:

Hope this helps ! ><