Custom Resource Definition
This topic describes the application configuration CRDs and the event configuration CRDs used for event scaling.
Application Configuration CRDs
The following are the application configuration CRDs for event scaling:
Parameter | Parameter Type | Description | Required |
---|---|---|---|
apiVersion | string | APIVersion defines the versioned schema of this representation of an object. | No |
kind | string | Kind is a string value representing the REST resource this object represents. | No |
metadata | object | Metadata for the resource. | No |
spec | object | ApplicationConfigSpec defines the desired state of ApplicationConfig. | Yes |
spec.applicationDetails | object | Contains details related to the application configuration. | No |
spec.applicationDetails.customServiceListRef | object | Reference to the custom service list ConfigMap. | No |
spec.applicationDetails.customServiceListRef.name | string | The name of the ConfigMap resource being referred to. | Yes |
spec.applicationDetails.customServiceListRef.namespace | string | Namespace of the ConfigMap resource being referred to. | Yes |
spec.applicationDetails.gitConfiguration | object | Defines global Git configuration settings. | No |
spec.applicationDetails.gitConfiguration.branch | string | Git branch. | No |
spec.applicationDetails.gitConfiguration.destinationContext | string | Context of the Git destination. | No |
spec.applicationDetails.gitConfiguration.gitProvider | string | Provider of the Git repository (e.g., github, bitbucket). | No |
spec.applicationDetails.gitConfiguration.maxReplicasCustomKey | string | Custom key for defining max replicas. | No |
spec.applicationDetails.gitConfiguration.minReplicasCustomKey | string | Custom key for defining min replicas. | No |
spec.applicationDetails.gitConfiguration.path | string | Path to the Git repository. | No |
spec.applicationDetails.gitConfiguration.repository | string | Git repository URL. | No |
spec.applicationDetails.gitConfiguration.secretRef | object | Reference to the Secret storing Git credentials. | No |
spec.applicationDetails.gitConfiguration.secretRef.name | string | The name of the Secret resource being referred to. | No |
spec.applicationDetails.gitConfiguration.secretRef.namespace | string | Namespace of the Secret resource being referred to. | No |
spec.applicationDetails.scalingPolicy | string | Defines scaling policy (options: gitops, in-cluster). | Yes |
spec.applicationDetails.services | array | List of services to be scaled. | Yes |
spec.applicationDetails.services[].destinationContext | string | Context for each service’s destination (default: in-cluster). | No |
spec.applicationDetails.services[].gitConfiguration | object | Git configuration settings for individual services. | No |
spec.applicationDetails.services[].gitConfiguration.branch | string | Git branch for the individual service. | No |
spec.applicationDetails.services[].gitConfiguration.destinationContext | string | Context of the Git destination for the service. | No |
spec.applicationDetails.services[].scaledObjectConfig | object | Configuration for scaled objects, includes deployment references. | No |
spec.applicationDetails.services[].scaledObjectConfig.deploymentRef | object | Reference to the deployment in the scaledObjectConfig. | Yes |
spec.applicationDetails.services[].scaledObjectConfig.deploymentRef.name | string | Name of the deployment in the scaled object config. | Yes |
spec.applicationDetails.services[].scaledObjectConfig.deploymentRef.namespace | string | Namespace of the deployment in the scaled object config. | Yes |
spec.argocdApplicationRef | object | Reference to the ArgoCD Application CR. | Yes |
spec.argocdApplicationRef.name | string | Name of the ArgoCD Application. | Yes |
spec.argocdApplicationRef.namespace | string | Namespace of the ArgoCD Application. | Yes |
status | object | Status of the ApplicationConfig resource. | No |
status.applicationConfigID | string | Unique identifier for the application configuration. | No |
status.applicationDetails | object | Details about the application. | No |
status.applicationDetails.customServiceListRef | object | Reference to the custom service list ConfigMap. | No |
status.applicationDetails.gitConfiguration | object | Git configuration for the application status. | No |
status.conditions | array | List of conditions related to the application configuration. | No |
status.conditions[].lastTransitionTime | date-time | Timestamp of the last condition transition. | Yes |
status.conditions[].message | string | Message describing the condition. | Yes |
status.conditions[].reason | string | Reason for the condition's last transition. | Yes |
status.conditions[].status | string | Status of the condition. | Yes |
status.conditions[].type | string | Type of condition. | Yes |
status.lastSyncTime | date-time | Indicates the last synchronization time for the application configuration. | No |
Event Configuration CRDs
The following are the event configuration CRDs for event scaling:
Parameter | Parameter Type | Description | Required |
---|---|---|---|
apiVersion | string | APIVersion defines the versioned schema of this representation of an object. | No |
kind | string | Kind is a string value representing the REST resource this object represents. | No |
metadata | object | Metadata for the resource. | No |
spec | object | EventConfigSpec defines the desired state of EventConfig. | Yes |
spec.applicationConfigName | string | ApplicationConfigName is the name of ApplicationConfig. | Yes |
spec.cooldownDuration | string | Cooldown duration for the event. | No |
spec.destinationContexts | array | List of destination contexts for the event, defaults to in-cluster . | No |
spec.displayName | string | Display name of the event for git operations. | Yes |
spec.eventEndTimestamp | date-time | End time of the event. | Yes |
spec.eventStartTimestamp | date-time | Start time of the event. | Yes |
spec.scalingConfiguration | object | Configuration defining scaling parameters for the event. | No |
spec.scalingConfiguration.maxScalingFactor | string | Highest scaling factor for the event, supporting decimal values. | No |
spec.scalingConfiguration.minScalingFactor | string | Smallest scaling factor for the event, supporting decimal values. | No |
spec.scalingRatioConfigName | string | Name of the ScalingRatioConfig. | No |
status | object | EventConfigStatus defines the observed state of EventConfig. | No |
status.conditions | array | List of conditions related to the event configuration. | No |
status.conditions[].lastTransitionTime | date-time | Timestamp of the last condition transition. | Yes |
status.conditions[].message | string | Message describing the condition. | Yes |
status.conditions[].reason | string | Reason for the condition's last transition. | Yes |
status.conditions[].status | string | Status of the condition. | Yes |
status.conditions[].type | string | Type of condition. | Yes |
status.eventID | string | Unique identifier for the event. | No |
status.eventProgressStatus | object | Status details of the event's progress. | No |
status.eventProgressStatus.eventStatus | string | Current status of the event. | No |
status.eventProgressStatus.inProgress | boolean | Whether the event is currently in progress. | No |
status.eventProgressStatus.isEventRaised | boolean | Indicates if the event has been raised. | No |
status.eventProgressStatus.isPRmerged | boolean | Indicates if the pull request for the event has been merged. | No |
status.eventProgressStatus.pullRequestURL | string | URL of the pull request associated with the event. | No |
status.eventProgressStatus.retryCount | integer | Number of retries for the event. | No |
status.lastSyncTime | date-time | Last synchronization time for the event configuration. | No |
status.parentEventID | string | Identifier of the parent event, if any. | No |
status.scalingPolicy | string | Defines scaling policy (options: gitops, in-cluster). | No |
status.serviceConfigs | array | List of configurations for services impacted by the event. | No |
status.serviceConfigs[].appliedScalingRatio | string | Scaling ratio applied to the service for this event. | No |
status.serviceConfigs[].destinationContext | string | Context in which the service resides. | No |
status.serviceConfigs[].eventProgressStatus | object | Progress status details specific to the service configuration. | No |
status.serviceConfigs[].eventProgressStatus.eventStatus | string | Status of the service's event progress. | No |
status.serviceConfigs[].eventProgressStatus.inProgress | boolean | Whether the service's event is in progress. | No |
status.serviceConfigs[].eventProgressStatus.isEventRaised | boolean | Indicates if the event has been raised for the service. | No |
status.serviceConfigs[].eventProgressStatus.isPRmerged | boolean | Indicates if the pull request for the service's event has been merged. | No |
status.serviceConfigs[].eventProgressStatus.pullRequestURL | string | URL of the pull request associated with the service's event. | No |
status.serviceConfigs[].eventProgressStatus.retryCount | integer | Number of retries for the service's event. | No |
status.serviceConfigs[].kind | string | Kind of the service impacted by the event. | Yes |
status.serviceConfigs[].name | string | Name of the service impacted by the event. | Yes |
status.serviceConfigs[].namespace | string | Namespace of the service impacted by the event. | No |
status.serviceConfigs[].originalMax | integer (int32) | Original maximum replica count for the service before scaling. | Yes |
status.serviceConfigs[].originalMin | integer (int32) | Original minimum replica count for the service before scaling. | Yes |