8.12 C3 AI Platform Install and Upgrade Requirements
Installation, Upgrade, and Patch Information
This page includes installation guides, information about upgrading, and details of third-party dependencies and artifacts for each patch. Please note this page is updated frequently with the latest information.
8.12 C3 AI Installation Guides
C3 AI supports flexible deployment options including C3 AI-managed or customer-managed cloud deployments on Amazon Web Services (AWS), Microsoft Azure (Azure), and Google Cloud Platform (GCP). The choice of deployment option will have implications on project timelines, service-level agreement (SLA), and RACI requirements.
Patches will only include backwards compatible fixes. See 8.12 Patch Notes for details of fixes, known issues, and CVEs. For more information see Deployment Requirements.
C3 AI VS Code Extension
- VS Code version: at least 1.98
- Node version: 20.18.0+
- C3.AI Extension version for VS Code: 4.2+ Download the latest version here https://marketplace.visualstudio.com/items?itemName=C3ai.c3-ai-dx-v8
Python versions supported
- Python versions: 3.12 (Note that C3 Agentic AI Platform defaults to Python version 3.12, see Upgrade Python in the C3 Agentic AI Platform.)
Pre 8.12 Environment/Application Upgrade
Step 1 - Pre-upgrade Checklist
Check the following before upgrading environments and application to the latest release. Note that 8.4, 8.5, 8.6, 8.7, and 8.8 environments and applications are not supported in an 8.12 cluster.
- In 8.12:
- This release requires Kubernetes 1.35
- Recommendation to Upgrade Python Version: Change Python to version 3.12. See Python 3.12 Upgrade Guide.
- Azure Application Gateway HTTP/2 Connection Reset: On AKS clusters using Azure Application Gateway, contact Azure Support to increase
http2MaxStreamRatefrom 200 to 1000 streams/second andHTTP/2 requests per connectionfrom 1000 to 10000.
- In 8.11:
- This release requires Kubernetes 1.34
- Recommendation to Upgrade Python Version: Change Python to version 3.12. See Python 3.12 Upgrade Guide.
- Azure Application Gateway HTTP/2 Connection Reset: On AKS clusters using Azure Application Gateway, contact Azure Support to increase
http2MaxStreamRatefrom 200 to 1000 streams/second andHTTP/2 requests per connectionfrom 1000 to 10000.
- In 8.10:
- This release requires Kubernetes 1.34
- All environments and applications must be running one of the following minimum versions before upgrading: ≥8.7.20, ≥8.8.16, ≥8.9.8. Upgrading from earlier versions is not supported.
- Recommendation to Upgrade Python Version: Change Python to version 3.12. See Python 3.12 Upgrade Guide.
- Azure Application Gateway HTTP/2 Connection Reset: On AKS clusters using Azure Application Gateway, contact Azure Support to increase
http2MaxStreamRatefrom 200 to 1000 streams/second andHTTP/2 requests per connectionfrom 1000 to 10000.
- In 8.9:
- This release requires Kubernetes 1.34
- CSS Library Changes:
cssLibrary/src/stylesheets/*.scssMove your files tocssLibrary/resource/stylesheets/*.scssto ensure incremental bundling works properly. - Custom React Components CSS Styling: Changes for HTML
<button>tag in 8.9: Default CSS styles applied directly to thebuttontag have been removed. Add the data attributedata-c3-buttonto your HTML button tag to keep using default button styling. - UiSdlExtraFilesInvalidatingCacheLoader: Disabled by default to overcome bundling memory and performance issues. Files in
ui/c3/src/folders can no longer be imported through@c3/ui/and are no longer flattened during bundling. Import these files from@c3/app/ui/src/instead using their full path. If necessary, you can re-enable it by settingUiSdlConfig#infrastructure.disableExtraFilesLoadertofalse, but note this will significantly decrease performance. Prefer changing your imports. - Support Removed For:
UiSdlLayoutNavMenu→ use insteadUiSdlGridLayout,UiSdlLayoutContainer→ use insteadUiSdlGridLayout,UiSdlContentLayout→ use insteadUiSdlGridLayout,UiSdlLayoutNavigation→ useUiSdlGridLayout,UiSdlLayoutSidePanel→ useUiSdlGridLayout.
Step 2 - Environment/Application Upgrade
See documentation Upgrade your environment and application
Step 3 - After Shared Environment (MNE) Upgrade
- Restart JupyterHub after an upgrade
C3 AI Platform Versions and Libraries
Supported upgrade paths: 8.9._ -> 8.10._ -> 8.11._ -> 8.12._
The following information provides detailed steps for upgrading to version 8.12 of the C3 AI Platform. See also the 8.12 Patch Notes for fixes, known issues, and CVEs.
Version Number: 8.12.0+2
Released: November 9, 2026
From c3/c3 Console
Set the target server version and root package version for the cluster. Run the following commands from the C3 AI Console to update the cluster-level configuration before upgrading environments and applications.
C3.app()
.withConfiguredServerVersion('8.12.0+2')
.withRootPkgVersion('8.12.0+2')
.setConfig(ConfigOverride.CLUSTER);
C3.env().withConfiguredServerVersion('8.12.0+2').setConfig(ConfigOverride.CLUSTER);
Cluster.Config.make().withMinSupportedVersion('8.8').setConfig();If cluster is configure to use OIDC, you MUST set issuer and audiences on OidcIdpConfig.
OidcIdpConfig.forId('<domain>').withIssuer('<issuer>').setConfig('CLUSTER');
OidcIdpConfig.forId('<domain>').withAudiences(['<audience>']).setConfig('CLUSTER');Upgrade Modules and Charts
See Download and Apply Terraform Modules
- Terraform Modules:
| Terraform Modules | Version | Source |
|---|---|---|
gcp-bootstrap | 3.0.11 | jfrog.c3.ai/tf-registry__c3/gcp/c3//modules/bootstrap |
gcp-c3cluster | 3.0.11 | jfrog.c3.ai/tf-registry__c3/gcp/c3 |
aws-bootstrap | 3.0.21 | jfrog.c3.ai/tf-registry__c3/aws/c3//modules/bootstrap |
aws-c3cluster | 3.0.21 | jfrog.c3.ai/tf-registry__c3/aws/c3 |
azure-bootstrap | 3.0.21 | jfrog.c3.ai/tf-registry__c3/azure/c3//modules/bootstrap |
azure-c3cluster | 3.0.21 | jfrog.c3.ai/tf-registry__c3/azure/c3 |
- C3 Server K8s for Kubernetes-based deployments: 1.35
- Cloud SQL:
- Cloud SQL: 15
- Helm Charts:
- C3ASERVER_VERSION: 8.12.0+2
- C3AIOPS_VERSION: 2.13.104
- C3CRDS_VERSION: 1.12.25
Ensure c3/c3 is upgraded to 8.12.0+2 before proceeding.
SNE Studio
From c3/c3 Console
Upgrade studio environment.
var env = Env.forName("<studio_env_name>");
var store = ConfigStore.builder().appId(env.id + "-c3").confType(App.NodePool.Config).build();
store.setConfigValue('singlenode', "autoScale.enabled", false, 'APP', false);
store.setConfigValue('singlenode', "hardwareProfile.cpu", 6, 'APP', false);
store.setConfigValue('singlenode', "hardwareProfile.diskGb", 40, 'APP', false);
store.setConfigValue('singlenode', "hardwareProfile.diskGbLimit", 40, 'APP', false);
store.setConfigValue('singlenode', "hardwareProfile.memoryMb", 48000, 'APP', false);
store.setConfigValue('singlenode', "hardwareProfile.memoryMbLimit", 48000, 'APP', false);
store.setConfigValue('singlenode', "hardwareProfile.hardwareAvailability", "high", 'APP', false);
store.setConfigValue('singlenode', "sharedStorage.enabled", true, 'APP', false);
store.setConfigValue('singlenode', "sharedStorage.sizeGb", "100Gi", 'APP', false);
store.setConfigValue('singlenode', "jvm.numVertxWorkers", 200, 'APP', false);
store.setConfigValue('singlenode', "jvm.jvmMaxMemoryPct", 0.7, 'APP', false);
store.setConfigValue('singlenode', "doNotEvict", true, 'APP', false);
// queues.maxConcurrentComputes default value is 8, increase to 18 for c3 code
store.setConfigValue('singlenode', "queues.maxConcurrentComputes", 18, 'APP', false);
env.upgradeApp(env.c3App(), {serverVersion: "8.12.0+2"});Configure cluster to connect to a centrally hosted code assistant service. Client should have
Genai.ChatService.Client and Genai.FeedbackService.Client roles in service.
var serviceAppId = "ci-prd-narwhal";
var serviceAppUrl = "https://ci.c3ci.cloud/prd/narwhal/";
Microservice.Config.forName("GenAiGenerativeProxyMicroservice").clearConfigAndSecretAllOverrides();
Microservice.Config.forName("GenAiGenerativeProxyMicroservice").setConfigValue("serviceAppUrl", serviceAppUrl, "CLUSTER");
Microservice.Config.forName("GenAiGenerativeProxyMicroservice").setConfigValue("appId", serviceAppId, "CLUSTER");
Microservice.Config.forName("AiAssistant").clearConfigAndSecretAllOverrides();
Microservice.Config.forName('AiAssistant').setConfigValue("serviceAppUrl", serviceAppUrl, "CLUSTER");
Microservice.Config.forName("AiAssistant").setConfigValue("appId", serviceAppId, "CLUSTER");
AiAssistant.Config.inst().setConfigValue("middlewareProxyName", "lambdaProxy", "CLUSTER");
AiAssistant.Config.inst().setConfigValue('enabled', true, "CLUSTER");
var lambdaCode = function callChat(params) {
var fieldName = params.question ? 'question' : 'query';
params = params.withField(fieldName, params.toJsonString());
return GenAiGenerativeProxy.make().completion(params);
}
LambdaGenerativeProxy.fromLambda("lambdaProxy", lambdaCode, "CLUSTER");
Microservice.Config.forName("AiAssistantFeedback").setConfigValue("appId", serviceAppId, "CLUSTER");
Microservice.Config.forName("AiAssistantFeedback").setConfigValue("serviceAppUrl", serviceAppUrl, "CLUSTER");
Microservice.Config.forName("AiAssistantFeedback").setConfigValue("serviceTypeName", 'CodeAssistantFeedbackService', "CLUSTER");
AiAssistant.Config.getConfig().setConfigValue("feedbackEnabled", true);From studio environment c3 Console
Run Studio.deploy to make sure the studio and its services are all in a proper state.
Studio.deploy("prod");Configure Studio notification service (this should only be run in CLUSTER level studios).
Studio.configureNotificationService();Verify Upgrade
Run sanity check from c3/c3 console.
Js.exec('ClusterSanityCheck.runAllTests({"studioEnvName": "ai"})')BOM
c3aiacr.azurecr.io/c3.ai/application-gateway-kubernetes-ingress-fips:1.9.15-r0-202610241926
c3aiacr.azurecr.io/c3.ai/aws-load-balancer-controller-fips:3.6.2-r0-202610252333
c3aiacr.azurecr.io/c3.ai/azure-metrics-exporter-fips:25.12.0-r5-202610210224
c3aiacr.azurecr.io/c3.ai/bundled-prometheus-fips:3.15.1-r0-202610240638
c3aiacr.azurecr.io/c3.ai/c3-cass-operator-fips:1.32.0-r11-202610251444
c3aiacr.azurecr.io/c3.ai/c3-cassandra-medusa-fips:0.31.0-r0-202610252150
c3aiacr.azurecr.io/c3.ai/c3-k8ssandra-operator-fips:1.33.0-r5-202610240341
c3aiacr.azurecr.io/c3.ai/c3-management-api-for-apache-cassandra-jre-bcfips2:4.1.12-v0.1.127-r0-202610251241
c3aiacr.azurecr.io/c3.ai/cassandra-reaper-jre-bcfips2:5.0.1-r12-202610250845
c3aiacr.azurecr.io/c3.ai/cert-manager-cainjector-fips:1.21.3-r0-202610241130
c3aiacr.azurecr.io/c3.ai/cert-manager-controller-fips:1.21.3-r0-202610241130
c3aiacr.azurecr.io/c3.ai/cert-manager-webhook-fips:1.21.3-r0-202610241129
c3aiacr.azurecr.io/c3.ai/chainguard-base-fips:latest-202610201851
c3aiacr.azurecr.io/c3.ai/cluster-autoscaler-fips:1.36.1-r15-202610232308
c3aiacr.azurecr.io/c3.ai/confluent-kafka-jre-bcfips2:8.5.0.362-r0-202610252318
c3aiacr.azurecr.io/c3.ai/dcgm-exporter-fips:4.6.0.4.8.3-r3-202608311618
c3aiacr.azurecr.io/c3.ai/external-secrets-fips:2.14.0-r0-202610241527
c3aiacr.azurecr.io/c3.ai/filebeat-fips:8.19.23-r5-202610251707
c3aiacr.azurecr.io/c3.ai/grafana-operator-fips:5.25.0-r8-202610240147
c3aiacr.azurecr.io/c3.ai/istio-pilot-fips:1.25.3-202506040304
c3aiacr.azurecr.io/c3.ai/istio-proxy-fips:1.25.3-202506040304
c3aiacr.azurecr.io/c3.ai/k8ssandra-client-fips:0.9.2-r0-202610250046
c3aiacr.azurecr.io/c3.ai/logstash-oss-with-opensearch-output-plugin:8.19.23-r2-202610260008
c3aiacr.azurecr.io/c3.ai/opensearch-dashboards-fips:3.9.0-r2-202610252156
c3aiacr.azurecr.io/c3.ai/postgres-iamguarded-fips-with-pgvector:15-202610191539
c3aiacr.azurecr.io/c3.ai/prometheus-beat-exporter-fips:0.4.0-r39-202610240336
c3aiacr.azurecr.io/c3.ai/prometheus-postgres-exporter-iamguarded:0.20.1-r10-202610250854
c3aiacr.azurecr.io/c3.ai/prometheus-stackdriver-exporter-fips:0.19.0-r14-202610190621
c3aiacr.azurecr.io/c3.ai/prometheus-yet-another-cloudwatch-exporter-fips:0.68.0-r3-202610240324
c3aiacr.azurecr.io/c3:8.12.0_2
c3aiacr.azurecr.io/c3aiops:2.13.104
c3aiacr.azurecr.io/c3jupyter/c3-jupyterlab:1.7.9
c3aiacr.azurecr.io/c3vsce/persona3-vscode-server:0.7.6
c3aiacr.azurecr.io/chainguard/configurable-http-proxy-fips:5.3.0-202609171903
c3aiacr.azurecr.io/chainguard/jupyterhub-k8s-hub-fips:4.4.2-202609210827
c3aiacr.azurecr.io/exmachina/c3-vad-kube:8.12.0.10011
c3aiacr.azurecr.io/grafana/grafana:7.5.17-2
c3aiacr.azurecr.io/ingress-nginx-controller-fips:1.13.9-202606221337
c3aiacr.azurecr.io/opensearchproject/c3-opensearch:3.9.0-r6-202610252357
c3aiacr.azurecr.io/selenium/standalone-chrome-for-testing:4.40.0-20260202
c3aiacr.azurecr.io/tigera/operator:v1.42.0
c3aiacr.azurecr.io/pause:3.10
c3aiacr.azurecr.io/c3genesis/c3genesis-rproxy:1.2.13-202610171749
c3aiacr.azurecr.io/c3genesis/c3genesis-ui:2.7.0-202610171748
c3aiacr.azurecr.io/c3genesis/genesis-agent:4.5.0
c3aiacr.azurecr.io/c3ui/k6-node:0.0.2
c3aiacr.azurecr.io/image-puller:1.0.3