Skip to main content

API Documentation

Top

service/v1alpha1

warning

Stability is not guaranteed.

Method NameRequest TypeResponse Type
GetVersionInfoGetVersionInfoRequestGetVersionInfoResponse
GetConfigGetConfigRequestGetConfigResponse
GetPublicConfigGetPublicConfigRequestGetPublicConfigResponse
AdminLoginAdminLoginRequestAdminLoginResponse
CreateResourceCreateResourceRequestCreateResourceResponse
CreateOrUpdateResourceCreateOrUpdateResourceRequestCreateOrUpdateResourceResponse
UpdateResourceUpdateResourceRequestUpdateResourceResponse
DeleteResourceDeleteResourceRequestDeleteResourceResponse
ListStagesListStagesRequestListStagesResponse
ListImagesListImagesRequestListImagesResponse
GetStageGetStageRequestGetStageResponse
WatchStagesWatchStagesRequestWatchStagesResponse(stream)
DeleteStageDeleteStageRequestDeleteStageResponse
RefreshStageRefreshStageRequestRefreshStageResponse
GetClusterConfigGetClusterConfigRequestGetClusterConfigResponse
DeleteClusterConfigDeleteClusterConfigRequestDeleteClusterConfigResponse
WatchClusterConfigWatchClusterConfigRequestWatchClusterConfigResponse(stream)
RefreshClusterConfigRefreshClusterConfigRequestRefreshClusterConfigResponse
ListPromotionsListPromotionsRequestListPromotionsResponse
WatchPromotionsWatchPromotionsRequestWatchPromotionsResponse(stream)
GetPromotionGetPromotionRequestGetPromotionResponse
WatchPromotionWatchPromotionRequestWatchPromotionResponse(stream)
AbortPromotionAbortPromotionRequestAbortPromotionResponse
DeleteProjectDeleteProjectRequestDeleteProjectResponse
GetProjectGetProjectRequestGetProjectResponse
ListProjectsListProjectsRequestListProjectsResponse
GetProjectConfigGetProjectConfigRequestGetProjectConfigResponse
DeleteProjectConfigDeleteProjectConfigRequestDeleteProjectConfigResponse
WatchProjectConfigWatchProjectConfigRequestWatchProjectConfigResponse(stream)
RefreshProjectConfigRefreshProjectConfigRequestRefreshProjectConfigResponse
ApproveFreightApproveFreightRequestApproveFreightResponse
DeleteFreightDeleteFreightRequestDeleteFreightResponse
GetFreightGetFreightRequestGetFreightResponse
WatchFreightWatchFreightRequestWatchFreightResponse(stream)
PromoteToStagePromoteToStageRequestPromoteToStageResponse
PromoteDownstreamPromoteDownstreamRequestPromoteDownstreamResponse
QueryFreightQueryFreightRequestQueryFreightResponse
UpdateFreightAliasUpdateFreightAliasRequestUpdateFreightAliasResponse
ReverifyReverifyRequestReverifyResponse
AbortVerificationAbortVerificationRequestAbortVerificationResponse
ListWarehousesListWarehousesRequestListWarehousesResponse
GetWarehouseGetWarehouseRequestGetWarehouseResponse
WatchWarehousesWatchWarehousesRequestWatchWarehousesResponse(stream)
DeleteWarehouseDeleteWarehouseRequestDeleteWarehouseResponse
RefreshWarehouseRefreshWarehouseRequestRefreshWarehouseResponse
CreateCredentialsCreateCredentialsRequestCreateCredentialsResponse
DeleteCredentialsDeleteCredentialsRequestDeleteCredentialsResponse
GetCredentialsGetCredentialsRequestGetCredentialsResponse
ListCredentialsListCredentialsRequestListCredentialsResponse
UpdateCredentialsUpdateCredentialsRequestUpdateCredentialsResponse
ListProjectSecretsListProjectSecretsRequestListProjectSecretsResponse
CreateProjectSecretCreateProjectSecretRequestCreateProjectSecretResponse
UpdateProjectSecretUpdateProjectSecretRequestUpdateProjectSecretResponse
DeleteProjectSecretDeleteProjectSecretRequestDeleteProjectSecretResponse
ListConfigMapsListConfigMapsRequestListConfigMapsResponse
GetConfigMapGetConfigMapRequestGetConfigMapResponse
ListAnalysisTemplatesListAnalysisTemplatesRequestListAnalysisTemplatesResponse
GetAnalysisTemplateGetAnalysisTemplateRequestGetAnalysisTemplateResponse
DeleteAnalysisTemplateDeleteAnalysisTemplateRequestDeleteAnalysisTemplateResponse
ListClusterAnalysisTemplatesListClusterAnalysisTemplatesRequestListClusterAnalysisTemplatesResponse
GetClusterAnalysisTemplateGetClusterAnalysisTemplateRequestGetClusterAnalysisTemplateResponse
DeleteClusterAnalysisTemplateDeleteClusterAnalysisTemplateRequestDeleteClusterAnalysisTemplateResponse
GetAnalysisRunGetAnalysisRunRequestGetAnalysisRunResponse
GetAnalysisRunLogsGetAnalysisRunLogsRequestGetAnalysisRunLogsResponse(stream)
ListProjectEventsListProjectEventsRequestListProjectEventsResponse
ListPromotionTasksListPromotionTasksRequestListPromotionTasksResponse
ListClusterPromotionTasksListClusterPromotionTasksRequestListClusterPromotionTasksResponse
GetPromotionTaskGetPromotionTaskRequestGetPromotionTaskResponse
GetClusterPromotionTaskGetClusterPromotionTaskRequestGetClusterPromotionTaskResponse
CreateRoleCreateRoleRequestCreateRoleResponse
DeleteRoleDeleteRoleRequestDeleteRoleResponse
GetRoleGetRoleRequestGetRoleResponse
GrantGrantRequestGrantResponse
ListRolesListRolesRequestListRolesResponse
RevokeRevokeRequestRevokeResponse
UpdateRoleUpdateRoleRequestUpdateRoleResponse
ListClusterSecretsListClusterSecretsRequestListClusterSecretsResponse
CreateClusterSecretCreateClusterSecretRequestCreateClusterSecretResponse
UpdateClusterSecretUpdateClusterSecretRequestUpdateClusterSecretResponse
DeleteClusterSecretDeleteClusterSecretRequestDeleteClusterSecretResponse

AbortPromotionRequest

AbortPromotionRequest is the request for canceling a running promotion process.

FieldTypeDescription
projectstringproject is the name of the project containing the promotion.
namestringname is the name of the promotion to abort.

AbortPromotionResponse

AbortPromotionResponse is the response after aborting a promotion. explicitly empty

AbortVerificationRequest

AbortVerificationRequest is the request for canceling running verification processes for a stage.

FieldTypeDescription
projectstringproject is the name of the project containing the stage.
stagestringstage is the name of the stage whose verification should be aborted.

AbortVerificationResponse

AbortVerificationResponse is the response after aborting verification. explicitly empty

AdminLoginRequest

AdminLoginRequest contains credentials for admin authentication.

FieldTypeDescription
passwordstringpassword is the admin password.

AdminLoginResponse

AdminLoginResponse contains the authentication token for admin access.

FieldTypeDescription
id_tokenstringid_token is the JWT token for authenticated admin access.

ApproveFreightRequest

ApproveFreightRequest is the request for approving freight for promotion to a stage.

FieldTypeDescription
projectstringproject is the name of the project containing the freight.
namestringname is the name of the freight to approve.
aliasstringalias is the alias of the freight to approve.
stagestringstage is the name of the stage for which to approve the freight.

ApproveFreightResponse

ApproveFreightResponse is the response after approving freight. explicitly empty

ArgoCDShard

ArgoCDShard represents configuration for a specific ArgoCD shard.

FieldTypeDescription
urlstringurl is the base URL of the ArgoCD server.
namespacestringnamespace is the Kubernetes namespace where ArgoCD is installed.

Claims

Claims represents a collection of OIDC claims for role-based access control.

FieldTypeDescription
claimsgithub.com.akuity.kargo.api.rbac.v1alpha1.ClaimNote: oneof and repeated do not work together claims is the list of claims associated with a user or service account.

ComponentVersions

ComponentVersions contains version information for different Kargo components.

FieldTypeDescription
serverVersionInfoserver contains version information for the Kargo server.
cliVersionInfocli contains version information for the Kargo CLI.

CreateClusterSecretRequest

CreateClusterSecretRequest is the request for creating a new cluster-level secret.

FieldTypeDescription
namestringname is the name of the cluster secret to create.
dataCreateClusterSecretRequest.DataEntrydata contains the key-value pairs that make up the secret data.

CreateClusterSecretRequest.DataEntry

FieldTypeDescription
keystring
valuestring

CreateClusterSecretResponse

CreateClusterSecretResponse contains the newly created cluster secret.

FieldTypeDescription
secretk8s.io.api.core.v1.Secretsecret is the created cluster-level Kubernetes Secret.

CreateCredentialsRequest

CreateCredentialsRequest is the request for creating new credentials for accessing external resources.

FieldTypeDescription
projectstringproject is the name of the project where the credentials will be stored.
namestringname is the name of the credentials.
descriptionstringdescription is a human-readable description of the credentials.
typestringtype specifies the credential type (git, helm, image).
repo_urlstringrepo_url is the URL of the repository or registry these credentials apply to.
repo_url_is_regexboolrepo_url_is_regex indicates whether repo_url should be treated as a regular expression.
usernamestringusername is the username for authentication.
passwordstringpassword is the password or token for authentication.

CreateCredentialsResponse

CreateCredentialsResponse contains the newly created credentials.

FieldTypeDescription
credentialsk8s.io.api.core.v1.Secretcredentials is the created Kubernetes Secret containing the credentials.

CreateOrUpdateResourceRequest

CreateOrUpdateResourceRequest contains Kubernetes resource manifests to be created or updated.

FieldTypeDescription
manifestbytesmanifest contains the raw Kubernetes resource manifests in YAML or JSON format.

CreateOrUpdateResourceResponse

CreateOrUpdateResourceResponse contains the results of creating or updating multiple resources.

FieldTypeDescription
resultsCreateOrUpdateResourceResultresults contains the outcome for each resource create or update attempt.

CreateOrUpdateResourceResult

CreateOrUpdateResourceResult represents the result of attempting to create or update a single resource.

FieldTypeDescription
created_resource_manifestbytescreated_resource_manifest contains the newly created resource manifest.
updated_resource_manifestbytesupdated_resource_manifest contains the updated existing resource manifest.
errorstringerror contains the error message if the operation failed.

CreateProjectSecretRequest

CreateProjectSecretRequest is the request for creating a new secret within a project.

FieldTypeDescription
projectstringproject is the name of the project where the secret will be created.
namestringname is the name of the secret to create.
descriptionstringdescription is a human-readable description of the secret.
dataCreateProjectSecretRequest.DataEntrydata contains the key-value pairs that make up the secret data.

CreateProjectSecretRequest.DataEntry

FieldTypeDescription
keystring
valuestring

CreateProjectSecretResponse

CreateProjectSecretResponse contains the newly created project secret.

FieldTypeDescription
secretk8s.io.api.core.v1.Secretsecret is the created Kubernetes Secret within the project.

CreateResourceRequest

CreateResourceRequest contains Kubernetes resource manifests to be created.

FieldTypeDescription
manifestbytesmanifest contains the raw Kubernetes resource manifests in YAML or JSON format.

CreateResourceResponse

CreateResourceResponse contains the results of creating multiple resources.

FieldTypeDescription
resultsCreateResourceResultresults contains the outcome for each resource creation attempt.

CreateResourceResult

CreateResourceResult represents the result of attempting to create a single resource.

FieldTypeDescription
created_resource_manifestbytescreated_resource_manifest contains the successfully created resource manifest.
errorstringerror contains the error message if resource creation failed.

CreateRoleRequest

CreateRoleRequest is the request for creating a new RBAC role.

FieldTypeDescription
rolegithub.com.akuity.kargo.api.rbac.v1alpha1.Rolerole is the Role resource to create.

CreateRoleResponse

CreateRoleResponse contains the newly created role information.

FieldTypeDescription
rolegithub.com.akuity.kargo.api.rbac.v1alpha1.Rolerole is the created Role resource.

DeleteAnalysisTemplateRequest

DeleteAnalysisTemplateRequest is the request for deleting an analysis template.

FieldTypeDescription
projectstringproject is the name of the project containing the analysis template.
namestringname is the name of the analysis template to delete.

DeleteAnalysisTemplateResponse

DeleteAnalysisTemplateResponse is the response returned after deleting an analysis template. explicitly empty

DeleteClusterAnalysisTemplateRequest

DeleteClusterAnalysisTemplateRequest is the request for deleting a cluster analysis template.

FieldTypeDescription
namestringname is the name of the cluster analysis template to delete.

DeleteClusterAnalysisTemplateResponse

DeleteClusterAnalysisTemplateResponse is the response returned after deleting a cluster analysis template. explicitly empty

DeleteClusterConfigRequest

explicitly empty

DeleteClusterConfigResponse

explicitly empty

DeleteClusterSecretRequest

DeleteClusterSecretRequest is the request for deleting a cluster secret.

FieldTypeDescription
namestringname is the name of the cluster secret to delete.

DeleteClusterSecretResponse

DeleteClusterSecretResponse is the response returned after deleting a cluster secret. explicitly empty

