noob question while learning to use helm: where sh...
# all-things-deployment
b
noob question while learning to use helm: where should the imagePullSecrets definition to pull all the docker images from a (private repository) be specified?
nvm, seems like adding a
Copy code
imagePullSecrets:
- name: <name of secret>
at the top of the values.yaml in the main chart works for the setupJobs
spoken too soon, seems like that imagePullSecret is not used by datahub-frontend-react nor datahub-gms, so i'm still stuck
m
Here is the frontend template and the line where
imagePullSecrets
is used. You can see that it is used at the root of its own values files.
When used in the "global" values file, it will go under
datahub-frontend
, just like
image
as shown here.
b
hmm thanks! just got it to work, but now trying to figure out why GMS can't connect to the datastores. Should be some misconfig somewhere (I didnt use datahub-prerequisite)
m
Same deal for gms: https://github.com/acryldata/datahub-helm/blob/master/charts/datahub/subcharts/datahub-gms/templates/deployment.yaml#L25-L28 You need to look at each component's deployment.yaml, that's where the pull secrets is used. Sometimes when a chart has multiple components, the dev building the helm chart can use a global template to make changing each pull secrets and the like easier.
Are the datastores in the same k8s namespace? If not and you are using internal hostnames (k8s service names), make sure the names are using the k8s namespace. And if you have network policies, that cross-communication between namespaces is enabled.
b
hi Eric, this is more of a general question on Helm. if i untar the chart and made changes to the subcharts files, does
Copy code
helm update datahub/datahub -f values.yaml --namespace <mynamespace>
also pull in the changes in the subchart? or do i need to include the changed files in the helm update command as well
realised the lack of connectivity was caused by GMS looking for the datastores at the default hostAlias location. renaming the services work. Out of curiosity, why does the GMS pod have default hostAlias specified
m
I've done this before and I would need to do it again to verify my answer, but I think that since Chart.yaml
Copy code
dependencies:
- name: datahub
  version: 0.2.62
is referencing
datahub
, and that chart also does the same for its subcharts, it will by-pass your mods unless you delete the archive. Then it might look at the folder if it cannot find the archive. You should try deleting the tar and make a change that will break the deployment for example... then you'll know that your mods are being read. 😉 . Worst case, you can re-create the archive and helm will not download the archive unless you issue a
helm pull datahub/datahub
or any other chart. But in short, what you want to do is possible and I've done it many times. Just need to find the proper sequence of actions.