In this case, we want to deploy Spotfire Server 12.0.5 in Kubernetes using the Spotfire CDK. In general, it is recommended to start with the newest version of the CDK that is compatible with the same major release of Spotfire Server that needs to be deployed. Here, the major version of Spotfire Server is v12. So if we navigate to the CDK's
Releases page, we can see that CDK v1.5.0 is the newest CDK release that supports Spotfire Server version 12.
After placing your Spotfire Server installation kits in ~/spotfire-cloud-deployment-kit/containers/downloads/, open ~/spotfire-cloud-deployment-kit/versions.mk in a text editor. The file looks like this:
CLOUD_DEPLOYMENT_KIT_VERSION=1.5.0 SPOTFIRE_DEPLOYMENT_VERSION=12.5.0 SPOTFIRE_NETCORE_LANGUAGEPACKS_VERSION=12.5.0 SPOTFIRE_NETCORE_VERSION=12.5.0 SPOTFIRE_NODEMANAGER_VERSION=12.5.0 SPOTFIRE_PYTHONSERVICE_VERSION=1.16.0 SPOTFIRE_RSERVICE_VERSION=1.16.0 SPOTFIRE_SERVER_VERSION=12.5.0 SPOTFIRE_TERRSERVICE_VERSION=1.16.0
Here, we need to update these versions with the correct values:
CLOUD_DEPLOYMENT_KIT_VERSION=1.5.0 SPOTFIRE_DEPLOYMENT_VERSION=12.0.0 SPOTFIRE_NETCORE_LANGUAGEPACKS_VERSION=12.0.0 SPOTFIRE_NETCORE_VERSION=12.0.0 SPOTFIRE_NODEMANAGER_VERSION=12.0.5 SPOTFIRE_PYTHONSERVICE_VERSION=1.12.5 SPOTFIRE_SERVER_VERSION=12.0.5 SPOTFIRE_TERRSERVICE_VERSION=1.12.5
Note that the SPOTFIRE_RSERVICE_VERSION has been removed, because the R-service is not supported in Spotfire Server v12.0.5. You may need to perform this step for other non-supported services, depending on the specific version of Spotfire Server you want to deploy.
Now edit ~/spotfire-cloud-deployment-kit/containers/Makefile, and inspect the IMAGES list:
IMAGES = spotfire-server spotfire-config spotfire-node-manager spotfire-base spotfire-workerhost spotfire-webplayer spotfire-automationservices spotfire-terrservice spotfire-pythonservice spotfire-rservice spotfire-deployment
Again, we'll need to remove spotfire-rservice from this list, since it is not supported in our desired Spotfire Server version. The resulting change would look like this:
IMAGES = spotfire-server spotfire-config spotfire-node-manager spotfire-base spotfire-workerhost spotfire-webplayer spotfire-automationservices spotfire-terrservice spotfire-pythonservice spotfire-deployment
Next, navigate to ~/spotfire-cloud-deployment-kit/helm/, and perform a search for the expected AppVersion for this CDK release (again, that is 12.5.0, as shown in the above screen capture).
$ cd ~/spotfire-cloud-deployment-kit/helm/ $ grep -ir --include *.yaml "12.5" charts/spotfire-automationservices/Chart.yaml:appVersion: "12.5.0" charts/spotfire-automationservices/values.yaml: tag: "12.5.0-1.5.0" charts/spotfire-server/Chart.yaml:appVersion: "12.5.0" charts/spotfire-server/values.yaml: tag: "12.5.0-1.5.0" charts/spotfire-server/values.yaml: tag: "12.5.0-1.5.0" charts/spotfire-server/values.yaml: tag: "12.5.0-1.5.0" charts/spotfire-server/values.yaml: tag: "12.5.0-1.5.0" charts/spotfire-webplayer/Chart.yaml:appVersion: "12.5.0" charts/spotfire-webplayer/values.yaml: tag: "12.5.0-1.5.0"
We will need to manually update each *.yaml file to replace v12.5.0 with the correct version. These *.yaml files will contain tags in the format: "12.5.0-1.5.0". You will need to change these to either "12.0.0-1.5.0" or "12.0.5-1.5.0", depending on the particular component in question. For example, the spotfire-deployment version is 12.0.0, but the spotfire-server version is 12.0.5.
Next, build the charts by running 'make' from ~/spotfire-cloud-deployment-kit/helm/.
You should now be able to deploy Spotfire Server 12.0.5 with Spotfire CDK 1.5.0, according to the
CDK documentation.