DeleteCredentialsRequest

DeleteCredentialsRequest is the request for deleting existing credentials.

FieldTypeDescription
projectstringproject is the name of the project containing the credentials.
namestringname is the name of the credentials to delete.

DeleteCredentialsResponse

DeleteCredentialsResponse is the response returned after deleting credentials. explicitly empty

DeleteFreightRequest

DeleteFreightRequest is the request for deleting freight.

FieldTypeDescription
projectstringproject is the name of the project containing the freight.
namestringname is the name of the freight to delete.
aliasstringalias is the alias of the freight to delete.

DeleteFreightResponse

DeleteFreightResponse is the response after deleting freight. explicitly empty

DeleteProjectConfigRequest

DeleteProjectConfigRequest is the request for removing project-level configuration.

FieldTypeDescription
projectstringproject is the name of the project to delete configuration for.

DeleteProjectConfigResponse

DeleteProjectConfigResponse is the response after deleting project configuration. explicitly empty

DeleteProjectRequest

DeleteProjectRequest is the request for deleting a project and all associated resources.

FieldTypeDescription
namestringname is the name of the project to delete.

DeleteProjectResponse

DeleteProjectResponse is the response after deleting a project. explicitly empty

DeleteProjectSecretRequest

DeleteProjectSecretRequest is the request for deleting a project secret.

FieldTypeDescription
projectstringproject is the name of the project containing the secret.
namestringname is the name of the secret to delete.

DeleteProjectSecretResponse

DeleteProjectSecretResponse is the response returned after deleting a project secret. explicitly empty

DeleteResourceRequest

DeleteResourceRequest contains Kubernetes resource manifests to be deleted.

FieldTypeDescription
manifestbytesmanifest contains the raw Kubernetes resource manifests in YAML or JSON format.

DeleteResourceResponse

DeleteResourceResponse contains the results of deleting multiple resources.

FieldTypeDescription
resultsDeleteResourceResultresults contains the outcome for each resource deletion attempt.

DeleteResourceResult

DeleteResourceResult represents the result of attempting to delete a single resource.

FieldTypeDescription
deleted_resource_manifestbytesdeleted_resource_manifest contains the successfully deleted resource manifest.
errorstringerror contains the error message if resource deletion failed.

DeleteRoleRequest

DeleteRoleRequest is the request for deleting an RBAC role.

FieldTypeDescription
projectstringproject is the name of the project containing the role.
namestringname is the name of the role to delete.

DeleteRoleResponse

DeleteRoleResponse is the response returned after deleting a role. explicitly empty

DeleteStageRequest

DeleteStageRequest is the request for deleting a stage.

FieldTypeDescription
projectstringproject is the name of the project containing the stage.
namestringname is the name of the stage to delete.

DeleteStageResponse

DeleteStageResponse is the response after deleting a stage. explicitly empty

DeleteWarehouseRequest

DeleteWarehouseRequest is the request for deleting a warehouse.

FieldTypeDescription
projectstringproject is the name of the project containing the warehouse.
namestringname is the name of the warehouse to delete.

DeleteWarehouseResponse

DeleteWarehouseResponse is the response after deleting a warehouse. explicitly empty

FreightList

FreightList contains a list of freight resources.

FieldTypeDescription
freightgithub.com.akuity.kargo.api.v1alpha1.Freightfreight is the list of Freight resources.

GetAnalysisRunLogsRequest

GetAnalysisRunLogsRequest is the request for retrieving logs from an analysis run.

FieldTypeDescription
namespacestringnamespace is the namespace containing the analysis run.
namestringname is the name of the analysis run whose logs to retrieve.
metric_namestringmetric_name is the specific metric whose logs to retrieve.
container_namestringcontainer_name is the specific container whose logs to retrieve.

GetAnalysisRunLogsResponse

GetAnalysisRunLogsResponse contains a chunk of logs from the analysis run.

FieldTypeDescription
chunkstringchunk is a portion of the log output from the analysis run.

GetAnalysisRunRequest

GetAnalysisRunRequest is the request for retrieving a specific analysis run.

FieldTypeDescription
namespacestringnamespace is the namespace containing the analysis run.
namestringname is the name of the analysis run to retrieve.
formatRawFormatformat specifies the desired response format (structured object or raw YAML).

GetAnalysisRunResponse

GetAnalysisRunResponse contains the requested analysis run information.

FieldTypeDescription
analysis_rungithub.com.akuity.kargo.api.stubs.rollouts.v1alpha1.AnalysisRunanalysis_run is the structured AnalysisRun resource.
rawbytesraw is the raw YAML representation of the analysis run.

GetAnalysisTemplateRequest

GetAnalysisTemplateRequest is the request for retrieving a specific analysis template.

FieldTypeDescription
projectstringproject is the name of the project containing the analysis template.
namestringname is the name of the analysis template to retrieve.
formatRawFormatformat specifies the desired response format (structured object or raw YAML).

GetAnalysisTemplateResponse

GetAnalysisTemplateResponse contains the requested analysis template information.

FieldTypeDescription
analysis_templategithub.com.akuity.kargo.api.stubs.rollouts.v1alpha1.AnalysisTemplateanalysis_template is the structured AnalysisTemplate resource.
rawbytesraw is the raw YAML representation of the analysis template.

GetClusterAnalysisTemplateRequest

GetClusterAnalysisTemplateRequest is the request for retrieving a specific cluster analysis template.

FieldTypeDescription
namestringname is the name of the cluster analysis template to retrieve.
formatRawFormatformat specifies the desired response format (structured object or raw YAML).

GetClusterAnalysisTemplateResponse

GetClusterAnalysisTemplateResponse contains the requested cluster analysis template information.

FieldTypeDescription
cluster_analysis_templategithub.com.akuity.kargo.api.stubs.rollouts.v1alpha1.ClusterAnalysisTemplatecluster_analysis_template is the structured ClusterAnalysisTemplate resource.
rawbytesraw is the raw YAML representation of the cluster analysis template.

GetClusterConfigRequest

FieldTypeDescription
formatRawFormat

GetClusterConfigResponse

FieldTypeDescription
cluster_configgithub.com.akuity.kargo.api.v1alpha1.ClusterConfig
rawbytes

GetClusterPromotionTaskRequest

GetClusterPromotionTaskRequest is the request for retrieving a specific cluster promotion task.

FieldTypeDescription
namestringname is the name of the cluster promotion task to retrieve.
formatRawFormatformat specifies the desired response format (structured object or raw YAML).

GetClusterPromotionTaskResponse

GetClusterPromotionTaskResponse contains the requested cluster promotion task information.

FieldTypeDescription
promotion_taskgithub.com.akuity.kargo.api.v1alpha1.ClusterPromotionTaskpromotion_task is the structured ClusterPromotionTask resource.
rawbytesraw is the raw YAML representation of the cluster promotion task.

GetConfigMapRequest

GetConfigMapRequest is the request for retrieving a specific ConfigMap.

FieldTypeDescription
projectstringproject is the name of the project containing the ConfigMap.
namestringname is the name of the ConfigMap to retrieve.
formatRawFormatformat specifies the desired response format (structured object or raw YAML).

GetConfigMapResponse

GetConfigMapResponse contains the requested ConfigMap information.

FieldTypeDescription
config_mapk8s.io.api.core.v1.ConfigMapconfig_map is the structured Kubernetes ConfigMap object.
rawbytesraw is the raw YAML representation of the ConfigMap.

GetConfigRequest

GetConfigRequest is the request message for retrieving server configuration.

GetConfigResponse

GetConfigResponse contains server configuration information.

FieldTypeDescription
argocd_shardsGetConfigResponse.ArgocdShardsEntryargocd_shards maps shard names to their ArgoCD configuration.
secret_management_enabledboolsecret_management_enabled indicates if secret management features are available.
cluster_secrets_namespacestringcluster_secrets_namespace is the namespace used for cluster-scoped secrets.
has_analysis_run_logs_url_templateboolhas_analysis_run_logs_url_template indicates if an analysis run logs URL template is configured.

GetConfigResponse.ArgocdShardsEntry

FieldTypeDescription
keystring
valueArgoCDShard

GetCredentialsRequest

GetCredentialsRequest is the request for retrieving existing credentials.

FieldTypeDescription
projectstringproject is the name of the project containing the credentials.
namestringname is the name of the credentials to retrieve.
formatRawFormatformat specifies the desired response format (structured object or raw YAML).

GetCredentialsResponse

GetCredentialsResponse contains the requested credentials information.

FieldTypeDescription
credentialsk8s.io.api.core.v1.Secretcredentials is the structured Kubernetes Secret containing the credentials.
rawbytesraw is the raw YAML representation of the credentials.

GetFreightRequest

GetFreightRequest is the request for retrieving details of specific freight.

FieldTypeDescription
projectstringproject is the name of the project containing the freight.
namestringname is the name of the freight to retrieve.
aliasstringalias is the alias of the freight to retrieve.
formatRawFormatformat specifies the format for raw resource representation.

GetFreightResponse

GetFreightResponse contains the requested freight information.

FieldTypeDescription
freightgithub.com.akuity.kargo.api.v1alpha1.Freightfreight contains the Freight resource in structured format.
rawbytesraw contains the Freight resource in the requested raw format.

GetProjectConfigRequest

GetProjectConfigRequest is the request for retrieving project-level configuration settings.

FieldTypeDescription
projectstringproject is the name of the project to retrieve configuration for.
formatRawFormatformat specifies the desired response format (structured object or raw YAML).

GetProjectConfigResponse

GetProjectConfigResponse contains the requested project configuration.

FieldTypeDescription
project_configgithub.com.akuity.kargo.api.v1alpha1.ProjectConfigproject_config is the structured ProjectConfig object.
rawbytesraw is the raw YAML representation of the project configuration.

GetProjectRequest

GetProjectRequest is the request for retrieving details of a specific project.

FieldTypeDescription
namestringname is the name of the project to retrieve.
formatRawFormatformat specifies the format for raw resource representation.

GetProjectResponse

GetProjectResponse contains the requested project information.

FieldTypeDescription
projectgithub.com.akuity.kargo.api.v1alpha1.Projectproject contains the Project resource in structured format.
rawbytesraw contains the Project resource in the requested raw format.

GetPromotionRequest

GetPromotionRequest is the request for retrieving details of a specific promotion.

FieldTypeDescription
projectstringproject is the name of the project containing the promotion.
namestringname is the name of the promotion to retrieve.
formatRawFormatformat specifies the format for raw resource representation.

GetPromotionResponse

GetPromotionResponse contains the requested promotion information.

FieldTypeDescription
promotiongithub.com.akuity.kargo.api.v1alpha1.Promotionpromotion contains the Promotion resource in structured format.
rawbytesraw contains the Promotion resource in the requested raw format.

GetPromotionTaskRequest

GetPromotionTaskRequest is the request for retrieving a specific promotion task.

FieldTypeDescription
projectstringproject is the name of the project containing the promotion task.
namestringname is the name of the promotion task to retrieve.
formatRawFormatformat specifies the desired response format (structured object or raw YAML).

GetPromotionTaskResponse

GetPromotionTaskResponse contains the requested promotion task information.

FieldTypeDescription
promotion_taskgithub.com.akuity.kargo.api.v1alpha1.PromotionTaskpromotion_task is the structured PromotionTask resource.
rawbytesraw is the raw YAML representation of the promotion task.

GetPublicConfigRequest

GetPublicConfigRequest is the request message for retrieving public configuration.

GetPublicConfigResponse

GetPublicConfigResponse contains publicly accessible configuration settings.

FieldTypeDescription
oidc_configOIDCConfigoidc_config contains OpenID Connect configuration for authentication.
admin_account_enabledbooladmin_account_enabled indicates if admin account authentication is available.
skip_authboolskip_auth indicates if authentication should be bypassed.

GetRoleRequest

GetRoleRequest is the request for retrieving a specific RBAC role.

FieldTypeDescription
projectstringproject is the name of the project containing the role.
namestringname is the name of the role to retrieve.
as_resourcesboolas_resources indicates whether to return the role as resources or as a role object.
formatRawFormatformat specifies the desired response format (structured object or raw YAML).

GetRoleResponse

GetRoleResponse contains the requested role information.

FieldTypeDescription
rolegithub.com.akuity.kargo.api.rbac.v1alpha1.Rolerole is the structured Role resource.
resourcesgithub.com.akuity.kargo.api.rbac.v1alpha1.RoleResourcesresources is the structured RoleResources containing the role's resources.
rawbytesraw is the raw YAML representation of the role.

GetStageRequest

GetStageRequest is the request for retrieving details of a specific stage.

FieldTypeDescription
projectstringproject is the name of the project containing the stage.
namestringname is the name of the stage to retrieve.
formatRawFormatformat specifies the format for raw resource representation.

GetStageResponse

GetStageResponse contains the requested stage information.

FieldTypeDescription
stagegithub.com.akuity.kargo.api.v1alpha1.Stagestage contains the Stage resource in structured format.
rawbytesraw contains the Stage resource in the requested raw format.

GetVersionInfoRequest

GetVersionInfoRequest is the request message for retrieving version information.

GetVersionInfoResponse

GetVersionInfoResponse contains the server's version information.

FieldTypeDescription
version_infoVersionInfoversion_info contains detailed version and build information.

GetWarehouseRequest

GetWarehouseRequest is the request for retrieving details of a specific warehouse.

