Author: Jason De Paola
Date: December 05, 2023
Audience: Everyone
Environmental details: Self-hosted
Summary:
If required to manually upload a new Jama license file (.yaml) to KOTS Admin, these are the instructions. This works for both Internet and Airgap installations.
Solution:
1. Fetch the KOTS Admin config
2. Remove KOTS Admin
kubectl kots remove jama-k8s -n default -f
3. Restore KOTS admin with new license
- Copy the license.yaml file to the app server or create a new file and paste the contents of the license.yaml file and save it somewhere on the app server filesystem.
- Then, you can just run the following command where you need the config.yaml file from step 1 and the license.yaml file from the previous step:
kubectl kots install jama-k8s --app-version-label=9.0.3 --license-file license.yaml --namespace default --config-values config.yaml
- This shows a successful execution, after which the KOTS admin should be available with the new license and config restored.
*Note - You may encounter the following error:
Error: failed to forward port: failed to query healthz: Get http://localhost:8800/healthz: context deadline exceeded (Client.Timeout exceeded while awaiting headers)
In which case this might solve the problem:
1. Create ssh tunnel
ssh -L 8800:<SERVER IP>:8800 <USER>@localhost
2. Repeat steps 2 and 3
Cause:
- We have noticed that licenses sometimes fail to sync. Here is a method to push the license file and preserve KOTS Admin settings.
Final note
If, after manually updating the license, you run into an error where the application returns an error page stating the "tenant is closed" or "tenant does not exist" then please follow the steps in KOTS - Reset tenant state.
Please feel free to leave feedback in the comments below.
Related to
- Self-Hosted
- KOTS
- Authentication
- Relationships
- Administration
- Testing
- REST API and extensibility
- Reports
- Microsoft Word
- Microsoft Excel
- Installation
- Migration
- Coverage and traceability
- Traditional
- Jama Connect Interchange™
- Customer-Validated Cloud
- Security
- Diagram/Graph Editor
- Jama Software® Subscriptions Maintenance and Support Service Agreement
- Jama Connect®
- license
- Supported
- Item Configuration
- Deployment Migration
- Integrations
Comments
3 comments
Update: This procedure can also be used to swap license files in KOTS without disrupting the database and assets.
Use case: This was done successfully in a testing environment for a Jama Connect customer that wanted to keep their production environment up, create a new instance and migrate data over, then verify the data before decommissioning the previous app server and switch the license on the new instance from nonProd to prod.
we are using Release 9.0.3. Following the steps given above, at the stage “Wating for admin Console to be ready”, following error comes up.
Deploying Admin Console
• Waiting for Admin Console to be ready ✓
Error: failed to forward port: failed to query healthz: Get "http://localhost:8800/healthz": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
Are we missing something?
I had a customer ask for their YAML license file and where they can find it. Eventually they found it. It would be great if this article would mention how to obtain it as well.
Please sign in to leave a comment.