C3 AI Documentation Home

Set Admin-level Build System Configurations

If you manage development environments and oversee application projects, you can set certain build system configurations in C3 AI Studio. These configurations determine behaviors in the build pipeline regarding executors, storage, timeouts, and more.

The following table provides information and guidance on setting build system configurations:

ConfigurationInformation and guidance
maxExecutorsPerBuildSet the maximum number of executors a single build can utilize to ensure fair resource allocation during peak hours, and that a certain number of builds can always run in parallel even if individual builds could use more executors. A too low value can cause builds to take too long. A too high value can cause a small number of builds to take up too many resources.
executorIdleTimeoutSet the maximum time an executor lives if not running a task. Set a timeout period before terminating an executor that can no longer communicate with the service and start tasks.
defaultStepTimeoutSet a default timeout period for steps in the pipeline. If you create a step without specifying a timeout period, this value is the default setting. Step timeouts prevent a bad step from running indefinitely and wasting resources.
defaultExecutorStartEnvSpecSet the specification for starting environments to the most common profile for convenience. See the Cluster.StartEnvSpec Type and App.NodePool.Config Type documentation to learn more about this configuration.
executorMaxAgeSet a maximum age for executors to prevent state accumulation or state corruption over long periods of time.
gracefulTerminationTimeoutSet how long builds have to gracefully terminate before forceful termination. Graceful termination allows running steps to handle interruption exceptions.
buildTimeoutSet the amount of time a build can run before the system aborts it to prevent builds from remaining in a particular state forever.
maxStashSizeSet the amount of disk space for storing shared files and intermediate data. If the total storage for a build exceeds this amount upon finishing a write, the system deletes the entire build stash and returns an error. This setting applies to entries created with the Jarvis.Build.stashFor method.
studioAppEndpointSet the base URL for commit status updates in the source control provider.
maxNumberOfExecutorsSet the maximum number of executors that can consume compute resources to run builds at any given time. If you have many builds pending in the queue, consider increasing this number. For standard deployments, this value should not exceed 200.
executorInitializationTimeoutSet the maximum amount of time an executor can be in an initializing state before forceful termination.
maxStashEntriesSet the maximum number of stash files that an individual build can store at any given time. If the total stash entries for a build exceeds this amount upon finishing a write, the system deletes all stash entries for the build and returns an error.
allowBuildWithUnsafeServerVersionDetermine if a build can run with executors on a server version higher than the service server version. The system does not support forward compatibility, so version incompatibility between build executors and the service can cause builds to fail. If you enable this setting, expect builds to fail. Consider enabling this setting if you want to preview a new server version.

Requirements

Have the JarvisAdmin or StudioAdmin role.

Set admin-level build system configurations

Here is how to adjust the values for these configurations:

  1. In C3 AI Studio, navigate to the Releases page.
  2. Select Admin Configurations. This page displays admin-level configurations and their current values.
  3. Scroll over a configuration you want to set and select the edit icon. A modal provides a description and a value field.
  4. Enter a configuration value.
  5. Select Save.
Was this page helpful?