FieldTypeDescription
projectstringproject is the name of the project containing the warehouse.
namestringname is the name of the warehouse to retrieve.
formatRawFormatformat specifies the format for raw resource representation.

GetWarehouseResponse

GetWarehouseResponse contains the requested warehouse information.

FieldTypeDescription
warehousegithub.com.akuity.kargo.api.v1alpha1.Warehousewarehouse contains the Warehouse resource in structured format.
rawbytesraw contains the Warehouse resource in the requested raw format.

GrantRequest

GrantRequest is the request for granting a role to a user or resource.

FieldTypeDescription
projectstringproject is the name of the project where the role will be granted.
rolestringrole is the name of the role to grant.
user_claimsClaimsuser_claims are the OIDC claims for the user being granted the role.
resource_detailsgithub.com.akuity.kargo.api.rbac.v1alpha1.ResourceDetailsresource_details are the details of the resource being granted the role.

GrantResponse

GrantResponse contains information about the granted role.

FieldTypeDescription
rolegithub.com.akuity.kargo.api.rbac.v1alpha1.Rolerole is the Role resource that was granted.

ImageStageMap

ImageStageMap represents the mapping of stages to the order in which an image was promoted.

FieldTypeDescription
stagesImageStageMap.StagesEntrystages maps stage names to the order in which an image was promoted to that stage.

ImageStageMap.StagesEntry

FieldTypeDescription
keystring
valueint32

ListAnalysisTemplatesRequest

ListAnalysisTemplatesRequest is the request for listing all analysis templates in a project.

FieldTypeDescription
projectstringproject is the name of the project whose analysis templates will be listed.

ListAnalysisTemplatesResponse

ListAnalysisTemplatesResponse contains a list of analysis templates for the specified project.

FieldTypeDescription
analysis_templatesgithub.com.akuity.kargo.api.stubs.rollouts.v1alpha1.AnalysisTemplateanalysis_templates is the list of AnalysisTemplate resources within the project.

ListClusterAnalysisTemplatesRequest

ListClusterAnalysisTemplatesRequest is the request for listing all cluster-level analysis templates.

ListClusterAnalysisTemplatesResponse

ListClusterAnalysisTemplatesResponse contains a list of cluster-level analysis templates.

FieldTypeDescription
cluster_analysis_templatesgithub.com.akuity.kargo.api.stubs.rollouts.v1alpha1.ClusterAnalysisTemplatecluster_analysis_templates is the list of ClusterAnalysisTemplate resources.

ListClusterPromotionTasksRequest

ListClusterPromotionTasksRequest is the request for listing all cluster-level promotion tasks.

ListClusterPromotionTasksResponse

ListClusterPromotionTasksResponse contains a list of cluster-level promotion tasks.

FieldTypeDescription
cluster_promotion_tasksgithub.com.akuity.kargo.api.v1alpha1.ClusterPromotionTaskcluster_promotion_tasks is the list of ClusterPromotionTask resources.

ListClusterSecretsRequest

ListClusterSecretsRequest is the request for listing all cluster-level secrets. explicitly empty

ListClusterSecretsResponse

ListClusterSecretsResponse contains a list of cluster-level secrets.

FieldTypeDescription
secretsk8s.io.api.core.v1.Secretsecrets is the list of cluster-level Kubernetes Secrets.

ListConfigMapsRequest

ListConfigMapsRequest is the request for retrieving all ConfigMaps in a project.

FieldTypeDescription
projectstringproject is the name of the project to list ConfigMaps from.

ListConfigMapsResponse

ListConfigMapsResponse contains the list of ConfigMaps in a project.

FieldTypeDescription
config_mapsk8s.io.api.core.v1.ConfigMapconfig_maps is the list of ConfigMaps found in the project.

ListCredentialsRequest

ListCredentialsRequest is the request for listing all credentials in a project.

FieldTypeDescription
projectstringproject is the name of the project whose credentials will be listed.

ListCredentialsResponse

ListCredentialsResponse contains a list of credentials for the specified project.

FieldTypeDescription
credentialsk8s.io.api.core.v1.Secretcredentials is the list of Kubernetes Secrets containing the credentials.

ListImagesRequest

ListImagesRequest is the request for listing images and their usage across stages.

FieldTypeDescription
projectstringproject is the name of the project whose images should be listed.

ListImagesResponse

ListImagesResponse contains information about images and their usage across stages.

FieldTypeDescription
imagesListImagesResponse.ImagesEntryimages maps image repository names to their tags and stage usage information.

ListImagesResponse.ImagesEntry

FieldTypeDescription
keystring
valueTagMap

ListProjectEventsRequest

ListProjectEventsRequest is the request for listing events in a project.

FieldTypeDescription
projectstringproject is the name of the project whose events will be listed.

ListProjectEventsResponse

ListProjectEventsResponse contains a list of events for the specified project.

FieldTypeDescription
eventsk8s.io.api.core.v1.Eventevents is the list of Kubernetes Events within the project.

ListProjectSecretsRequest

ListProjectSecretsRequest is the request for listing all secrets in a project.

FieldTypeDescription
projectstringproject is the name of the project whose secrets will be listed.

ListProjectSecretsResponse

ListProjectSecretsResponse contains a list of secrets for the specified project.

FieldTypeDescription
secretsk8s.io.api.core.v1.Secretsecrets is the list of Kubernetes Secrets within the project.

ListProjectsRequest

ListProjectsRequest is the request for listing all projects with optional filtering and pagination.

FieldTypeDescription
page_sizeint32page_size specifies the maximum number of projects to return per page.
pageint32page specifies which page of results to return.
filterstringfilter specifies an optional filter expression for projects.
uidstringui store starred projects uids, so it needs to filter it when looking at starred projects

ListProjectsResponse

ListProjectsResponse contains the list of projects and pagination information.

FieldTypeDescription
projectsgithub.com.akuity.kargo.api.v1alpha1.Projectprojects is the list of Project resources matching the request criteria.
totalint32total is the total number of projects available (across all pages).

ListPromotionTasksRequest

ListPromotionTasksRequest is the request for listing promotion tasks in a project.

FieldTypeDescription
projectstringproject is the name of the project whose promotion tasks will be listed.

ListPromotionTasksResponse

ListPromotionTasksResponse contains a list of promotion tasks for the specified project.

FieldTypeDescription
promotion_tasksgithub.com.akuity.kargo.api.v1alpha1.PromotionTaskpromotion_tasks is the list of PromotionTask resources within the project.

ListPromotionsRequest

ListPromotionsRequest is the request for retrieving all promotions, optionally filtered by stage.

FieldTypeDescription
projectstringproject is the name of the project whose promotions should be listed.
stagestringstage is an optional stage name to filter promotions by.

ListPromotionsResponse

ListPromotionsResponse contains a list of promotions within a project.

FieldTypeDescription
promotionsgithub.com.akuity.kargo.api.v1alpha1.Promotionpromotions is the list of Promotion resources found in the project.

ListRolesRequest

ListRolesRequest is the request for listing all roles in a project.

FieldTypeDescription
projectstringproject is the name of the project whose roles will be listed.
as_resourcesboolas_resources indicates whether to return roles as resources or as role objects.

ListRolesResponse

ListRolesResponse contains a list of roles for the specified project.

FieldTypeDescription
rolesgithub.com.akuity.kargo.api.rbac.v1alpha1.RoleNote: oneof and repeated do not work together roles is the list of Role resources when requested as roles.
resourcesgithub.com.akuity.kargo.api.rbac.v1alpha1.RoleResourcesresources is the list of RoleResources when requested as resources.

ListStagesRequest

ListStagesRequest is the request for listing stages within a project.

FieldTypeDescription
projectstringproject is the name of the project whose stages should be listed.

ListStagesResponse

ListStagesResponse contains a list of stages within a project.

FieldTypeDescription
stagesgithub.com.akuity.kargo.api.v1alpha1.Stagestages is the list of Stage resources found in the project.

ListWarehousesRequest

ListWarehousesRequest is the request for listing warehouses within a project.

FieldTypeDescription
projectstringproject is the name of the project whose warehouses should be listed.

ListWarehousesResponse

ListWarehousesResponse contains a list of warehouses within a project.

FieldTypeDescription
warehousesgithub.com.akuity.kargo.api.v1alpha1.Warehousewarehouses is the list of Warehouse resources found in the project.

OIDCConfig

OIDCConfig contains OpenID Connect configuration for authentication.

FieldTypeDescription
issuer_urlstringissuer_url is the OIDC provider's issuer URL.
client_idstringclient_id is the OIDC client identifier for web applications.
scopesstringscopes are the OIDC scopes to request during authentication.
cli_client_idstringcli_client_id is the OIDC client identifier for CLI applications.

PromoteDownstreamRequest

PromoteDownstreamRequest is the request for automatically promoting freight to downstream stages.

FieldTypeDescription
projectstringproject is the name of the project containing the stage and freight.
stagestringstage is the name of the source stage from which to promote downstream.
freightstringfreight is the name of the freight to promote downstream.
freight_aliasstringfreight_alias is the alias of the freight to promote downstream.

PromoteDownstreamResponse

PromoteDownstreamResponse contains the promotions created for downstream freight promotions.

FieldTypeDescription
promotionsgithub.com.akuity.kargo.api.v1alpha1.Promotionpromotions are the Promotion resources created for downstream freight promotions.

PromoteToStageRequest

PromoteToStageRequest is the request for promoting freight to a specific stage.

FieldTypeDescription
projectstringproject is the name of the project containing the stage and freight.
stagestringstage is the name of the stage to promote freight to.
freightstringfreight is the name of the freight to promote.
freight_aliasstringfreight_alias is the alias of the freight to promote.

PromoteToStageResponse

PromoteToStageResponse contains the promotion created for the freight promotion.

FieldTypeDescription
promotiongithub.com.akuity.kargo.api.v1alpha1.Promotionpromotion is the Promotion resource created for this freight promotion.

QueryFreightRequest

QueryFreightRequest is the request for searching freight based on specified criteria.

FieldTypeDescription
projectstringproject is the name of the project to search for freight.
stagestringstage is the name of the stage to filter freight by.
group_bystringgroup_by specifies how to group the freight results.
groupstringgroup specifies which group to return results for.
order_bystringorder_by specifies how to order the freight results.
reverseboolreverse indicates whether to reverse the order of results.
originsstringorigins filters freight by their origins (e.g., warehouse names).

QueryFreightResponse

QueryFreightResponse contains the grouped freight search results.

FieldTypeDescription
groupsQueryFreightResponse.GroupsEntrygroups maps group names to their corresponding freight lists.

QueryFreightResponse.GroupsEntry

FieldTypeDescription
keystring
valueFreightList

RefreshClusterConfigRequest

explicitly empty

RefreshClusterConfigResponse

FieldTypeDescription
cluster_configgithub.com.akuity.kargo.api.v1alpha1.ClusterConfig

RefreshProjectConfigRequest

RefreshProjectConfigRequest is the request for triggering a refresh of project configuration.

FieldTypeDescription
projectstringproject is the name of the project to refresh configuration for.

RefreshProjectConfigResponse

RefreshProjectConfigResponse contains the refreshed project configuration.

FieldTypeDescription
project_configgithub.com.akuity.kargo.api.v1alpha1.ProjectConfigproject_config is the refreshed ProjectConfig object.

RefreshStageRequest

RefreshStageRequest is the request for refreshing a stage's status.

FieldTypeDescription
projectstringproject is the name of the project containing the stage.
namestringname is the name of the stage to refresh.

RefreshStageResponse

RefreshStageResponse contains the refreshed stage information.

FieldTypeDescription
stagegithub.com.akuity.kargo.api.v1alpha1.Stagestage is the refreshed Stage resource.

RefreshWarehouseRequest

RefreshWarehouseRequest is the request for refreshing a warehouse's status and freight discovery.

FieldTypeDescription
projectstringproject is the name of the project containing the warehouse.
namestringname is the name of the warehouse to refresh.

RefreshWarehouseResponse

RefreshWarehouseResponse contains the refreshed warehouse information.

FieldTypeDescription
warehousegithub.com.akuity.kargo.api.v1alpha1.Warehousewarehouse is the refreshed Warehouse resource.

ReverifyRequest

ReverifyRequest is the request for triggering re-execution of verification processes for a stage.

FieldTypeDescription
projectstringproject is the name of the project containing the stage.
stagestringstage is the name of the stage to reverify.

ReverifyResponse

ReverifyResponse is the response after triggering reverification. explicitly empty

RevokeRequest

RevokeRequest is the request for revoking a role from a user or resource.

FieldTypeDescription
projectstringproject is the name of the project where the role will be revoked.
rolestringrole is the name of the role to revoke.
user_claimsClaimsuser_claims are the OIDC claims for the user whose role is being revoked.
resource_detailsgithub.com.akuity.kargo.api.rbac.v1alpha1.ResourceDetailsresource_details are the details of the resource whose role is being revoked.

RevokeResponse

RevokeResponse contains information about the revoked role.

FieldTypeDescription
rolegithub.com.akuity.kargo.api.rbac.v1alpha1.Rolerole is the Role resource that was revoked.

TagMap

TagMap represents the mapping of image tags to stages that have used them.

FieldTypeDescription
tagsTagMap.TagsEntrytags maps image tag names to stages which have previously used that tag.

TagMap.TagsEntry

FieldTypeDescription
keystring
valueImageStageMap

UpdateClusterSecretRequest

