Frequently Asked Questions

Do you support arm64 architecture machines?

No. DeepSource Enterprise does not support arm64 machines yet.

Patching with Kustomize

If you would like to make modifications to Enterprise Server's K8s manifests, you can patch them with Kustomize. For example, you can customize the number of replicas that you want to use in your environment or specify what node selectors to use for deployment. Please refer to this resource.

How do I re-sync the license?

You can check if there are any changes to your license (change of expiry, configuration change, etc) through the License tab on the Replicated admin console.

Sync License

  • Navigate to the "License" tab on the Admin Console
  • Click on "Sync License" to get the latest version of the license

  • A "License synced successfully" note will appear when the changes are successfully applied.

Deploy DeepSource

DeepSource Enterprise Server needs to be redeployed for the License changes to reflect.

  • Navigate to the "Version History" tab on the Admin Console
  • A new release saying "License Change" will now be available

  • Click on the "Deploy" button.

Image pulls are failing with imagePullBack error

This most likely happens if your license has expired. Check the status of your license from the admin console. If you still face the error, reach out to the Enterprise Support for help.

The spinner is stuck in loop when the first analysis is performed

It is highly likely that the node selector labels haven't been set, and thus the analysis pods haven't been scheduled onto the nodes. To investigate this run kubectl describe pod <pod-name> -n atlas-jobs, where <pod-name> can be fetched by running kubectl get pods -n atlas-jobs. Running the former command will return information about the pod. At the last section of the output, you will see something like as shown below

Type    Reason   Age                   From             Message
----    ------   ----                  ----             -------
Normal  Created  20m (x352 over 7d7h)  kubelet, gke-... Created container ...
Normal  Started  20m (x352 over 7d7h)  kubelet, gke-... Started container ...
Normal  Pulled   20m (x351 over 7d7h)  kubelet, gke-... Container image "..." already present on machine

In the case of missing labels, the output will notify you that it wasn't able to match any node selectors. To fix this, run kubectl label nodes <node-name> X=Y where X=Y is the label key pair you entered in the admin console during installation.

Repositories are not visible when attempting to sync

This can be attributed to misconfiguration in the admin console. To fix this, recreate a new GitHub app private key and upload the same to the admin console, and then redeploy.

Unable to view logs for some of the pods

This clearly indicates a firewall issue between the nodes (or VMs), as the CNI (Container Networking Interface) requires the pods to be resolvable with each other over the overlay network across all the nodes. When a firewall is blocking the network, pods from one node, or for that matter, the Kubernetes master node, isn't able to communicate with the pods on the other node. To resolve this, please refer to this resource.

All the pods are pending for more than a minute when running kubectl get pods

You will need to add the node selector labels which you had entered in the admin console onto the nodes. Please refer to this resource.

Support bundle generation has been stuck at X% for the last few hours

If support bundle generation is stuck (or) taking a long time, it is most likely because you're on older version of KOTS. Please upgrade KOTS using the following command:

kubectl kots admin-console upgrade —-namespace <namespace>

If the above steps don't fix the issue, this is most likely because the previous support bundle generation crashed. To fix this:

  • Run kubectl get secrets -n <namespace-in-which-deepsource-is-installed> | grep supportbundle in the namespace that DeepSource is installed in.
  • Delete the secrets starting with supportbundle-* one-by-one, using kubectl delete secret <name-of-the-secret> -n <namespace-in-which-deepsource-is-installed>. The last support bundle's state is stored in one of these secrets, hence deleting these secrets lets the Admin Console know that it has to start over.
  • Once done, go to the Admin Console and click on "Generate a support bundle" again.

Logging in for the first time shows Social Login Failure

Please make sure all the configuration values in the GitHub/GitLab app are appropriately entered. An incorrect value usually results in this error.

Can I use a top level load balancer for routing requests to the deployment?

Yes, you can.

How do I reset my Admin Console password?

In case you forget the password for your Admin Console, you can easily reset it by running this command from within your cluster:

kubectl kots reset-password <namespace>

Database migrations are failing

During version upgrades, there might be database migrations associated with it. From the logs, if you notice the migrations are failing, run the following command to re-apply the migrations.

kubectl exec deploy/asgard-main asgard-main -- bash -c 'poetry run python migrate'

Patching manifests with Kustomize

DeepSource Enterprise Server uses helm to manage Kubernetes manifests. If you want to make any changes to the manifests, you can use Kustomize. For example, you can customize the number of replicas you want in your environment or specify what nodeSelectors to use for a deployment. Please refer to this resource for steps and more information.

I still have a question

Enterprise Support can be reached at [email protected] to help you answer any questions/feedback/bugs.