FAQ and Troubleshooting
Troubleshooting
SpaceCode On-Premises pods don't use the updated configuration (Kubernetes installation)
Symptoms:
After you update the configuration of SpaceCode On-Premises pods, the pods continue using previous configuration.
Possible cause:
The environment variable files used to configure SpaceCode are enabled dynamically, which makes it difficult to calculate the checksum of the file using Helm.
Solution:
Get the names of the SpaceCode deployment objects:
kubectl -n ${KUBE_NAMESPACE} get deployments -l app.kubernetes.io/name=space --output=jsonpath={..metadata.name}Gracefully shutdown all pods related to the objects from step 1:
for deployment in $(kubectl -n ${KUBE_NAMESPACE} get deployments -l app.kubernetes.io/name=space --output=jsonpath={..metadata.name}); do kubectl -n ${KUBE_NAMESPACE} scale deploy ${deployment} --replicas=0 doneRestart the SpaceCode deployment objects:
for deployment in $(kubectl -n ${KUBE_NAMESPACE} get deployments -l app.kubernetes.io/name=space --output=jsonpath={..metadata.name}); do kubectl -n ${KUBE_NAMESPACE} scale deploy ${deployment} --replicas=1 done
Error "Using of local IP address is not allowed" when importing/mirroring a Git repository
Symptoms:
When you try to import/mirror a Git repository, you get the following error: "Using of local IP address is not allowed".
Possible cause:
Most likely, the Git server is hosted in a local network. By default, the SpaceCode VCS service denies access to local network addresses.
Solution:
To resolve this issue, allow the VCS service to access all network addresses. The exact steps depend on the type of your SpaceCode installation.
Add the parameter vcs.git.mirror.any=true to the vcs.on-premises.properties file.
Set the parameter vcs.mirrorAny: true in the values.yaml file.
Error "javax.crypto.BadPaddingException" during SpaceCode installation
Symptoms:
When starting the SpaceCode installation, you get the error message: javax.crypto.BadPaddingException: Given final block not properly padded. Such issues can arise if a bad key is used during decryption.
Possible cause:
Most likely, the masterSecret value in the space.on-premises.conf file was initially set to one value and later changed, while the database remains unchanged.
Solution:
Try one of the following:
Change the
masterSecretvalue in thespace.on-premises.conffile back to its original value.Drop the existing database and start a new installation using the updated
masterSecretvalue.
Error "java.util.concurrent.CancellationException: Transaction lifetime was terminated" during SpaceCode installation
Symptoms:
When starting the SpaceCode installation, you get the error message: java.util.concurrent.CancellationException: Transaction lifetime was terminated.
Possible cause:
The database migration process takes longer than expected, causing a timeout.
Solution:
Extend the timeout limit by adding the specified Java parameter to your installation configuration:
Add -Dcirclet.db.migration.timeout=360000 to the services.space.environment.JAVA_OPTS section of the docker-compose.yml file.
Add -Dcirclet.db.migration.timeout=360000 to the space.extraJavaOpts section of the values.yaml file.
Error "javax.net.ssl.SSLHandshakeException: PKIX path building failed" when accessing externally-hosted resources from SpaceCode
Symptoms:
When trying to access externally-hosted resources such as Git or package repositories from SpaceCode, you get the error message: avax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target.
Possible cause:
Most likely, the external services use self-signed certificates. SpaceCode fails to verify these certificates using its built-in truststore.
Solution:
Import the problematic certificate atop the current
cacertsfile provided by Java. Here you can find the detailed instructions.After preparing the
cacertsfile, mount it to the relevant SpaceCode containers and instruct Java to use this file instead of the default one. To do this, update your configuration as follows:services: space: volumes: - /path/to/truststore:/container/path/to/truststore environment: JAVA_OPTS: "-Djavax.net.ssl.trustStore=/path/to/truststore”