UpdateClusterSecretRequest is the request for updating an existing cluster secret.

FieldTypeDescription
namestringname is the name of the cluster secret to update.
dataUpdateClusterSecretRequest.DataEntrydata contains the key-value pairs that make up the secret data.

UpdateClusterSecretRequest.DataEntry

FieldTypeDescription
keystring
valuestring

UpdateClusterSecretResponse

UpdateClusterSecretResponse contains the updated cluster secret information.

FieldTypeDescription
secretk8s.io.api.core.v1.Secretsecret is the updated cluster-level Kubernetes Secret.

UpdateCredentialsRequest

UpdateCredentialsRequest is the request for updating existing credentials.

FieldTypeDescription
projectstringproject is the name of the project containing the credentials.
namestringname is the name of the credentials to update.
descriptionstringdescription is a human-readable description of the credentials.
typestringtype specifies the credential type (git, helm, image).
repo_urlstringrepo_url is the URL of the repository or registry these credentials apply to.
repo_url_is_regexboolrepo_url_is_regex indicates whether repo_url should be treated as a regular expression.
usernamestringusername is the username for authentication.
passwordstringpassword is the password or token for authentication.

UpdateCredentialsResponse

UpdateCredentialsResponse contains the updated credentials information.

FieldTypeDescription
credentialsk8s.io.api.core.v1.Secretcredentials is the updated Kubernetes Secret containing the credentials.

UpdateFreightAliasRequest

UpdateFreightAliasRequest is the request for updating a freight's alias.

FieldTypeDescription
projectstringproject is the name of the project containing the freight.
namestringname is the name of the freight whose alias should be updated.
old_aliasstringold_alias is the current alias of the freight.
new_aliasstringnew_alias is the new alias to assign to the freight.

UpdateFreightAliasResponse

UpdateFreightAliasResponse is the response after updating a freight's alias. explicitly empty

UpdateProjectSecretRequest

UpdateProjectSecretRequest is the request for updating an existing project secret.

FieldTypeDescription
projectstringproject is the name of the project containing the secret.
namestringname is the name of the secret to update.
descriptionstringdescription is a human-readable description of the secret.
dataUpdateProjectSecretRequest.DataEntrydata contains the key-value pairs that make up the secret data.

UpdateProjectSecretRequest.DataEntry

FieldTypeDescription
keystring
valuestring

UpdateProjectSecretResponse

UpdateProjectSecretResponse contains the updated project secret information.

FieldTypeDescription
secretk8s.io.api.core.v1.Secretsecret is the updated Kubernetes Secret within the project.

UpdateResourceRequest

UpdateResourceRequest contains Kubernetes resource manifests to be updated.

FieldTypeDescription
manifestbytesmanifest contains the raw Kubernetes resource manifests in YAML or JSON format.

UpdateResourceResponse

UpdateResourceResponse contains the results of updating multiple resources.

FieldTypeDescription
resultsUpdateResourceResultresults contains the outcome for each resource update attempt.

UpdateResourceResult

UpdateResourceResult represents the result of attempting to update a single resource.

FieldTypeDescription
updated_resource_manifestbytesupdated_resource_manifest contains the successfully updated resource manifest.
errorstringerror contains the error message if resource update failed.

UpdateRoleRequest

UpdateRoleRequest is the request for updating an existing RBAC role.

FieldTypeDescription
rolegithub.com.akuity.kargo.api.rbac.v1alpha1.Rolerole is the updated Role resource.

UpdateRoleResponse

UpdateRoleResponse contains the updated role information.

FieldTypeDescription
rolegithub.com.akuity.kargo.api.rbac.v1alpha1.Rolerole is the updated Role resource.

VersionInfo

VersionInfo contains detailed version and build information for a Kargo component.

FieldTypeDescription
versionstringversion is the semantic version string.
git_commitstringgit_commit is the Git commit hash used for the build.
git_tree_dirtyboolgit_tree_dirty indicates whether the Git working tree was dirty during build.
build_timegoogle.protobuf.Timestampbuild_time is the timestamp when the build was created.
go_versionstringgo_version is the Go version used for the build.
compilerstringcompiler is the compiler used for the build.
platformstringplatform is the target platform for the build.

WatchClusterConfigRequest

explicitly empty

WatchClusterConfigResponse

FieldTypeDescription
cluster_configgithub.com.akuity.kargo.api.v1alpha1.ClusterConfig
typestringADDED / MODIFIED / DELETED

WatchFreightRequest

WatchFreightRequest is the request for watching freight changes via streaming.

FieldTypeDescription
projectstringproject is the name of the project whose freight should be watched.

WatchFreightResponse

WatchFreightResponse contains freight change notifications.

FieldTypeDescription
freightgithub.com.akuity.kargo.api.v1alpha1.Freightfreight is the Freight resource that changed.
typestringtype indicates the type of change (ADDED, MODIFIED, DELETED). ADDED / MODIFIED / DELETED

WatchProjectConfigRequest

WatchProjectConfigRequest is the request for streaming project configuration changes.

FieldTypeDescription
projectstringproject is the name of the project to watch for configuration changes.

WatchProjectConfigResponse

WatchProjectConfigResponse provides streaming updates for project configuration changes.

FieldTypeDescription
project_configgithub.com.akuity.kargo.api.v1alpha1.ProjectConfigproject_config is the updated ProjectConfig object.
typestringtype indicates the type of change (ADDED / MODIFIED / DELETED).

WatchPromotionRequest

WatchPromotionRequest is the request for watching a specific promotion via streaming.

FieldTypeDescription
projectstringproject is the name of the project containing the promotion.
namestringname is the name of the promotion to watch.

WatchPromotionResponse

WatchPromotionResponse contains specific promotion change notifications.

FieldTypeDescription
promotiongithub.com.akuity.kargo.api.v1alpha1.Promotionpromotion is the Promotion resource that changed.
typestringtype indicates the type of change (ADDED, MODIFIED, DELETED).

WatchPromotionsRequest

WatchPromotionsRequest is the request for watching promotion changes via streaming.

FieldTypeDescription
projectstringproject is the name of the project whose promotions should be watched.
stagestringstage is an optional stage name to filter promotions by.

WatchPromotionsResponse

WatchPromotionsResponse contains promotion change notifications.

FieldTypeDescription
promotiongithub.com.akuity.kargo.api.v1alpha1.Promotionpromotion is the Promotion resource that changed.
typestringtype indicates the type of change (ADDED, MODIFIED, DELETED).

WatchStagesRequest

WatchStagesRequest is the request for watching stage changes via streaming.

FieldTypeDescription
projectstringproject is the name of the project whose stages should be watched.
namestringname is the name of a specific stage to watch, if empty all stages in the project are watched.

WatchStagesResponse

WatchStagesResponse contains stage change notifications.

FieldTypeDescription
stagegithub.com.akuity.kargo.api.v1alpha1.Stagestage is the Stage resource that changed.
typestringtype indicates the type of change (ADDED, MODIFIED, DELETED).

WatchWarehousesRequest

WatchWarehousesRequest is the request for watching warehouse changes via streaming.

FieldTypeDescription
projectstringproject is the name of the project whose warehouses should be watched.
namestringname is the name of a specific warehouse to watch, if empty all warehouses in the project are watched.

WatchWarehousesResponse

WatchWarehousesResponse contains warehouse change notifications.

FieldTypeDescription
warehousegithub.com.akuity.kargo.api.v1alpha1.Warehousewarehouse is the Warehouse resource that changed.
typestringtype indicates the type of change (ADDED, MODIFIED, DELETED).

RawFormat

RawFormat specifies the format for raw resource representation.

NameNumberDescription
RAW_FORMAT_UNSPECIFIED0RAW_FORMAT_UNSPECIFIED indicates no specific format is requested.
RAW_FORMAT_JSON1RAW_FORMAT_JSON requests JSON format for raw resources.
RAW_FORMAT_YAML2RAW_FORMAT_YAML requests YAML format for raw resources.

Top

rbac/v1alpha1

Claim

FieldTypeDescription
namestring
valuesstring

ResourceDetails

FieldTypeDescription
resourceTypestring
resourceNamestring
verbsstring

Role

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta
kargoManagedbool
claimsClaim
rulesk8s.io.api.rbac.v1.PolicyRule

RoleResources

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta
serviceAccountk8s.io.api.core.v1.ServiceAccount
rolesk8s.io.api.rbac.v1.Role
roleBindingsk8s.io.api.rbac.v1.RoleBinding

Top

v1alpha1

AnalysisRunArgument

AnalysisRunArgument represents an argument to be added to an AnalysisRun.

FieldTypeDescription
namestringName is the name of the argument.
valuestringValue is the value of the argument.

AnalysisRunMetadata

AnalysisRunMetadata contains optional metadata that should be applied to all AnalysisRuns.

FieldTypeDescription
labelsAnalysisRunMetadata.LabelsEntryAdditional labels to apply to an AnalysisRun.
annotationsAnalysisRunMetadata.AnnotationsEntryAdditional annotations to apply to an AnalysisRun.

AnalysisRunMetadata.AnnotationsEntry

FieldTypeDescription
keystring
valuestring

AnalysisRunMetadata.LabelsEntry

FieldTypeDescription
keystring
valuestring

AnalysisRunReference

AnalysisRunReference is a reference to an AnalysisRun.

FieldTypeDescription
namespacestringNamespace is the namespace of the AnalysisRun.
namestringName is the name of the AnalysisRun.
phasestringPhase is the last observed phase of the AnalysisRun referenced by Name.

AnalysisTemplateReference

AnalysisTemplateReference is a reference to an AnalysisTemplate.

FieldTypeDescription
namestringName is the name of the AnalysisTemplate in the same project/namespace as the Stage.
kindstringKind is the type of the AnalysisTemplate. Can be either AnalysisTemplate or ClusterAnalysisTemplate, default is AnalysisTemplate.

ApprovedStage

ApprovedStage describes a Stage for which Freight has been (manually) approved.

FieldTypeDescription
approvedAtk8s.io.apimachinery.pkg.apis.meta.v1.TimeApprovedAt is the time at which the Freight was approved for the Stage.

ArgoCDAppHealthStatus

ArgoCDAppHealthStatus describes the health of an ArgoCD Application.

FieldTypeDescription
statusstring
messagestring

ArgoCDAppStatus

ArgoCDAppStatus describes the current state of a single ArgoCD Application.

FieldTypeDescription
namespacestringNamespace is the namespace of the ArgoCD Application.
namestringName is the name of the ArgoCD Application.
healthStatusArgoCDAppHealthStatusHealthStatus is the health of the ArgoCD Application.
syncStatusArgoCDAppSyncStatusSyncStatus is the sync status of the ArgoCD Application.

ArgoCDAppSyncStatus

ArgoCDAppSyncStatus describes the sync status of an ArgoCD Application.

FieldTypeDescription
statusstring
revisionstring
revisionsstring

ArtifactoryWebhookReceiverConfig

ArtifactoryWebhookReceiverConfig describes a webhook receiver that is compatible with JFrog Artifactory payloads.

FieldTypeDescription
secretRefk8s.io.api.core.v1.LocalObjectReferenceSecretRef contains a reference to a Secret. For Project-scoped webhook receivers, the referenced Secret must be in the same namespace as the ProjectConfig. For cluster-scoped webhook receivers, the referenced Secret must be in the designated "cluster Secrets" namespace. The Secret's data map is expected to contain a secret-token key whose value is the shared secret used to authenticate the webhook requests sent by JFrog Artifactory. For more information please refer to the JFrog Artifactory documentation: https://jfrog.com/help/r/jfrog-platform-administration-documentation/webhooks

AutoPromotionOptions

AutoPromotionOptions specifies options pertaining to auto-promotion.

FieldTypeDescription
selectionPolicystringSelectionPolicy specifies the rules for identifying new Freight that is eligible for auto-promotion to this Stage. This field is optional. When left unspecified, the field is implicitly treated as if its value were "NewestFreight". Accepted Values: - "NewestFreight": The newest Freight that is available to the Stage is eligible for auto-promotion. - "MatchUpstream": Only the Freight currently used immediately upstream from this Stage is eligible for auto-promotion. This policy may only be applied when the Stage has exactly one upstream Stage.

AzureWebhookReceiverConfig

AzureWebhookReceiverConfig describes a webhook receiver that is compatible with Azure Container Registry (ACR) and Azure DevOps payloads.

FieldTypeDescription
secretRefk8s.io.api.core.v1.LocalObjectReferenceSecretRef contains a reference to a Secret. For Project-scoped webhook receivers, the referenced Secret must be in the same namespace as the ProjectConfig. For cluster-scoped webhook receivers, the referenced Secret must be in the designated "cluster Secrets" namespace. The Secret's data map is expected to contain a secret key whose value does NOT need to be shared directly with Azure when registering a webhook. It is used only by Kargo to create a complex, hard-to-guess URL, which implicitly serves as a shared secret. For more information about Azure webhooks, please refer to the Azure documentation: Azure Container Registry: https://learn.microsoft.com/en-us/azure/container-registry/container-registry-repositories Azure DevOps: http://learn.microsoft.com/en-us/azure/devops/service-hooks/services/webhooks?view=azure-devops

BitbucketWebhookReceiverConfig

BitbucketWebhookReceiverConfig describes a webhook receiver that is compatible with Bitbucket payloads.

FieldTypeDescription
secretRefk8s.io.api.core.v1.LocalObjectReferenceSecretRef contains a reference to a Secret. For Project-scoped webhook receivers, the referenced Secret must be in the same namespace as the ProjectConfig. For cluster-scoped webhook receivers, the referenced Secret must be in the designated "cluster Secrets" namespace. The Secret's data map is expected to contain a secret key whose value is the shared secret used to authenticate the webhook requests sent by Bitbucket. For more information please refer to the Bitbucket documentation: https://support.atlassian.com/bitbucket-cloud/docs/manage-webhooks/

Chart

Chart describes a specific version of a Helm chart.

FieldTypeDescription
repoURLstringRepoURL specifies the URL of a Helm chart repository. Classic chart repositories (using HTTP/S) can contain differently named charts. When this field points to such a repository, the Name field will specify the name of the chart within the repository. In the case of a repository within an OCI registry, the URL implicitly points to a specific chart and the Name field will be empty.
namestringName specifies the name of the chart.
versionstringVersion specifies a particular version of the chart.

ChartDiscoveryResult

ChartDiscoveryResult represents the result of a chart discovery operation for a ChartSubscription.

FieldTypeDescription
repoURLstringRepoURL is the repository URL of the Helm chart, as specified in the ChartSubscription.
namestringName is the name of the Helm chart, as specified in the ChartSubscription.
semverConstraintstringSemverConstraint is the constraint for which versions were discovered. This field is optional, and only populated if the ChartSubscription specifies a SemverConstraint.
versionsstringVersions is a list of versions discovered by the Warehouse for the ChartSubscription. An empty list indicates that the discovery operation was successful, but no versions matching the ChartSubscription criteria were found. +optional

ChartSubscription

ChartSubscription defines a subscription to a Helm chart repository.

FieldTypeDescription
repoURLstringRepoURL specifies the URL of a Helm chart repository. It may be a classic chart repository (using HTTP/S) OR a repository within an OCI registry. Classic chart repositories can contain differently named charts. When this field points to such a repository, the Name field MUST also be used to specify the name of the desired chart within that repository. In the case of a repository within an OCI registry, the URL implicitly points to a specific chart and the Name field MUST NOT be used. The RepoURL field is required.
namestringName specifies the name of a Helm chart to subscribe to within a classic chart repository specified by the RepoURL field. This field is required when the RepoURL field points to a classic chart repository and MUST otherwise be empty.
semverConstraintstringSemverConstraint specifies constraints on what new chart versions are permissible. This field is optional. When left unspecified, there will be no constraints, which means the latest version of the chart will always be used. Care should be taken with leaving this field unspecified, as it can lead to the unanticipated rollout of breaking changes. More info: https://github.com/masterminds/semver#checking-version-constraints
discoveryLimitint32DiscoveryLimit is an optional limit on the number of chart versions that can be discovered for this subscription. The limit is applied after filtering charts based on the SemverConstraint field. When left unspecified, the field is implicitly treated as if its value were "20". The upper limit for this field is 100.

ClusterConfig

ClusterConfig is a resource type that describes cluster-level Kargo configuration.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta
specClusterConfigSpecSpec describes the configuration of a cluster.
statusClusterConfigStatusStatus describes the current status of a ClusterConfig.

ClusterConfigList

ClusterConfigList contains a list of ClusterConfigs.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ListMeta
itemsClusterConfig

ClusterConfigSpec

ClusterConfigSpec describes cluster-level Kargo configuration.

FieldTypeDescription
webhookReceiversWebhookReceiverConfigWebhookReceivers describes cluster-scoped webhook receivers used for processing events from various external platforms

ClusterConfigStatus

ClusterConfigStatus describes the current status of a ClusterConfig.

FieldTypeDescription
conditionsk8s.io.apimachinery.pkg.apis.meta.v1.ConditionConditions contains the last observations of the ClusterConfig's current state. +patchMergeKey=type +patchStrategy=merge +listType=map +listMapKey=type
observedGenerationint64ObservedGeneration represents the .metadata.generation that this ClusterConfig was reconciled against.
lastHandledRefreshstringLastHandledRefresh holds the value of the most recent AnnotationKeyRefresh annotation that was handled by the controller. This field can be used to determine whether the request to refresh the resource has been handled. +optional
webhookReceiversWebhookReceiverDetailsWebhookReceivers describes the status of cluster-scoped webhook receivers.

ClusterPromotionTask

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta
specPromotionTaskSpecSpec describes the desired transition of a specific Stage into a specific Freight.

ClusterPromotionTaskList

ClusterPromotionTaskList contains a list of PromotionTasks.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ListMeta
itemsClusterPromotionTask

CurrentStage

CurrentStage reflects a Stage's current use of Freight.

FieldTypeDescription
sincek8s.io.apimachinery.pkg.apis.meta.v1.TimeSince is the time at which the Stage most recently started using the Freight. This can be used to calculate how long the Freight has been in use by the Stage.

DiscoveredArtifacts

DiscoveredArtifacts holds the artifacts discovered by the Warehouse for its subscriptions.

FieldTypeDescription
discoveredAtk8s.io.apimachinery.pkg.apis.meta.v1.TimeDiscoveredAt is the time at which the Warehouse discovered the artifacts. +optional
gitGitDiscoveryResultGit holds the commits discovered by the Warehouse for the Git subscriptions. +optional
imagesImageDiscoveryResultImages holds the image references discovered by the Warehouse for the image subscriptions. +optional
chartsChartDiscoveryResultCharts holds the charts discovered by the Warehouse for the chart subscriptions. +optional

DiscoveredCommit

DiscoveredCommit represents a commit discovered by a Warehouse for a GitSubscription.

FieldTypeDescription
idstringID is the identifier of the commit. This typically is a SHA-1 hash.
branchstringBranch is the branch in which the commit was found. This field is optional, and populated based on the CommitSelectionStrategy of the GitSubscription.
tagstringTag is the tag that resolved to this commit. This field is optional, and populated based on the CommitSelectionStrategy of the GitSubscription.
subjectstringSubject is the subject of the commit (i.e. the first line of the commit message).
authorstringAuthor is the author of the commit.
committerstringCommitter is the person who committed the commit.
creatorDatek8s.io.apimachinery.pkg.apis.meta.v1.TimeCreatorDate is the commit creation date as specified by the commit, or the tagger date if the commit belongs to an annotated tag.

DiscoveredImageReference

DiscoveredImageReference represents an image reference discovered by a Warehouse for an ImageSubscription.

FieldTypeDescription
tagstringTag is the tag of the image.
digeststringDigest is the digest of the image.
annotationsDiscoveredImageReference.AnnotationsEntryAnnotations is a map of key-value pairs that provide additional information about the image.
createdAtk8s.io.apimachinery.pkg.apis.meta.v1.TimeCreatedAt is the time the image was created. This field is optional, and not populated for every ImageSelectionStrategy.

DiscoveredImageReference.AnnotationsEntry

FieldTypeDescription
keystring
valuestring

DockerHubWebhookReceiverConfig

DockerHubWebhookReceiverConfig describes a webhook receiver that is compatible with Docker Hub payloads.

FieldTypeDescription
secretRefk8s.io.api.core.v1.LocalObjectReferenceSecretRef contains a reference to a Secret. For Project-scoped webhook receivers, the referenced Secret must be in the same namespace as the ProjectConfig. The Secret's data map is expected to contain a secret key whose value does NOT need to be shared directly with Docker Hub when registering a webhook. It is used only by Kargo to create a complex, hard-to-guess URL, which implicitly serves as a shared secret. For more information about Docker Hub webhooks, please refer to the Docker documentation: https://docs.docker.com/docker-hub/webhooks/

ExpressionVariable

ExpressionVariable describes a single variable that may be referenced by expressions in the context of a ClusterPromotionTask, PromotionTask, Promotion, AnalysisRun arguments, or other objects that support expressions. It is used to pass information to the expression evaluation engine, and to allow for dynamic evaluation of expressions based on the variable values.

FieldTypeDescription
namestringName is the name of the variable.
valuestringValue is the value of the variable. It is allowed to utilize expressions in the value. See https://docs.kargo.io/user-guide/reference-docs/expressions for details.

Freight

Freight represents a collection of versioned artifacts.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta
aliasstringAlias is a human-friendly alias for a piece of Freight. This is an optional field. A defaulting webhook will sync this field with the value of the kargo.akuity.io/alias label. When the alias label is not present or differs from the value of this field, the defaulting webhook will set the label to the value of this field. If the alias label is present and this field is empty, the defaulting webhook will set the value of this field to the value of the alias label. If this field is empty and the alias label is not present, the defaulting webhook will choose an available alias and assign it to both the field and label.
originFreightOriginOrigin describes a kind of Freight in terms of its origin.
commitsGitCommitCommits describes specific Git repository commits.
imagesImageImages describes specific versions of specific container images.
chartsChartCharts describes specific versions of specific Helm charts.
statusFreightStatusStatus describes the current status of this Freight.

FreightCollection

FreightCollection is a collection of FreightReferences, each of which represents a piece of Freight that has been selected for deployment to a Stage.

FieldTypeDescription
idstringID is a unique and deterministically calculated identifier for the FreightCollection. It is updated on each use of the UpdateOrPush method.
itemsFreightCollection.ItemsEntryFreight is a map of FreightReference objects, indexed by their Warehouse origin.
verificationHistoryVerificationInfoVerificationHistory is a stack of recent VerificationInfo. By default, the last ten VerificationInfo are stored.

FreightCollection.ItemsEntry

FieldTypeDescription
keystring
valueFreightReference

FreightCreationCriteria

FreightCreationCriteria defines criteria that must be satisfied for Freight to be created automatically from new artifacts following discovery.

FieldTypeDescription
expressionstringExpression is an expr-lang expression that must evaluate to true for Freight to be created automatically from new artifacts following discovery.

FreightList

FreightList is a list of Freight resources.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ListMeta
itemsFreight

FreightOrigin

FreightOrigin describes a kind of Freight in terms of where it may have originated. +protobuf.options.(gogoproto.goproto_stringer)=false

FieldTypeDescription
kindstringKind is the kind of resource from which Freight may have originated. At present, this can only be "Warehouse".
namestringName is the name of the resource of the kind indicated by the Kind field from which Freight may originate.

FreightReference

FreightReference is a simplified representation of a piece of Freight -- not a root resource type.

FieldTypeDescription
namestringName is a system-assigned identifier derived deterministically from the contents of the Freight. I.e., two pieces of Freight can be compared for equality by comparing their Names.
originFreightOriginOrigin describes a kind of Freight in terms of its origin.
commitsGitCommitCommits describes specific Git repository commits.
imagesImageImages describes specific versions of specific container images.
chartsChartCharts describes specific versions of specific Helm charts.

FreightRequest

FreightRequest expresses a Stage's need for Freight having originated from a particular Warehouse.

FieldTypeDescription
originFreightOriginOrigin specifies from where the requested Freight must have originated. This is a required field.
sourcesFreightSourcesSources describes where the requested Freight may be obtained from. This is a required field.

FreightSources

FieldTypeDescription
directboolDirect indicates the requested Freight may be obtained directly from the Warehouse from which it originated. If this field's value is false, then the value of the Stages field must be non-empty. i.e. Between the two fields, at least one source must be specified.
stagesstringStages identifies other "upstream" Stages as potential sources of the requested Freight. If this field's value is empty, then the value of the Direct field must be true. i.e. Between the two fields, at least on source must be specified.
requiredSoakTimek8s.io.apimachinery.pkg.apis.meta.v1.DurationRequiredSoakTime specifies a minimum duration for which the requested Freight must have continuously occupied ("soaked in") in an upstream Stage before becoming available for promotion to this Stage. This is an optional field. If nil or zero, no soak time is required. Any soak time requirement is in ADDITION to the requirement that Freight be verified in an upstream Stage to become available for promotion to this Stage, although a manual approval for promotion to this Stage will supersede any soak time requirement.
availabilityStrategystringAvailabilityStrategy specifies the semantics for how requested Freight is made available to the Stage. This field is optional. When left unspecified, the field is implicitly treated as if its value were "OneOf". Accepted Values: - "All": Freight must be verified and, if applicable, soaked in all upstream Stages to be considered available for promotion. - "OneOf": Freight must be verified and, if applicable, soaked in at least one upstream Stage to be considered available for promotion. - "": Treated the same as "OneOf".
autoPromotionOptionsAutoPromotionOptionsAutoPromotionOptions specifies options pertaining to auto-promotion. These settings have no effect if auto-promotion is not enabled for this Stage at the ProjectConfig level.

FreightStatus

FreightStatus describes a piece of Freight's most recently observed state.

FieldTypeDescription
currentlyInFreightStatus.CurrentlyInEntryCurrentlyIn describes the Stages in which this Freight is currently in use.
verifiedInFreightStatus.VerifiedInEntryVerifiedIn describes the Stages in which this Freight has been verified through promotion and subsequent health checks.
approvedForFreightStatus.ApprovedForEntryApprovedFor describes the Stages for which this Freight has been approved preemptively/manually by a user. This is useful for hotfixes, where one might wish to promote a piece of Freight to a given Stage without transiting the entire pipeline.
metadataFreightStatus.MetadataEntryMetadata is a map of arbitrary metadata associated with the Freight. This is useful for storing additional information about the Freight or Promotion that can be shared across steps or stages.

FreightStatus.ApprovedForEntry

FieldTypeDescription
keystring
valueApprovedStage

FreightStatus.CurrentlyInEntry

FieldTypeDescription
keystring
valueCurrentStage

FreightStatus.MetadataEntry

FieldTypeDescription
keystring
valuek8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.JSON

FreightStatus.VerifiedInEntry

FieldTypeDescription
keystring
valueVerifiedStage

GitCommit

GitCommit describes a specific commit from a specific Git repository.

FieldTypeDescription
repoURLstringRepoURL is the URL of a Git repository.
idstringID is the ID of a specific commit in the Git repository specified by RepoURL.
branchstringBranch denotes the branch of the repository where this commit was found.
tagstringTag denotes a tag in the repository that matched selection criteria and resolved to this commit.
messagestringMessage is the message associated with the commit. At present, this only contains the first line (subject) of the commit message.
authorstringAuthor is the author of the commit.
committerstringCommitter is the person who committed the commit.

GitDiscoveryResult

GitDiscoveryResult represents the result of a Git discovery operation for a GitSubscription.

FieldTypeDescription
repoURLstringRepoURL is the repository URL of the GitSubscription.
commitsDiscoveredCommitCommits is a list of commits discovered by the Warehouse for the GitSubscription. An empty list indicates that the discovery operation was successful, but no commits matching the GitSubscription criteria were found. +optional

GitHubWebhookReceiverConfig

GitHubWebhookReceiverConfig describes a webhook receiver that is compatible with GitHub payloads.

FieldTypeDescription
secretRefk8s.io.api.core.v1.LocalObjectReferenceSecretRef contains a reference to a Secret. For Project-scoped webhook receivers, the referenced Secret must be in the same namespace as the ProjectConfig. For cluster-scoped webhook receivers, the referenced Secret must be in the designated "cluster Secrets" namespace. The Secret's data map is expected to contain a secret key whose value is the shared secret used to authenticate the webhook requests sent by GitHub. For more information please refer to GitHub documentation: https://docs.github.com/en/webhooks/using-webhooks/validating-webhook-deliveries

GitLabWebhookReceiverConfig

GitLabWebhookReceiverConfig describes a webhook receiver that is compatible with GitLab payloads.

FieldTypeDescription
secretRefk8s.io.api.core.v1.LocalObjectReferenceSecretRef contains a reference to a Secret. For Project-scoped webhook receivers, the referenced Secret must be in the same namespace as the ProjectConfig. For cluster-scoped webhook receivers, the referenced Secret must be in the designated "cluster Secrets" namespace. The secret is expected to contain a secret-token key containing the shared secret specified when registering the webhook in GitLab. For more information about this token, please refer to the GitLab documentation: https://docs.gitlab.com/user/project/integrations/webhooks/

GitSubscription

GitSubscription defines a subscription to a Git repository.

FieldTypeDescription
repoURLstringURL is the repository's URL. This is a required field.
commitSelectionStrategystringCommitSelectionStrategy specifies the rules for how to identify the newest commit of interest in the repository specified by the RepoURL field. This field is optional. When left unspecified, the field is implicitly treated as if its value were "NewestFromBranch". Accepted values: - "NewestFromBranch": Selects the latest commit on the branch specified by the Branch field or the default branch if none is specified. This is the default strategy. - "SemVer": Selects the commit referenced by the semantically greatest tag. The SemverConstraint field can optionally be used to narrow the set of tags eligible for selection. - "Lexical": Selects the commit referenced by the lexicographically greatest tag. Useful when tags embed a leading date or timestamp. The AllowTags and IgnoreTags fields can optionally be used to narrow the set of tags eligible for selection. - "NewestTag": Selects the commit referenced by the most recently created tag. The AllowTags and IgnoreTags fields can optionally be used to narrow the set of tags eligible for selection.
branchstringBranch references a particular branch of the repository. The value in this field only has any effect when the CommitSelectionStrategy is NewestFromBranch or left unspecified (which is implicitly the same as NewestFromBranch). This field is optional. When left unspecified, (and the CommitSelectionStrategy is NewestFromBranch or unspecified), the subscription is implicitly to the repository's default branch.
strictSemversboolStrictSemvers specifies whether only "strict" semver tags should be considered. A "strict" semver tag is one containing ALL of major, minor, and patch version components. This is enabled by default, but only has any effect when the CommitSelectionStrategy is SemVer. This should be disabled cautiously, as it creates the potential for any tag containing numeric characters only to be mistaken for a semver string containing the major version number only.
semverConstraintstringSemverConstraint specifies constraints on what new tagged commits are considered in determining the newest commit of interest. The value in this field only has any effect when the CommitSelectionStrategy is SemVer. This field is optional. When left unspecified, there will be no constraints, which means the latest semantically tagged commit will always be used. Care should be taken with leaving this field unspecified, as it can lead to the unanticipated rollout of breaking changes.
allowTagsstringAllowTags is a regular expression that can optionally be used to limit the tags that are considered in determining the newest commit of interest. The value in this field only has any effect when the CommitSelectionStrategy is Lexical, NewestTag, or SemVer. This field is optional.
ignoreTagsstringIgnoreTags is a list of tags that must be ignored when determining the newest commit of interest. No regular expressions or glob patterns are supported yet. The value in this field only has any effect when the CommitSelectionStrategy is Lexical, NewestTag, or SemVer. This field is optional.
expressionFilterstringExpressionFilter is an expression that can optionally be used to limit the commits or tags that are considered in determining the newest commit of interest based on their metadata. For commit-based strategies (NewestFromBranch), the filter applies to commits and has access to commit metadata variables. For tag-based strategies (Lexical, NewestTag, SemVer), the filter applies to tags and has access to tag metadata variables. The filter is applied after AllowTags, IgnoreTags, and SemverConstraint fields. The expression should be a valid expr-lang expression that evaluates to true or false. When the expression evaluates to true, the commit/tag is included in the set that is considered. When the expression evaluates to false, the commit/tag is excluded. Available variables depend on the CommitSelectionStrategy: For NewestFromBranch (commit filtering): - id: The ID (sha) of the commit. - commitDate: The commit date of the commit. - author: The author of the commit message, in the format "Name <email>". - committer: The person who committed the commit, in the format "Name <email>". - subject: The subject (first line) of the commit message. For Lexical, NewestTag, SemVer (tag filtering): - tag: The name of the tag. - id: The ID (sha) of the commit associated with the tag. - creatorDate: The creation date of an annotated tag, or the commit date of a lightweight tag. - author: The author of the commit message associated with the tag, in the format "Name <email>". - committer: The person who committed the commit associated with the tag, in the format "Name <email>". - subject: The subject (first line) of the commit message associated with the tag. - tagger: The person who created the tag, in the format "Name <email>". Only available for annotated tags. - annotation: The subject (first line) of the tag annotation. Only available for annotated tags. Refer to the expr-lang documentation for more details on syntax and capabilities of the expression language: https://expr-lang.org.
insecureSkipTLSVerifyboolInsecureSkipTLSVerify specifies whether certificate verification errors should be ignored when connecting to the repository. This should be enabled only with great caution.
includePathsstringIncludePaths is a list of selectors that designate paths in the repository that should trigger the production of new Freight when changes are detected therein. When specified, only changes in the identified paths will trigger Freight production. When not specified, changes in any path will trigger Freight production. Selectors may be defined using: 1. Exact paths to files or directories (ex. "charts/foo") 2. Glob patterns (prefix the pattern with "glob:"; ex. "glob:.yaml") 3. Regular expressions (prefix the pattern with "regex:" or "regexp:"; ex. "regexp:^..yaml$") Paths selected by IncludePaths may be unselected by ExcludePaths. This is a useful method for including a broad set of paths and then excluding a subset of them.
excludePathsstringExcludePaths is a list of selectors that designate paths in the repository that should NOT trigger the production of new Freight when changes are detected therein. When specified, changes in the identified paths will not trigger Freight production. When not specified, paths that should trigger Freight production will be defined solely by IncludePaths. Selectors may be defined using: 1. Exact paths to files or directories (ex. "charts/foo") 2. Glob patterns (prefix the pattern with "glob:"; ex. "glob:.yaml") 3. Regular expressions (prefix the pattern with "regex:" or "regexp:"; ex. "regexp:^..yaml$") Paths selected by IncludePaths may be unselected by ExcludePaths. This is a useful method for including a broad set of paths and then excluding a subset of them.
discoveryLimitint32DiscoveryLimit is an optional limit on the number of commits that can be discovered for this subscription. The limit is applied after filtering commits based on the AllowTags and IgnoreTags fields. When left unspecified, the field is implicitly treated as if its value were "20". The upper limit for this field is 100.

GiteaWebhookReceiverConfig

GiteaWebhookReceiverConfig describes a webhook receiver that is compatible with Gitea payloads.

FieldTypeDescription
secretRefk8s.io.api.core.v1.LocalObjectReferenceSecretRef contains a reference to a Secret. For Project-scoped webhook receivers, the referenced Secret must be in the same namespace as the ProjectConfig. For cluster-scoped webhook receivers, the referenced Secret must be in the designated "cluster Secrets" namespace. The Secret's data map is expected to contain a secret key whose value is the shared secret used to authenticate the webhook requests sent by Gitea. For more information please refer to the Gitea documentation: https://docs.gitea.io/en-us/webhooks/

HarborWebhookReceiverConfig

HarborWebhookReceiverConfig describes a webhook receiver that is compatible with Harbor payloads.

FieldTypeDescription
secretRefk8s.io.api.core.v1.LocalObjectReferenceSecretRef contains a reference to a Secret. For Project-scoped webhook receivers, the referenced Secret must be in the same namespace as the ProjectConfig. For cluster-scoped webhook receivers, the referenced Secret must be in the designated "cluster Secrets" namespace. The secret is expected to contain an auth-header key containing the "auth header" specified when registering the webhook in Harbor. For more information, please refer to the Harbor documentation: https://goharbor.io/docs/main/working-with-projects/project-configuration/configure-webhooks/

Health

Health describes the health of a Stage.

FieldTypeDescription
statusstringStatus describes the health of the Stage.
issuesstringIssues clarifies why a Stage in any state other than Healthy is in that state. This field will always be the empty when a Stage is Healthy.
configk8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.JSONConfig is the opaque configuration of all health checks performed on this Stage.
outputk8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.JSONOutput is the opaque output of all health checks performed on this Stage.

HealthCheckStep

HealthCheckStep describes a health check directive which can be executed by a Stage to verify the health of a Promotion result.

FieldTypeDescription
usesstringUses identifies a runner that can execute this step.
configk8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.JSONConfig is the configuration for the directive.

HealthStats

HealthStats contains a summary of the collective health of some resource type.

FieldTypeDescription
healthyint64Healthy contains the number of resources that are explicitly healthy.

Image

Image describes a specific version of a container image.

FieldTypeDescription
repoURLstringRepoURL describes the repository in which the image can be found.
tagstringTag identifies a specific version of the image in the repository specified by RepoURL.
digeststringDigest identifies a specific version of the image in the repository specified by RepoURL. This is a more precise identifier than Tag.
annotationsImage.AnnotationsEntryAnnotations is a map of arbitrary metadata for the image.

Image.AnnotationsEntry

FieldTypeDescription
keystring
valuestring

ImageDiscoveryResult

ImageDiscoveryResult represents the result of an image discovery operation for an ImageSubscription.

FieldTypeDescription
repoURLstringRepoURL is the repository URL of the image, as specified in the ImageSubscription.
platformstringPlatform is the target platform constraint of the ImageSubscription for which references were discovered. This field is optional, and only populated if the ImageSubscription specifies a Platform.
referencesDiscoveredImageReferenceReferences is a list of image references discovered by the Warehouse for the ImageSubscription. An empty list indicates that the discovery operation was successful, but no images matching the ImageSubscription criteria were found. +optional

ImageSubscription

ImageSubscription defines a subscription to an image repository.

FieldTypeDescription
repoURLstringRepoURL specifies the URL of the image repository to subscribe to. The value in this field MUST NOT include an image tag. This field is required.
imageSelectionStrategystringImageSelectionStrategy specifies the rules for how to identify the newest version of the image specified by the RepoURL field. This field is optional. When left unspecified, the field is implicitly treated as if its value were "SemVer". Accepted values: - "Digest": Selects the image currently referenced by the tag specified (unintuitively) by the SemverConstraint field. - "Lexical": Selects the image referenced by the lexicographically greatest tag. Useful when tags embed a leading date or timestamp. The AllowTags and IgnoreTags fields can optionally be used to narrow the set of tags eligible for selection. - "NewestBuild": Selects the image that was most recently pushed to the repository. The AllowTags and IgnoreTags fields can optionally be used to narrow the set of tags eligible for selection. This is the least efficient and is likely to cause rate limiting affecting this Warehouse and possibly others. This strategy should be avoided. - "SemVer": Selects the image with the semantically greatest tag. The AllowTags and IgnoreTags fields can optionally be used to narrow the set of tags eligible for selection.
strictSemversboolStrictSemvers specifies whether only "strict" semver tags should be considered. A "strict" semver tag is one containing ALL of major, minor, and patch version components. This is enabled by default, but only has any effect when the ImageSelectionStrategy is SemVer. This should be disabled cautiously, as it is not uncommon to tag container images with short Git commit hashes, which have the potential to contain numeric characters only and could be mistaken for a semver string containing the major version number only.
semverConstraintstringSemverConstraint specifies constraints on what new image versions are permissible. The value in this field only has any effect when the ImageSelectionStrategy is SemVer or left unspecified (which is implicitly the same as SemVer). This field is also optional. When left unspecified, (and the ImageSelectionStrategy is SemVer or unspecified), there will be no constraints, which means the latest semantically tagged version of an image will always be used. Care should be taken with leaving this field unspecified, as it can lead to the unanticipated rollout of breaking changes. More info: https://github.com/masterminds/semver#checking-version-constraints Deprecated: Use Constraint instead. This field will be removed in v1.9.0
constraintstringConstraint specifies constraints on what new image versions are permissible. Acceptable values for this field vary contextually by ImageSelectionStrategy. The field is optional and is ignored by some strategies. When non-empty, the value in this field takes precedence over the value of the deprecated SemverConstraint field.
allowTagsstringAllowTags is a regular expression that can optionally be used to limit the image tags that are considered in determining the newest version of an image. This field is optional.
ignoreTagsstringIgnoreTags is a list of tags that must be ignored when determining the newest version of an image. No regular expressions or glob patterns are supported yet. This field is optional.
platformstringPlatform is a string of the form <os>/<arch> that limits the tags that can be considered when searching for new versions of an image. This field is optional. When left unspecified, it is implicitly equivalent to the OS/architecture of the Kargo controller. Care should be taken to set this value correctly in cases where the image referenced by this ImageRepositorySubscription will run on a Kubernetes node with a different OS/architecture than the Kargo controller. At present this is uncommon, but not unheard of.
insecureSkipTLSVerifyboolInsecureSkipTLSVerify specifies whether certificate verification errors should be ignored when connecting to the repository. This should be enabled only with great caution.
discoveryLimitint32DiscoveryLimit is an optional limit on the number of image references that can be discovered for this subscription. The limit is applied after filtering images based on the AllowTags and IgnoreTags fields. When left unspecified, the field is implicitly treated as if its value were "20". The upper limit for this field is 100.

Project

Project is a resource type that reconciles to a specially labeled namespace and other TODO: TBD project-level resources.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta
statusProjectStatusStatus describes the Project's current status.

ProjectConfig

ProjectConfig is a resource type that describes the configuration of a Project.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta
specProjectConfigSpecSpec describes the configuration of a Project.
statusProjectConfigStatusStatus describes the current status of a ProjectConfig.

ProjectConfigList

ProjectConfigList is a list of ProjectConfig resources.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ListMeta
itemsProjectConfig

ProjectConfigSpec

ProjectConfigSpec describes the configuration of a Project.

FieldTypeDescription
promotionPoliciesPromotionPolicyPromotionPolicies defines policies governing the promotion of Freight to specific Stages within the Project.
webhookReceiversWebhookReceiverConfigWebhookReceivers describes Project-specific webhook receivers used for processing events from various external platforms

ProjectConfigStatus

ProjectConfigStatus describes the current status of a ProjectConfig.

FieldTypeDescription
conditionsk8s.io.apimachinery.pkg.apis.meta.v1.ConditionConditions contains the last observations of the Project Config's current state. +patchMergeKey=type +patchStrategy=merge +listType=map +listMapKey=type
observedGenerationint64ObservedGeneration represents the .metadata.generation that this ProjectConfig was reconciled against.
lastHandledRefreshstringLastHandledRefresh holds the value of the most recent AnnotationKeyRefresh annotation that was handled by the controller. This field can be used to determine whether the request to refresh the resource has been handled. +optional
webhookReceiversWebhookReceiverDetailsWebhookReceivers describes the status of Project-specific webhook receivers.

ProjectList

ProjectList is a list of Project resources.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ListMeta
itemsProject

ProjectStats

ProjectStats contains a summary of the collective state of a Project's constituent resources.

FieldTypeDescription
warehousesWarehouseStatsWarehouses contains a summary of the collective state of the Project's Warehouses.
stagesStageStatsStages contains a summary of the collective state of the Project's Stages.

ProjectStatus

ProjectStatus describes a Project's current status.

FieldTypeDescription
conditionsk8s.io.apimachinery.pkg.apis.meta.v1.ConditionConditions contains the last observations of the Project's current state. +patchMergeKey=type +patchStrategy=merge +listType=map +listMapKey=type
statsProjectStatsStats contains a summary of the collective state of a Project's constituent resources.

Promotion

Promotion represents a request to transition a particular Stage into a particular Freight.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta
specPromotionSpecSpec describes the desired transition of a specific Stage into a specific Freight.
statusPromotionStatusStatus describes the current state of the transition represented by this Promotion.

PromotionList

PromotionList contains a list of Promotion

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ListMeta
itemsPromotion

PromotionPolicy

PromotionPolicy defines policies governing the promotion of Freight to a specific Stage.

FieldTypeDescription
stagestringStage is the name of the Stage to which this policy applies. Deprecated: Use StageSelector instead.
stageSelectorPromotionPolicySelectorStageSelector is a selector that matches the Stage resource to which this policy applies.
autoPromotionEnabledboolAutoPromotionEnabled indicates whether new Freight can automatically be promoted into the Stage referenced by the Stage field. Note: There are may be other conditions also required for an auto-promotion to occur. This field defaults to false, but is commonly set to true for Stages that subscribe to Warehouses instead of other, upstream Stages. This allows users to define Stages that are automatically updated as soon as new artifacts are detected.

PromotionPolicySelector

PromotionPolicySelector is a selector that matches the resource to which this policy applies. It can be used to match a specific resource by name or to match a set of resources by label.

FieldTypeDescription
namestringName is the name of the resource to which this policy applies. It can be an exact name, a regex pattern (with prefix "regex:"), or a glob pattern (with prefix "glob:"). When both Name and LabelSelector are specified, the Name is ANDed with the LabelSelector. I.e., the resource must match both the Name and LabelSelector to be selected by this policy. NOTE: Using a specific exact name is the most secure option. Pattern matching via regex or glob can be exploited by users with permissions to match promotion policies that weren't intended to apply to their resources. For example, a user could create a resource with a name deliberately crafted to match the pattern, potentially bypassing intended promotion controls. +optional
labelSelectork8s.io.apimachinery.pkg.apis.meta.v1.LabelSelectorLabelSelector is a selector that matches the resource to which this policy applies. When both Name and LabelSelector are specified, the Name is ANDed with the LabelSelector. I.e., the resource must match both the Name and LabelSelector to be selected by this policy. NOTE: Using label selectors introduces security risks as users with appropriate permissions could create new resources with labels that match the selector, potentially enabling unauthorized auto-promotion. For sensitive environments, exact Name matching provides tighter control.

PromotionReference

PromotionReference contains the relevant information about a Promotion as observed by a Stage.

FieldTypeDescription
namestringName is the name of the Promotion.
freightFreightReferenceFreight is the freight being promoted.
statusPromotionStatusStatus is the (optional) status of the Promotion.
finishedAtk8s.io.apimachinery.pkg.apis.meta.v1.TimeFinishedAt is the time at which the Promotion was completed.

PromotionSpec

PromotionSpec describes the desired transition of a specific Stage into a specific Freight.

FieldTypeDescription
stagestringStage specifies the name of the Stage to which this Promotion applies. The Stage referenced by this field MUST be in the same namespace as the Promotion.
freightstringFreight specifies the piece of Freight to be promoted into the Stage referenced by the Stage field.
varsExpressionVariableVars is a list of variables that can be referenced by expressions in promotion steps.
stepsPromotionStepSteps specifies the directives to be executed as part of this Promotion. The order in which the directives are executed is the order in which they are listed in this field.

PromotionStatus

PromotionStatus describes the current state of the transition represented by a Promotion.

FieldTypeDescription
lastHandledRefreshstringLastHandledRefresh holds the value of the most recent AnnotationKeyRefresh annotation that was handled by the controller. This field can be used to determine whether the request to refresh the resource has been handled. +optional
phasestringPhase describes where the Promotion currently is in its lifecycle.
messagestringMessage is a display message about the promotion, including any errors preventing the Promotion controller from executing this Promotion. i.e. If the Phase field has a value of Failed, this field can be expected to explain why.
freightFreightReferenceFreight is the detail of the piece of freight that was referenced by this promotion.
freightCollectionFreightCollectionFreightCollection contains the details of the piece of Freight referenced by this Promotion as well as any additional Freight that is carried over from the target Stage's current state.
healthChecksHealthCheckStepHealthChecks contains the health check directives to be executed after the Promotion has completed.
startedAtk8s.io.apimachinery.pkg.apis.meta.v1.TimeStartedAt is the time when the promotion started.
finishedAtk8s.io.apimachinery.pkg.apis.meta.v1.TimeFinishedAt is the time when the promotion was completed.
currentStepint64CurrentStep is the index of the current promotion step being executed. This permits steps that have already run successfully to be skipped on subsequent reconciliations attempts.
stepExecutionMetadataStepExecutionMetadataStepExecutionMetadata tracks metadata pertaining to the execution of individual promotion steps.
statek8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.JSONState stores the state of the promotion process between reconciliation attempts.

PromotionStep

PromotionStep describes a directive to be executed as part of a Promotion.

FieldTypeDescription
usesstringUses identifies a runner that can execute this step.
taskPromotionTaskReferenceTask is a reference to a PromotionTask that should be inflated into a Promotion when it is built from a PromotionTemplate.
asstringAs is the alias this step can be referred to as.
ifstringIf is an optional expression that, if present, must evaluate to a boolean value. If the expression evaluates to false, the step will be skipped. If the expression does not evaluate to a boolean value, the step will be considered to have failed.
continueOnErrorboolContinueOnError is a boolean value that, if set to true, will cause the Promotion to continue executing the next step even if this step fails. It also will not permit this failure to impact the overall status of the Promotion.
retryPromotionStepRetryRetry is the retry policy for this step.
varsExpressionVariableVars is a list of variables that can be referenced by expressions in the step's Config. The values override the values specified in the PromotionSpec.
configk8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.JSONConfig is opaque configuration for the PromotionStep that is understood only by each PromotionStep's implementation. It is legal to utilize expressions in defining values at any level of this block. See https://docs.kargo.io/user-guide/reference-docs/expressions for details.

PromotionStepRetry

PromotionStepRetry describes the retry policy for a PromotionStep.

FieldTypeDescription
timeoutk8s.io.apimachinery.pkg.apis.meta.v1.DurationTimeout is the soft maximum interval in which a step that returns a Running status (which typically indicates it's waiting for something to happen) may be retried. The maximum is a soft one because the check for whether the interval has elapsed occurs AFTER the step has run. This effectively means a step may run ONCE beyond the close of the interval. If this field is set to nil, the effective default will be a step-specific one. If no step-specific default exists (i.e. is also nil), the effective default will be the system-wide default of 0. A value of 0 will cause the step to be retried indefinitely unless the ErrorThreshold is reached.
errorThresholduint32ErrorThreshold is the number of consecutive times the step must fail (for any reason) before retries are abandoned and the entire Promotion is marked as failed. If this field is set to 0, the effective default will be a step-specific one. If no step-specific default exists (i.e. is also 0), the effective default will be the system-wide default of 1. A value of 1 will cause the Promotion to be marked as failed after just a single failure; i.e. no retries will be attempted. There is no option to specify an infinite number of retries using a value such as -1. In a future release, Kargo is likely to become capable of distinguishing between recoverable and non-recoverable step failures. At that time, it is planned that unrecoverable failures will not be subject to this threshold and will immediately cause the Promotion to be marked as failed without further condition.

PromotionTask

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta
specPromotionTaskSpecSpec describes the composition of a PromotionTask, including the variables available to the task and the steps.

PromotionTaskList

PromotionTaskList contains a list of PromotionTasks.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ListMeta
itemsPromotionTask

PromotionTaskReference

PromotionTaskReference describes a reference to a PromotionTask.

FieldTypeDescription
namestringName is the name of the (Cluster)PromotionTask.
kindstringKind is the type of the PromotionTask. Can be either PromotionTask or ClusterPromotionTask, default is PromotionTask.

PromotionTaskSpec

FieldTypeDescription
varsExpressionVariableVars specifies the variables available to the PromotionTask. The values of these variables are the default values that can be overridden by the step referencing the task.
stepsPromotionStepSteps specifies the directives to be executed as part of this PromotionTask. The steps as defined here are inflated into a Promotion when it is built from a PromotionTemplate.

PromotionTemplate

PromotionTemplate defines a template for a Promotion that can be used to incorporate Freight into a Stage.

FieldTypeDescription
specPromotionTemplateSpec

PromotionTemplateSpec

PromotionTemplateSpec describes the (partial) specification of a Promotion for a Stage. This is a template that can be used to create a Promotion for a Stage.

FieldTypeDescription
varsExpressionVariableVars is a list of variables that can be referenced by expressions in promotion steps.
stepsPromotionStepSteps specifies the directives to be executed as part of a Promotion. The order in which the directives are executed is the order in which they are listed in this field.

QuayWebhookReceiverConfig

QuayWebhookReceiverConfig describes a webhook receiver that is compatible with Quay.io payloads.

FieldTypeDescription
secretRefk8s.io.api.core.v1.LocalObjectReferenceSecretRef contains a reference to a Secret. For Project-scoped webhook receivers, the referenced Secret must be in the same namespace as the ProjectConfig. For cluster-scoped webhook receivers, the referenced Secret must be in the designated "cluster Secrets" namespace. The Secret's data map is expected to contain a secret key whose value does NOT need to be shared directly with Quay when registering a webhook. It is used only by Kargo to create a complex, hard-to-guess URL, which implicitly serves as a shared secret. For more information about Quay webhooks, please refer to the Quay documentation: https://docs.quay.io/guides/notifications.html

RepoSubscription

RepoSubscription describes a subscription to ONE OF a Git repository, a container image repository, or a Helm chart repository.

FieldTypeDescription
gitGitSubscriptionGit describes a subscriptions to a Git repository.
imageImageSubscriptionImage describes a subscription to container image repository.
chartChartSubscriptionChart describes a subscription to a Helm chart repository.

Stage

Stage is the Kargo API's main type.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta
specStageSpecSpec describes sources of Freight used by the Stage and how to incorporate Freight into the Stage.
statusStageStatusStatus describes the Stage's current and recent Freight, health, and more.

StageList

StageList is a list of Stage resources.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ListMeta
itemsStage

StageSpec

StageSpec describes the sources of Freight used by a Stage and how to incorporate Freight into the Stage.

FieldTypeDescription
shardstringShard is the name of the shard that this Stage belongs to. This is an optional field. If not specified, the Stage will belong to the default shard. A defaulting webhook will sync the value of the kargo.akuity.io/shard label with the value of this field. When this field is empty, the webhook will ensure that label is absent.
varsExpressionVariableVars is a list of variables that can be referenced anywhere in the StageSpec that supports expressions. For example, the PromotionTemplate and arguments of the Verification.
requestedFreightFreightRequestRequestedFreight expresses the Stage's need for certain pieces of Freight, each having originated from a particular Warehouse. This list must be non-empty. In the common case, a Stage will request Freight having originated from just one specific Warehouse. In advanced cases, requesting Freight from multiple Warehouses provides a method of advancing new artifacts of different types through parallel pipelines at different speeds. This can be useful, for instance, if a Stage is home to multiple microservices that are independently versioned.
promotionTemplatePromotionTemplatePromotionTemplate describes how to incorporate Freight into the Stage using a Promotion.
verificationVerificationVerification describes how to verify a Stage's current Freight is fit for promotion downstream.

StageStats

StageStats contains a summary of the collective state of a Project's Stages.

FieldTypeDescription
countint64Count contains the total number of Stages in the Project.
healthHealthStatsHealth contains a summary of the collective health of a Project's Stages.

StageStatus

StageStatus describes a Stages's current and recent Freight, health, and more.

FieldTypeDescription
conditionsk8s.io.apimachinery.pkg.apis.meta.v1.ConditionConditions contains the last observations of the Stage's current state. +patchMergeKey=type +patchStrategy=merge +listType=map +listMapKey=type
lastHandledRefreshstringLastHandledRefresh holds the value of the most recent AnnotationKeyRefresh annotation that was handled by the controller. This field can be used to determine whether the request to refresh the resource has been handled. +optional
freightHistoryFreightCollectionFreightHistory is a list of recent Freight selections that were deployed to the Stage. By default, the last ten Freight selections are stored. The first item in the list is the most recent Freight selection and currently deployed to the Stage, subsequent items are older selections.
freightSummarystringFreightSummary is human-readable text maintained by the controller that summarizes what Freight is currently deployed to the Stage. For Stages that request a single piece of Freight AND the request has been fulfilled, this field will simply contain the name of the Freight. For Stages that request a single piece of Freight AND the request has NOT been fulfilled, or for Stages that request multiple pieces of Freight, this field will contain a summary of fulfilled/requested Freight. The existence of this field is a workaround for kubectl limitations so that this complex but valuable information can be displayed in a column in response to kubectl get stages.
healthHealthHealth is the Stage's last observed health.
observedGenerationint64ObservedGeneration represents the .metadata.generation that this Stage status was reconciled against.
currentPromotionPromotionReferenceCurrentPromotion is a reference to the currently Running promotion.
lastPromotionPromotionReferenceLastPromotion is a reference to the last completed promotion.
autoPromotionEnabledboolAutoPromotionEnabled indicates whether automatic promotion is enabled for the Stage based on the ProjectConfig.
metadataStageStatus.MetadataEntryMetadata is a map of arbitrary metadata associated with the Stage. This is useful for storing additional information about the Stage that can be shared across promotions, verifications, or other processes.

StageStatus.MetadataEntry

FieldTypeDescription
keystring
valuek8s.io.apiextensions_apiserver.pkg.apis.apiextensions.v1.JSON

StepExecutionMetadata

StepExecutionMetadata tracks metadata pertaining to the execution of a promotion step.

FieldTypeDescription
aliasstringAlias is the alias of the step.
startedAtk8s.io.apimachinery.pkg.apis.meta.v1.TimeStartedAt is the time at which the first attempt to execute the step began.
finishedAtk8s.io.apimachinery.pkg.apis.meta.v1.TimeFinishedAt is the time at which the final attempt to execute the step completed.
errorCountuint32ErrorCount tracks consecutive failed attempts to execute the step.
statusstringStatus is the high-level outcome of the step.
messagestringMessage is a display message about the step, including any errors.
continueOnErrorboolContinueOnError is a boolean value that, if set to true, will cause the Promotion to continue executing the next step even if this step fails. It also will not permit this failure to impact the overall status of the Promotion.

Verification

Verification describes how to verify that a Promotion has been successful using Argo Rollouts AnalysisTemplates.

FieldTypeDescription
analysisTemplatesAnalysisTemplateReferenceAnalysisTemplates is a list of AnalysisTemplates from which AnalysisRuns should be created to verify a Stage's current Freight is fit to be promoted downstream.
analysisRunMetadataAnalysisRunMetadataAnalysisRunMetadata contains optional metadata that should be applied to all AnalysisRuns.
argsAnalysisRunArgumentArgs lists arguments that should be added to all AnalysisRuns.

VerificationInfo

VerificationInfo contains the details of an instance of a Verification process.

FieldTypeDescription
idstringID is the identifier of the Verification process.
actorstringActor is the name of the entity that initiated or aborted the Verification process.
startTimek8s.io.apimachinery.pkg.apis.meta.v1.TimeStartTime is the time at which the Verification process was started.
phasestringPhase describes the current phase of the Verification process. Generally, this will be a reflection of the underlying AnalysisRun's phase, however, there are exceptions to this, such as in the case where an AnalysisRun cannot be launched successfully.
messagestringMessage may contain additional information about why the verification process is in its current phase.
analysisRunAnalysisRunReferenceAnalysisRun is a reference to the Argo Rollouts AnalysisRun that implements the Verification process.
finishTimek8s.io.apimachinery.pkg.apis.meta.v1.TimeFinishTime is the time at which the Verification process finished.

VerifiedStage

VerifiedStage describes a Stage in which Freight has been verified.

FieldTypeDescription
verifiedAtk8s.io.apimachinery.pkg.apis.meta.v1.TimeVerifiedAt is the time at which the Freight was verified in the Stage.
longestSoakk8s.io.apimachinery.pkg.apis.meta.v1.DurationLongestCompletedSoak represents the longest definite time interval wherein the Freight was in CONTINUOUS use by the Stage. This value is updated as Freight EXITS the Stage. If the Freight is currently in use by the Stage, the time elapsed since the Freight ENTERED the Stage is its current soak time, which may exceed the value of this field.

Warehouse

Warehouse is a source of Freight.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta
specWarehouseSpecSpec describes sources of artifacts.
statusWarehouseStatusStatus describes the Warehouse's most recently observed state.

WarehouseList

WarehouseList is a list of Warehouse resources.

FieldTypeDescription
metadatak8s.io.apimachinery.pkg.apis.meta.v1.ListMeta
itemsWarehouse

WarehouseSpec

WarehouseSpec describes sources of versioned artifacts to be included in Freight produced by this Warehouse.

FieldTypeDescription
shardstringShard is the name of the shard that this Warehouse belongs to. This is an optional field. If not specified, the Warehouse will belong to the default shard. A defaulting webhook will sync this field with the value of the kargo.akuity.io/shard label. When the shard label is not present or differs from the value of this field, the defaulting webhook will set the label to the value of this field. If the shard label is present and this field is empty, the defaulting webhook will set the value of this field to the value of the shard label.
intervalk8s.io.apimachinery.pkg.apis.meta.v1.DurationInterval is the reconciliation interval for this Warehouse. On each reconciliation, the Warehouse will discover new artifacts and optionally produce new Freight. This field is optional. When left unspecified, the field is implicitly treated as if its value were "5m0s".
freightCreationPolicystringFreightCreationPolicy describes how Freight is created by this Warehouse. This field is optional. When left unspecified, the field is implicitly treated as if its value were "Automatic". Accepted values: - "Automatic": New Freight is created automatically when any new artifact is discovered. - "Manual": New Freight is never created automatically.
subscriptionsRepoSubscriptionSubscriptions describes sources of artifacts to be included in Freight produced by this Warehouse.
freightCreationCriteriaFreightCreationCriteriaFreightCreationCriteria defines criteria that must be satisfied for Freight to be created automatically from new artifacts following discovery. This field has no effect when the FreightCreationPolicy is Manual.

WarehouseStats

WarehouseStats contains a summary of the collective state of a Project's Warehouses.

FieldTypeDescription
countint64Count contains the total number of Warehouses in the Project.
healthHealthStatsHealth contains a summary of the collective health of a Project's Warehouses.

WarehouseStatus

WarehouseStatus describes a Warehouse's most recently observed state.

FieldTypeDescription
conditionsk8s.io.apimachinery.pkg.apis.meta.v1.ConditionConditions contains the last observations of the Warehouse's current state. +patchMergeKey=type +patchStrategy=merge +listType=map +listMapKey=type
lastHandledRefreshstringLastHandledRefresh holds the value of the most recent AnnotationKeyRefresh annotation that was handled by the controller. This field can be used to determine whether the request to refresh the resource has been handled. +optional
observedGenerationint64ObservedGeneration represents the .metadata.generation that this Warehouse was reconciled against.
lastFreightIDstringLastFreightID is a reference to the system-assigned identifier (name) of the most recent Freight produced by the Warehouse.
discoveredArtifactsDiscoveredArtifactsDiscoveredArtifacts holds the artifacts discovered by the Warehouse.

WebhookReceiverConfig

WebhookReceiverConfig describes the configuration for a single webhook receiver.

FieldTypeDescription
namestringName is the name of the webhook receiver.
bitbucketBitbucketWebhookReceiverConfigBitbucket contains the configuration for a webhook receiver that is compatible with Bitbucket payloads.
dockerhubDockerHubWebhookReceiverConfigDockerHub contains the configuration for a webhook receiver that is compatible with DockerHub payloads.
githubGitHubWebhookReceiverConfigGitHub contains the configuration for a webhook receiver that is compatible with GitHub payloads.
gitlabGitLabWebhookReceiverConfigGitLab contains the configuration for a webhook receiver that is compatible with GitLab payloads.
harborHarborWebhookReceiverConfigHarbor contains the configuration for a webhook receiver that is compatible with Harbor payloads.
quayQuayWebhookReceiverConfigQuay contains the configuration for a webhook receiver that is compatible with Quay payloads.
artifactoryArtifactoryWebhookReceiverConfigArtifactory contains the configuration for a webhook receiver that is compatible with JFrog Artifactory payloads.
azureAzureWebhookReceiverConfigAzure contains the configuration for a webhook receiver that is compatible with Azure Container Registry (ACR) and Azure DevOps payloads.
giteaGiteaWebhookReceiverConfigGitea contains the configuration for a webhook receiver that is compatible with Gitea payloads.

WebhookReceiverDetails

WebhookReceiverDetails encapsulates the details of a webhook receiver.

FieldTypeDescription
namestringName is the name of the webhook receiver.
pathstringPath is the path to the receiver's webhook endpoint.
urlstringURL includes the full address of the receiver's webhook endpoint.

Scalar Value Types

.proto TypeNotesC++JavaPythonGoC#PHPRuby
doubledoubledoublefloatfloat64doublefloatFloat
floatfloatfloatfloatfloat32floatfloatFloat
int32Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead.int32intintint32intintegerBignum or Fixnum (as required)
int64Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead.int64longint/longint64longinteger/stringBignum
uint32Uses variable-length encoding.uint32intint/longuint32uintintegerBignum or Fixnum (as required)
uint64Uses variable-length encoding.uint64longint/longuint64ulonginteger/stringBignum or Fixnum (as required)
sint32Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s.int32intintint32intintegerBignum or Fixnum (as required)
sint64Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s.int64longint/longint64longinteger/stringBignum
fixed32Always four bytes. More efficient than uint32 if values are often greater than 2^28.uint32intintuint32uintintegerBignum or Fixnum (as required)
fixed64Always eight bytes. More efficient than uint64 if values are often greater than 2^56.uint64longint/longuint64ulonginteger/stringBignum
sfixed32Always four bytes.int32intintint32intintegerBignum or Fixnum (as required)
sfixed64Always eight bytes.int64longint/longint64longinteger/stringBignum
boolboolbooleanbooleanboolboolbooleanTrueClass/FalseClass
stringA string must always contain UTF-8 encoded or 7-bit ASCII text.stringStringstr/unicodestringstringstringString (UTF-8)
bytesMay contain any arbitrary sequence of bytes.stringByteStringstr[]byteByteStringstringString (ASCII-8BIT)