Version v1.39 of the documentation is no longer actively maintained. The site that you are currently viewing is an archived snapshot. For up-to-date documentation, see the latest version.
gRPC API
This is a generated reference for the Skaffold API gRPC layer.
We also generate the reference doc for the HTTP layer.
v2/skaffold.proto
You can find the source for v2/skaffold.proto on Github.
Services
SkaffoldV2Service
Describes all the methods for the Skaffold API
Method Name | Request Type | Response Type | Description |
---|---|---|---|
GetState | .google.protobuf.Empty | State | Returns the state of the current Skaffold execution |
Events | .google.protobuf.Empty | Event stream | Returns all the events of the current Skaffold execution from the start |
ApplicationLogs | .google.protobuf.Empty | Event stream | Returns all the user application logs of the current Skaffold execution |
Execute | UserIntentRequest | .google.protobuf.Empty | Allows for a single execution of some or all of the phases (build, sync, deploy) in case autoBuild, autoDeploy or autoSync are disabled. |
AutoBuild | TriggerRequest | .google.protobuf.Empty | Allows for enabling or disabling automatic build trigger |
AutoSync | TriggerRequest | .google.protobuf.Empty | Allows for enabling or disabling automatic sync trigger |
AutoDeploy | TriggerRequest | .google.protobuf.Empty | Allows for enabling or disabling automatic deploy trigger |
Handle | Event | .google.protobuf.Empty | EXPERIMENTAL. It allows for custom events to be implemented in custom builders for example. |
Data types
ActionableErr
ActionableErr
defines an error that occurred along with an optional list of suggestions
Field | Type | Label | Description |
---|---|---|---|
errCode | proto.enums.StatusCode | error code representing the error | |
message | string | message describing the error. | |
suggestions | Suggestion | repeated | list of suggestions |
ApplicationLogEvent
ApplicationLogEvent
represents a log that comes from one of the pods running in the user’s application.
Field | Type | Label | Description |
---|---|---|---|
containerName | string | container that the log came from | |
podName | string | pod that the log came from | |
prefix | string | ||
message | string | contents of the log | |
richFormattedMessage | string | full message that skaffold writes, with format and color |
BuildMetadata
Field | Type | Label | Description |
---|---|---|---|
artifacts | BuildMetadata.Artifact | repeated | |
type | proto.enums.BuildType | ||
additional | BuildMetadata.AdditionalEntry | repeated | Additional key value pairs to describe the build pipeline |
BuildMetadata.AdditionalEntry
Field | Type | Label | Description |
---|---|---|---|
key | string | ||
value | string |
BuildMetadata.Artifact
Field | Type | Label | Description |
---|---|---|---|
type | proto.enums.BuilderType | ||
name | string | image name | |
context | string | skaffold.yaml context field | |
dockerfile | string | skaffold.yaml path to dockerfile. Not guaranteed to be filled |
BuildState
BuildState
maps Skaffold artifacts to their current build states
Field | Type | Label | Description |
---|---|---|---|
artifacts | BuildState.ArtifactsEntry | repeated | A map of artifact name -> build-state . Artifact name is defined in the skaffold.yaml . The build-state can be: - "NotStarted" : not yet started - "InProgress" : build started - "Complete" : build succeeded - "Failed" : build failed |
autoTrigger | bool | ||
statusCode | proto.enums.StatusCode |
BuildState.ArtifactsEntry
Field | Type | Label | Description |
---|---|---|---|
key | string | ||
value | string |
BuildSubtaskEvent
BuildSubtaskvent
describes the build status per artifact, and will be emitted by Skaffold anytime a build starts or finishes, successfully or not.
If the build fails, an error will be attached to the event.
Field | Type | Label | Description |
---|---|---|---|
id | string | id of the subtask which will be used in SkaffoldLog | |
task_id | string | id of the task of skaffold that this event came from | |
artifact | string | artifact name | |
step | string | which step of the build for the artifact oneof: Cache, Build, Push | |
status | string | artifact build status oneof: InProgress, Completed, Failed | |
actionableErr | ActionableErr | actionable error message | |
hostPlatform | string | platform of the host machine. For example linux/amd64 |
|
targetPlatforms | string | comma-delimited list of build target platforms. For example linux/amd64,linux/arm64 |
CloudRunReadyEvent
A Resource StatusCheck Event for a Cloud Run Service. Indicates that a Cloud Run Service has deployed successfully and is serving on the specified URL
Field | Type | Label | Description |
---|---|---|---|
id | string | id of the subtask which will be used in SkaffoldLog | |
task_id | string | id of the task of skaffold that this event came from | |
resource | string | the Cloud Run resource that was deployed | |
url | string | the base URL that the Cloud Run service is serving on. | |
ready_revision | string | the name of the revision that went ready. |
DebuggingContainerEvent
DebuggingContainerEvent is raised when a debugging container is started or terminated
Field | Type | Label | Description |
---|---|---|---|
id | string | id of the subtask which will be used in SkaffoldLog | |
task_id | string | id of the task of skaffold that this event came from | |
status | string | the container status oneof: Started, Terminated | |
podName | string | the pod name with the debugging container | |
containerName | string | the name of the container configured for debugging | |
namespace | string | the namespace of the debugging container | |
artifact | string | the corresponding artifact’s image name | |
runtime | string | the detected language runtime | |
workingDir | string | the working directory in the container image | |
debugPorts | DebuggingContainerEvent.DebugPortsEntry | repeated | the exposed debugging-related ports |
DebuggingContainerEvent.DebugPortsEntry
Field | Type | Label | Description |
---|---|---|---|
key | string | ||
value | uint32 |
DeployMetadata
Field | Type | Label | Description |
---|---|---|---|
deployers | DeployMetadata.Deployer | repeated | |
cluster | proto.enums.ClusterType |
DeployMetadata.Deployer
Field | Type | Label | Description |
---|---|---|---|
type | proto.enums.DeployerType | ||
count | int32 |
DeployState
DeployState
describes the status of the current deploy
Field | Type | Label | Description |
---|---|---|---|
status | string | ||
autoTrigger | bool | ||
statusCode | proto.enums.StatusCode |
DeploySubtaskEvent
DeploySubtaskEvent
represents the status of a deployment, and is emitted by Skaffold
anytime a deployment starts or completes, successfully or not.
Field | Type | Label | Description |
---|---|---|---|
id | string | id of the subtask which will be used in SkaffoldLog | |
task_id | string | id of the task of skaffold that this event came from | |
status | string | deployment status oneof: InProgress, Completed, Failed | |
actionableErr | ActionableErr | actionable error message |
Event
Event
describes an event in the Skaffold process.
It is one of MetaEvent, BuildEvent, TestEvent, DeployEvent, PortEvent, StatusCheckEvent, ResourceStatusCheckEvent, FileSyncEvent, or DebuggingContainerEvent.
Field | Type | Label | Description |
---|---|---|---|
timestamp | google.protobuf.Timestamp | timestamp of the event. | |
metaEvent | MetaEvent | contains general information regarding Skaffold like version info | |
skaffoldLogEvent | SkaffoldLogEvent | describes a log that comes from a skaffold phase | |
applicationLogEvent | ApplicationLogEvent | describes a log that comes from the user’s running application | |
taskEvent | TaskEvent | describes the start, end, or failure of a skaffold phase | |
buildSubtaskEvent | BuildSubtaskEvent | describes if the build status per artifact. Status could be one of “InProgress”, “Completed” or “Failed”. | |
deploySubtaskEvent | DeploySubtaskEvent | describes if the deployment has started, is in progress or is complete. | |
portEvent | PortForwardEvent | describes each port forwarding event. | |
statusCheckSubtaskEvent | StatusCheckSubtaskEvent | describes if the Status check has started, is in progress, has succeeded or failed. | |
fileSyncEvent | FileSyncEvent | describes the sync status. | |
debuggingContainerEvent | DebuggingContainerEvent | describes the appearance or disappearance of a debugging container | |
terminationEvent | TerminationEvent | describes a skaffold termination event | |
testEvent | TestSubtaskEvent | describes if the test has started, is in progress or is complete. | |
renderEvent | RenderSubtaskEvent | describes if the render has started, is in progress or is complete. | |
verifyEvent | VerifySubtaskEvent | describes if the render has started, is in progress or is complete. | |
cloudRunReadyEvent | CloudRunReadyEvent | describes a deployed Cloud Run service. |
FileSyncEvent
FileSyncEvent describes the sync status.
Field | Type | Label | Description |
---|---|---|---|
id | string | id of the subtask which will be used in SkaffoldLog | |
task_id | string | id of the task of skaffold that this event came from | |
fileCount | int32 | number of files synced | |
image | string | the container image to which files are sycned. | |
status | string | status of file sync. one of: Not Started, InProgress, Succeeded, Failed. | |
actionableErr | ActionableErr | actionable error message |
FileSyncState
FileSyncState
contains the status of the current file sync
Field | Type | Label | Description |
---|---|---|---|
status | string | ||
autoTrigger | bool |
IntOrString
IntOrString is a type that can hold an int32 or a string.
Field | Type | Label | Description |
---|---|---|---|
type | int32 | type of stored value | |
intVal | int32 | int value | |
strVal | string | string value |
Intent
Intent represents user intents for a given phase.
Field | Type | Label | Description |
---|---|---|---|
build | bool | in case skaffold dev is ran with autoBuild=false, a build intent enables building once | |
sync | bool | in case skaffold dev is ran with autoSync=false, a sync intent enables file sync once | |
deploy | bool | in case skaffold dev is ran with autoDeploy=false, a deploy intent enables deploys once | |
devloop | bool | in case skaffold dev is ran with autoDeploy=false, autoSync=false and autoBuild=false a devloop intent enables the entire dev loop once |
MetaEvent
MetaEvent
provides general information regarding Skaffold
Field | Type | Label | Description |
---|---|---|---|
entry | string | entry, for example: "Starting Skaffold: {Version:v0.39.0-16-g5bb7c9e0 ConfigVersion:skaffold/v1 GitVersion: GitCommit:5bb7c9e078e4d522a5ffc42a2f1274fd17d75902 GitTreeState:dirty BuildDate01:29Z GoVersion:go1.13rc1 Compiler:gc Platform:linux/amd64}" |
|
metadata | Metadata | Metadata describing skaffold pipeline |
Metadata
Field | Type | Label | Description |
---|---|---|---|
build | BuildMetadata | ||
deploy | DeployMetadata | ||
test | TestMetadata | ||
runID | string | ||
render | RenderMetadata | ||
additional | Metadata.AdditionalEntry | repeated | Additional key value pairs to describe the build pipeline |
Metadata.AdditionalEntry
Field | Type | Label | Description |
---|---|---|---|
key | string | ||
value | string |
PortForwardEvent
PortForwardEvent Event describes each port forwarding event.
Field | Type | Label | Description |
---|---|---|---|
id | string | id of the subtask which will be used in SkaffoldLog | |
task_id | string | id of the task of skaffold that this event came from | |
localPort | int32 | local port for forwarded resource | |
podName | string | pod name if port forwarded resourceType is Pod | |
containerName | string | container name if specified in the kubernetes spec | |
namespace | string | the namespace of the resource to port forward. | |
portName | string | ||
resourceType | string | resource type e.g. “pod”, “service”. | |
resourceName | string | name of the resource to forward. | |
address | string | address on which to bind | |
targetPort | IntOrString | target port is the resource port that will be forwarded. |
RenderMetadata
RenderMetadata describes the render pipeline
Field | Type | Label | Description |
---|---|---|---|
Renderers | RenderMetadata.Renderer | repeated |
RenderMetadata.Renderer
Field | Type | Label | Description |
---|---|---|---|
type | proto.enums.RenderType | ||
count | int32 |
RenderState
RenderState
describes the current state of the render
Field | Type | Label | Description |
---|---|---|---|
status | string | Status of the current render | |
statusCode | proto.enums.StatusCode | Renderstate status code |
RenderSubtaskEvent
RenderSubtaskEvent
represents the status of a render, and is emitted by Skaffold
anytime a render starts or completes, successfully or not.
Field | Type | Label | Description |
---|---|---|---|
id | string | id of the subtask which will be used in SkaffoldLog | |
task_id | string | id of the task of skaffold that this event came from | |
status | string | render status oneof: InProgress, Completed, Failed | |
actionableErr | ActionableErr | actionable error message |
Request
Field | Type | Label | Description |
---|---|---|---|
name | string |
Response
Field | Type | Label | Description |
---|---|---|---|
msg | string |
SkaffoldLogEvent
SkaffoldLogEvent
represents a piece of output that comes from a skaffold run, for example: “Generating tags…", “Step 1/3 : FROM gcr.io/distroless/base”
Field | Type | Label | Description |
---|---|---|---|
task_id | string | id of the task of skaffold that this log came from | |
subtask_id | string | id of the subtask that the log came from | |
level | proto.enums.LogLevel | string origin = 3; // REMOVED: which tool the output came from ex: skaffold, docker |
log level | | message | string | | contents of the log |
State
State
represents the current state of the Skaffold components
Field | Type | Label | Description |
---|---|---|---|
buildState | BuildState | ||
deployState | DeployState | ||
forwardedPorts | State.ForwardedPortsEntry | repeated | |
statusCheckState | StatusCheckState | ||
fileSyncState | FileSyncState | ||
debuggingContainers | DebuggingContainerEvent | repeated | |
metadata | Metadata | ||
testState | TestState | ||
renderState | RenderState | ||
verifyState | VerifyState |
State.ForwardedPortsEntry
Field | Type | Label | Description |
---|---|---|---|
key | int32 | ||
value | PortForwardEvent |
StateResponse
Field | Type | Label | Description |
---|---|---|---|
state | State |
StatusCheckState
StatusCheckState
describes the state of status check of current deployed resources.
Field | Type | Label | Description |
---|---|---|---|
status | string | ||
resources | StatusCheckState.ResourcesEntry | repeated | A map of resource name -> status-check-state . Where resource-name is the kubernetes resource name. The status-check-state can be - "NotStarted" : indicates that status-check has just started. - "InProgress" : InProgress is sent after every resource check is complete. - "Succeeded" : - "Failed" : |
statusCode | proto.enums.StatusCode | StatusCheck statusCode |
StatusCheckState.ResourcesEntry
Field | Type | Label | Description |
---|---|---|---|
key | string | ||
value | string |
StatusCheckSubtaskEvent
A Resource StatusCheck Event, indicates progress for each kubernetes deployment.
For every resource, there will be exactly one event with status
Succeeded or Failed event.
There can be multiple events with status
Pending.
Skaffold polls for resource status every 0.5 second. If the resource status changes, an event with status
“Pending”, “Complete” and “Failed”
will be sent with the new status.
Field | Type | Label | Description |
---|---|---|---|
id | string | id of the subtask which will be used in SkaffoldLog | |
task_id | string | id of the task of skaffold that this event came from | |
resource | string | id of the subtask which will be used in SkaffoldLog | |
status | string | id of the task of skaffold that this event came from | |
message | string | ||
statusCode | proto.enums.StatusCode | ||
actionableErr | ActionableErr | actionable error message |
Suggestion
Suggestion defines the action a user needs to recover from an error.
Field | Type | Label | Description |
---|---|---|---|
suggestionCode | proto.enums.SuggestionCode | code representing a suggestion | |
action | string | action represents the suggestion action |
TaskEvent
TaskEvent
represent the different larger phases of a skaffold session, for example Build, Deploy, etc.
If a phase fails, an actionable error will be attached
Field | Type | Label | Description |
---|---|---|---|
id | string | will be used by SkaffoldLog to link it to a task. Follows the form “{task_name}-{iteration-number}” | |
task | string | task name oneof: Tag, Build, Test, Deploy, StatusCheck, PortForward, DevLoop | |
description | string | additional more descriptive text for the task | |
iteration | int32 | which dev/debug iteration is currently running | |
status | string | artifact build status oneof: InProgress, Completed, Failed | |
actionableErr | ActionableErr | actionable error message |
TerminationEvent
TerminationEvent
marks the end of the skaffold session
Field | Type | Label | Description |
---|---|---|---|
status | string | status oneof: Completed or Failed | |
err | ActionableErr | actionable error message |
TestMetadata
TestMetadata describes the test pipeline
Field | Type | Label | Description |
---|---|---|---|
Testers | TestMetadata.Tester | repeated |
TestMetadata.Tester
Field | Type | Label | Description |
---|---|---|---|
type | proto.enums.TesterType | ||
count | int32 |
TestState
TestState
describes the current state of the test
Field | Type | Label | Description |
---|---|---|---|
status | string | Status of the current test | |
statusCode | proto.enums.StatusCode | Teststate status code |
TestSubtaskEvent
TestSubtaskEvent
represents the status of a test, and is emitted by Skaffold
anytime a test starts or completes, successfully or not.
Field | Type | Label | Description |
---|---|---|---|
id | string | id of the subtask which will be used in SkaffoldLog | |
task_id | string | id of the task of skaffold that this event came from | |
status | string | test status oneof: InProgress, Completed, Failed | |
actionableErr | ActionableErr | actionable error message |
TriggerRequest
Field | Type | Label | Description |
---|---|---|---|
state | TriggerState |
TriggerState
TriggerState represents trigger state for a given phase.
Field | Type | Label | Description |
---|---|---|---|
enabled | bool | enable or disable a trigger state |
UserIntentRequest
Field | Type | Label | Description |
---|---|---|---|
intent | Intent |
VerifyState
VerifyState
describes the current state of the render
Field | Type | Label | Description |
---|---|---|---|
status | string | Status of the current render | |
statusCode | proto.enums.StatusCode | Verifystate status code |
VerifySubtaskEvent
VerifyEvent
represents the status of a render, and is emitted by Skaffold
anytime a render starts or completes, successfully or not.
Field | Type | Label | Description |
---|---|---|---|
id | string | id of the subtask which will be used in SkaffoldLog | |
task_id | string | id of the task of skaffold that this event came from | |
status | string | render status oneof: InProgress, Completed, Failed | |
actionableErr | ActionableErr | actionable error message |
BuildType
Enum indicating build type i.e. local, cluster vs GCB
Name | Number | Description |
---|---|---|
UNKNOWN_BUILD_TYPE | 0 | Could not determine Build Type |
CLUSTER | 1 | Cluster Build |
GCB | 2 | GCB Build |
LOCAL | 3 | Local Build |
BuilderType
Enum indicating builders used
Name | Number | Description |
---|---|---|
UNKNOWN_BUILDER_TYPE | 0 | Could not determine builder type |
JIB | 1 | JIB Builder |
BAZEL | 2 | Bazel Builder |
BUILDPACKS | 3 | Buildpacks Builder |
CUSTOM | 4 | Custom Builder |
KANIKO | 5 | Kaniko Builder |
DOCKER | 6 | Docker Builder |
KO | 7 | Ko Builder |
ClusterType
Enum indicating cluster type the application is deployed to
Name | Number | Description |
---|---|---|
UNKNOWN_CLUSTER_TYPE | 0 | Could not determine Cluster Type |
MINIKUBE | 1 | Minikube Cluster |
GKE | 2 | GKE cluster |
OTHER | 3 | All Cluster except Minikube and GKE |
DeployerType
Enum indicating deploy tools used
Name | Number | Description |
---|---|---|
UNKNOWN_DEPLOYER_TYPE | 0 | Could not determine Deployer Type |
HELM | 1 | Helm Deployer |
KUSTOMIZE | 2 | Kustomize Deployer |
KUBECTL | 3 | Kubectl Deployer |
KPT | 4 | kpt Deployer |
LogLevel
Enum indicating the log level of a line of output
Name | Number | Description |
---|---|---|
DEBUG | 0 | Debug Level |
INFO | 1 | Info Level |
WARN | 2 | Warn Level |
ERROR | 3 | Error Level |
FATAL | 4 | Fatal Level |
PANIC | 5 | Panic Level |
TRACE | 6 | Trace Level |
STANDARD | 7 | User-visible output level |
RenderType
Enum indicating render manifests type
Name | Number | Description |
---|---|---|
UNKNOWN_RENDER_TYPE | 0 | Could not determine Render Type |
RAWK8S | 1 | Raw Manifests |
KUSTOMIZE_MANIFEST | 2 | kustomize manifests |
HELM_CHART | 3 | helm charts |
KPT_MANIFEST | 4 | kpt manifests |
StatusCode
Enum for Status codes
These error codes are prepended by Phase Name e.g.
INIT, BUILD, TEST, DEPLOY, STATUSCHECK, DEVINIT
For Success Error codes, use range 200 to 250.
For Unknown error codes, use range 500 to 600.
For Cancelled Error code, use range 800 to 850.
Name | Number | Description |
---|---|---|
OK | 0 | A default status code for events that do not have an associated phase. Typically seen with the DevEndEvent event on success. |
STATUSCHECK_SUCCESS | 200 | Status Check Success |
BUILD_SUCCESS | 201 | Build Success |
RENDER_SUCCESS | 204 | Render Success |
DEPLOY_SUCCESS | 202 | Deploy Success |
TEST_SUCCESS | 203 | Test Success |
BUILD_PUSH_ACCESS_DENIED | 101 | Build error due to push access denied |
BUILD_PROJECT_NOT_FOUND | 102 | Build error due to GCP project not found. |
BUILD_DOCKER_DAEMON_NOT_RUNNING | 103 | Docker build error due to docker daemon not running |
BUILD_USER_ERROR | 104 | Build error due to user application code, e.g. compilation error, dockerfile error etc |
BUILD_DOCKER_UNAVAILABLE | 105 | Build error due to docker not available |
BUILD_DOCKER_UNAUTHORIZED | 106 | Docker build error due to user not authorized to perform the action |
BUILD_DOCKER_SYSTEM_ERR | 107 | Docker system build error |
BUILD_DOCKER_NOT_MODIFIED_ERR | 108 | Docker build error due to Docker build container is already in the desired state |
BUILD_DOCKER_NOT_IMPLEMENTED_ERR | 109 | Docker build error indicating a feature not supported |
BUILD_DOCKER_DATA_LOSS_ERR | 110 | Docker build error indicates that for given build, data was lost or there is data corruption |
BUILD_DOCKER_FORBIDDEN_ERR | 111 | Docker build error indicates user is forbidden to perform the build or step/action. |
BUILD_DOCKER_CONFLICT_ERR | 112 | Docker build error due to some internal error and docker container state conflicts with the requested action and can’t be performed |
BUILD_DOCKER_ERROR_NOT_FOUND | 113 | Docker build error indicates the requested object does not exist |
BUILD_DOCKER_INVALID_PARAM_ERR | 114 | Docker build error indication invalid parameter sent to docker command |
BUILD_DOCKERFILE_NOT_FOUND | 115 | Docker build failed due to dockerfile not found |
BUILD_DOCKER_CACHE_FROM_PULL_ERR | 116 | Docker build failed due cacheFrom user config error |
BUILD_DOCKER_GET_DIGEST_ERR | 117 | Build error due to digest for built artifact could not be retrieved from docker daemon. |
BUILD_DOCKER_NO_SPACE_ERR | 127 | Build error due no space left in docker. |
BUILD_REGISTRY_GET_DIGEST_ERR | 118 | Build error due to digest for built artifact could not be retrieved from registry. |
BUILD_UNKNOWN_JIB_PLUGIN_TYPE | 119 | Build error indicating unknown Jib plugin type. Should be one of [maven, gradle] |
BUILD_JIB_GRADLE_DEP_ERR | 120 | Build error determining dependency for jib gradle project. |
BUILD_JIB_MAVEN_DEP_ERR | 121 | Build error determining dependency for jib gradle project. |
INIT_DOCKER_NETWORK_LISTING_CONTAINERS | 122 | Docker build error when listing containers. |
INIT_DOCKER_NETWORK_INVALID_CONTAINER_NAME | 123 | Docker build error indicating an invalid container name (or id). |
INIT_DOCKER_NETWORK_CONTAINER_DOES_NOT_EXIST | 124 | Docker build error indicating the container referenced does not exists in the docker context used. |
INIT_DOCKER_NETWORK_INVALID_MODE | 125 | Docker Network invalid mode |
INIT_DOCKER_NETWORK_PARSE_ERR | 126 | Error parsing Docker Network mode |
BUILD_GCB_CREATE_BUILD_ERR | 128 | GCB Create Build Error |
BUILD_GCB_GET_BUILD_ID_ERR | 129 | GCB error indicating an error to fetch build id. |
BUILD_GCB_GET_BUILD_STATUS_ERR | 130 | GCB error indicating an error to fetch build status. |
BUILD_GCB_GET_BUILD_LOG_ERR | 131 | GCB error indicating an error to fetch build logs. |
BUILD_GCB_COPY_BUILD_LOG_ERR | 132 | GCB error indicating an error to fetch build status. |
BUILD_GCB_GET_BUILT_IMAGE_ERR | 133 | GCB error indicating an error retrieving the built image id. |
BUILD_GCB_BUILD_FAILED | 134 | GCB error indicating build failure. |
BUILD_GCB_BUILD_INTERNAL_ERR | 135 | GCB error indicating build failure due to internal errror. |
BUILD_GCB_BUILD_TIMEOUT | 136 | GCB error indicating build failure due to timeout. |
BUILD_GCB_GENERATE_BUILD_DESCRIPTOR_ERR | 137 | GCB error to generate the build descriptor. |
BUILD_GCB_UPLOAD_TO_GCS_ERR | 138 | GCB error to upload to GCS. |
BUILD_GCB_JIB_DEPENDENCY_ERR | 139 | GCB error to fetch jib artifact dependency. |
BUILD_GCB_GET_DEPENDENCY_ERR | 140 | GCB error to fetch artifact dependency. |
BUILD_GCB_GET_GCS_BUCKET_ERR | 141 | GCB error to get GCS bucket. |
BUILD_GCB_CREATE_BUCKET_ERR | 142 | GCB error to create a GCS bucket. |
BUILD_GCB_EXTRACT_PROJECT_ID | 143 | GCB error to extract Project ID. |
BUILD_GET_CLOUD_STORAGE_CLIENT_ERR | 144 | GCB error to get cloud storage client to perform GCS operation. |
BUILD_GET_CLOUD_BUILD_CLIENT_ERR | 145 | GCB error to get cloud build client to perform GCB operations. |
BUILD_UNKNOWN_PLATFORM_FLAG | 150 | Value provided to –platform flag cannot be parsed |
BUILD_CROSS_PLATFORM_ERR | 151 | Cross-platform build failures |
BUILD_CROSS_PLATFORM_NO_REGISTRY_ERR | 152 | Multi-platfor build fails due to no container registry set |
STATUSCHECK_IMAGE_PULL_ERR | 300 | Container image pull error |
STATUSCHECK_CONTAINER_CREATING | 301 | Container creating error |
STATUSCHECK_RUN_CONTAINER_ERR | 302 | Container run error |
STATUSCHECK_CONTAINER_TERMINATED | 303 | Container is already terminated |
STATUSCHECK_DEPLOYMENT_ROLLOUT_PENDING | 304 | Deployment waiting for rollout |
STATUSCHECK_STANDALONE_PODS_PENDING | 305 | Standalone pods pending to stabilize |
STATUSCHECK_CONTAINER_RESTARTING | 356 | Container restarting error |
STATUSCHECK_UNHEALTHY | 357 | Readiness probe failed |
STATUSCHECK_CONTAINER_EXEC_ERROR | 358 | Executable binary format error |
STATUSCHECK_NODE_MEMORY_PRESSURE | 400 | Node memory pressure error |
STATUSCHECK_NODE_DISK_PRESSURE | 401 | Node disk pressure error |
STATUSCHECK_NODE_NETWORK_UNAVAILABLE | 402 | Node network unavailable error |
STATUSCHECK_NODE_PID_PRESSURE | 403 | Node PID pressure error |
STATUSCHECK_NODE_UNSCHEDULABLE | 404 | Node unschedulable error |
STATUSCHECK_NODE_UNREACHABLE | 405 | Node unreachable error |
STATUSCHECK_NODE_NOT_READY | 406 | Node not ready error |
STATUSCHECK_FAILED_SCHEDULING | 407 | Scheduler failure error |
STATUSCHECK_KUBECTL_CONNECTION_ERR | 409 | Kubectl connection error |
STATUSCHECK_KUBECTL_PID_KILLED | 410 | Kubectl process killed error |
STATUSCHECK_KUBECTL_CLIENT_FETCH_ERR | 411 | Kubectl client fetch err |
STATUSCHECK_DEPLOYMENT_FETCH_ERR | 412 | |
STATUSCHECK_STANDALONE_PODS_FETCH_ERR | 413 | |
STATUSCHECK_CONFIG_CONNECTOR_RESOURCES_FETCH_ERR | 414 | |
STATUSCHECK_STATEFULSET_FETCH_ERR | 415 | |
STATUSCHECK_POD_INITIALIZING | 451 | Pod Initializing |
STATUSCHECK_CONFIG_CONNECTOR_IN_PROGRESS | 452 | The actual state of the resource has not yet reached the desired state |
STATUSCHECK_CONFIG_CONNECTOR_FAILED | 453 | The process of reconciling the actual state with the desired state has encountered an error |
STATUSCHECK_CONFIG_CONNECTOR_TERMINATING | 454 | The resource is in the process of being deleted |
STATUSCHECK_CONFIG_CONNECTOR_NOT_FOUND | 455 | The resource does not exist |
UNKNOWN_ERROR | 500 | Could not determine error and phase |
STATUSCHECK_UNKNOWN | 501 | Status Check error unknown |
STATUSCHECK_UNKNOWN_UNSCHEDULABLE | 502 | Container is unschedulable due to unknown reasons |
STATUSCHECK_CONTAINER_WAITING_UNKNOWN | 503 | Container is waiting due to unknown reason |
STATUSCHECK_UNKNOWN_EVENT | 509 | Container event reason unknown |
STATUSCHECK_INTERNAL_ERROR | 514 | Status Check internal error |
DEPLOY_UNKNOWN | 504 | Deploy failed due to unknown reason |
SYNC_UNKNOWN | 505 | SYNC failed due to known reason |
BUILD_UNKNOWN | 506 | Build failed due to unknown reason |
DEVINIT_UNKNOWN | 507 | Dev Init failed due to unknown reason |
CLEANUP_UNKNOWN | 508 | Cleanup failed due to unknown reason |
INIT_UNKNOWN | 510 | Initialization of the Skaffold session failed due to unknown reason(s) |
BUILD_DOCKER_UNKNOWN | 511 | Build failed due to docker unknown error |
TEST_UNKNOWN | 512 | Test failed due to unknown reason |
BUILD_GCB_BUILD_UNKNOWN_STATUS | 513 | GCB error indicating build failed due to unknown status. |
SYNC_INIT_ERROR | 601 | File Sync Initialize failure |
DEVINIT_REGISTER_BUILD_DEPS | 701 | Failed to configure watcher for build dependencies in dev loop |
DEVINIT_REGISTER_TEST_DEPS | 702 | Failed to configure watcher for test dependencies in dev loop |
DEVINIT_REGISTER_DEPLOY_DEPS | 703 | Failed to configure watcher for deploy dependencies in dev loop |
DEVINIT_REGISTER_CONFIG_DEP | 704 | Failed to configure watcher for Skaffold configuration file. |
DEVINIT_UNSUPPORTED_V1_MANIFEST | 705 | Failed to configure watcher for build dependencies for a base image with v1 manifest. |
DEVINIT_REGISTER_RENDER_DEPS | 706 | Failed to configure watcher for render dependencies in dev loop |
STATUSCHECK_USER_CANCELLED | 800 | User cancelled the skaffold dev run |
STATUSCHECK_DEADLINE_EXCEEDED | 801 | Deadline for status check exceeded |
BUILD_CANCELLED | 802 | Build Cancelled |
DEPLOY_CANCELLED | 803 | Deploy cancelled due to user cancellation or one or more deployers failed. |
BUILD_DOCKER_CANCELLED | 804 | Docker build cancelled. |
BUILD_DOCKER_DEADLINE | 805 | Build error due to docker deadline was reached before the docker action completed |
BUILD_GCB_BUILD_CANCELLED | 806 | GCB Build cancelled. |
INIT_CREATE_TAGGER_ERROR | 901 | Skaffold was unable to create the configured tagger |
INIT_MINIKUBE_PAUSED_ERROR | 902 | Skaffold was unable to start as Minikube appears to be paused |
INIT_MINIKUBE_NOT_RUNNING_ERROR | 903 | Skaffold was unable to start as Minikube appears to be stopped |
INIT_CREATE_BUILDER_ERROR | 904 | Skaffold was unable to create a configured image builder |
INIT_CREATE_DEPLOYER_ERROR | 905 | Skaffold was unable to create a configured deployer |
INIT_CREATE_TEST_DEP_ERROR | 906 | Skaffold was unable to create a configured test |
INIT_CACHE_ERROR | 907 | Skaffold encountered an error validating the artifact cache |
INIT_CREATE_WATCH_TRIGGER_ERROR | 908 | Skaffold encountered an error when configuring file watching |
INIT_CREATE_ARTIFACT_DEP_ERROR | 909 | Skaffold encountered an error when evaluating artifact dependencies |
INIT_CLOUD_RUN_LOCATION_ERROR | 910 | No Location was specified for Cloud Run |
DEPLOY_CLUSTER_CONNECTION_ERR | 1001 | Unable to connect to cluster |
DEPLOY_DEBUG_HELPER_RETRIEVE_ERR | 1002 | Could not retrieve debug helpers. |
DEPLOY_CLEANUP_ERR | 1003 | Deploy clean up error |
DEPLOY_HELM_APPLY_LABELS | 1004 | Unable to apply helm labels. |
DEPLOY_HELM_USER_ERR | 1005 | Deploy error due to user deploy config for helm deployer |
DEPLOY_NO_MATCHING_BUILD | 1006 | An image was referenced with no matching build result |
DEPLOY_HELM_VERSION_ERR | 1007 | Unable to get helm client version |
DEPLOY_HELM_MIN_VERSION_ERR | 1008 | Helm version not supported. |
DEPLOY_KUBECTL_VERSION_ERR | 1109 | Unable to retrieve kubectl version |
DEPLOY_KUBECTL_OFFLINE_MODE_ERR | 1010 | User specified offline mode for rendering but remote manifests presents. |
DEPLOY_ERR_WAITING_FOR_DELETION | 1011 | Error waiting for previous version deletion before next version is active. |
DEPLOY_READ_MANIFEST_ERR | 1012 | Error reading manifests |
DEPLOY_READ_REMOTE_MANIFEST_ERR | 1013 | Error reading remote manifests |
DEPLOY_LIST_MANIFEST_ERR | 1014 | Errors listing manifests |
DEPLOY_KUBECTL_USER_ERR | 1015 | Deploy error due to user deploy config for kubectl deployer |
DEPLOY_KUSTOMIZE_USER_ERR | 1016 | Deploy error due to user deploy config for kustomize deployer |
DEPLOY_REPLACE_IMAGE_ERR | 1017 | Error replacing a built artifact in the manifests |
DEPLOY_TRANSFORM_MANIFEST_ERR | 1018 | Error transforming a manifest during skaffold debug |
DEPLOY_SET_LABEL_ERR | 1019 | Error setting user specified additional labels. |
DEPLOY_MANIFEST_WRITE_ERR | 1020 | Error writing hydrated kubernetes manifests. |
DEPLOY_PARSE_MANIFEST_IMAGES_ERR | 1021 | Error getting images from a kubernetes manifest. |
DEPLOY_HELM_CREATE_NS_NOT_AVAILABLE | 1022 | Helm config createNamespace not available |
DEPLOY_CLUSTER_INTERNAL_SYSTEM_ERR | 1023 | Kubernetes cluster reported an internal system error |
DEPLOY_KPTFILE_INIT_ERR | 1024 | The Kptfile cannot be created via kpt live init . |
DEPLOY_KPT_SOURCE_ERR | 1025 | The kpt fn source cannot read the given manifests. |
DEPLOY_KPTFILE_INVALID_YAML_ERR | 1026 | The Kptfile exists but cannot be opened or parsed. |
DEPLOY_KPT_APPLY_ERR | 1027 | kpt fails to live apply the manifests to the cluster. |
DEPLOY_GET_CLOUD_RUN_CLIENT_ERR | 1028 | The Cloud Run Client could not be created |
DEPLOY_CLOUD_RUN_GET_SERVICE_ERR | 1029 | The Cloud Run Client could not get details about the service. |
DEPLOY_CLOUD_RUN_UPDATE_SERVICE_ERR | 1030 | The Cloud Run Client was unable to update the service. |
DEPLOY_CLOUD_RUN_DELETE_SERVICE_ERR | 1031 | The Cloud Run Client was unable to delete the service. |
TEST_USER_CONFIG_ERR | 1101 | Error expanding paths |
TEST_CST_USER_ERR | 1102 | Error running container-structure-test |
TEST_IMG_PULL_ERR | 1103 | Unable to docker pull image |
TEST_CUSTOM_CMD_PARSE_ERR | 1104 | Unable to parse test command |
TEST_CUSTOM_CMD_RUN_NON_ZERO_EXIT_ERR | 1105 | Command returned non-zero exit code |
TEST_CUSTOM_CMD_RUN_TIMEDOUT_ERR | 1106 | command cancelled or timed out |
TEST_CUSTOM_CMD_RUN_CANCELLED_ERR | 1107 | command cancelled or timed out |
TEST_CUSTOM_CMD_RUN_EXECUTION_ERR | 1108 | command context error |
TEST_CUSTOM_CMD_RUN_EXITED_ERR | 1110 | command exited |
TEST_CUSTOM_CMD_RUN_ERR | 1111 | error running cmd |
TEST_CUSTOM_DEPENDENCIES_CMD_ERR | 1112 | Error getting dependencies from command |
TEST_CUSTOM_DEPENDENCIES_UNMARSHALL_ERR | 1113 | Unmarshalling dependency output error |
TEST_CUSTOM_CMD_RETRIEVE_ERR | 1114 | Error retrieving the command |
RENDER_KPTFILE_INIT_ERR | 1501 | Render errors The Kptfile cannot be created via kpt pkg init . |
RENDER_KPTFILE_INVALID_YAML_ERR | 1401 | The Kptfile is not a valid yaml file |
RENDER_KPTFILE_INVALID_SCHEMA_ERR | 1402 | The Kptfile is not a valid API schema |
RENDER_SET_NAMESPACE_ERR | 1403 | Error setting namespace. |
RENDER_NAMESPACE_ALREADY_SET_ERR | 1404 | Namespace is already set. |
RENDER_REPLACE_IMAGE_ERR | 1405 | Error replacing a built artifact in the manifests |
RENDER_TRANSFORM_MANIFEST_ERR | 1406 | Error transforming a manifest during skaffold debug |
RENDER_SET_LABEL_ERR | 1407 | Error setting user specified additional labels. |
RENDER_MANIFEST_WRITE_ERR | 1408 | Error writing hydrated kubernetes manifests. |
RENDER_PARSE_MANIFEST_IMAGES_ERR | 1409 | Error getting images from a kubernetes manifest. |
CONFIG_FILE_PARSING_ERR | 1201 | Catch-all configuration file parsing error |
CONFIG_FILE_NOT_FOUND_ERR | 1202 | Main configuration file not found |
CONFIG_DEPENDENCY_NOT_FOUND_ERR | 1203 | Dependency configuration file not found |
CONFIG_DUPLICATE_NAMES_SAME_FILE_ERR | 1204 | Duplicate config names in the same configuration file |
CONFIG_DUPLICATE_NAMES_ACROSS_FILES_ERR | 1205 | Duplicate config names in two configuration files |
CONFIG_BAD_FILTER_ERR | 1206 | No configs matching configs filter |
CONFIG_ZERO_FOUND_ERR | 1207 | No configs parsed from current file |
CONFIG_APPLY_PROFILES_ERR | 1208 | Failed to apply profiles to config |
CONFIG_DEFAULT_VALUES_ERR | 1209 | Failed to set default config values |
CONFIG_FILE_PATHS_SUBSTITUTION_ERR | 1210 | Failed to substitute absolute file paths in config |
CONFIG_MULTI_IMPORT_PROFILE_CONFLICT_ERR | 1211 | Same config imported at least twice with different set of profiles |
CONFIG_PROFILES_NOT_FOUND_ERR | 1212 | Profile selection did not match known profile names |
CONFIG_UNKNOWN_API_VERSION_ERR | 1213 | Config API version not found |
CONFIG_UNKNOWN_VALIDATOR | 1214 | The validator is not allowed in skaffold-managed mode. |
CONFIG_UNKNOWN_TRANSFORMER | 1215 | The transformer is not allowed in skaffold-managed mode. |
CONFIG_MISSING_MANIFEST_FILE_ERR | 1216 | Manifest file not found |
CONFIG_REMOTE_REPO_CACHE_NOT_FOUND_ERR | 1217 | Remote config repository cache not found and sync disabled |
CONFIG_UPGRADE_ERR | 1218 | Skaffold config version mismatch |
INSPECT_UNKNOWN_ERR | 1301 | Catch-all skaffold inspect command error |
INSPECT_BUILD_ENV_ALREADY_EXISTS_ERR | 1302 | Trying to add new build environment that already exists |
INSPECT_BUILD_ENV_INCORRECT_TYPE_ERR | 1303 | Trying to modify build environment that doesn’t exist |
INSPECT_PROFILE_NOT_FOUND_ERR | 1304 | Trying to modify a profile that doesn’t exist |
PORT_FORWARD_RUN_GCLOUD_NOT_FOUND | 1601 | |
PORT_FORWARD_RUN_PROXY_START_ERROR | 1602 |
SuggestionCode
Enum for Suggestion codes
Name | Number | Description |
---|---|---|
NIL | 0 | default nil suggestion. This is usually set when no error happens. |
ADD_DEFAULT_REPO | 100 | Add Default Repo |
CHECK_DEFAULT_REPO | 101 | Verify Default Repo |
CHECK_DEFAULT_REPO_GLOBAL_CONFIG | 102 | Verify default repo in the global config |
GCLOUD_DOCKER_AUTH_CONFIGURE | 103 | run gcloud docker auth configure |
DOCKER_AUTH_CONFIGURE | 104 | Run docker auth configure |
CHECK_GCLOUD_PROJECT | 105 | Verify Gcloud Project |
CHECK_DOCKER_RUNNING | 106 | Check if docker is running |
FIX_USER_BUILD_ERR | 107 | Fix User Build Error |
DOCKER_BUILD_RETRY | 108 | Docker build internal error, try again |
FIX_CACHE_FROM_ARTIFACT_CONFIG | 109 | Fix cacheFrom config for given artifact and try again |
FIX_SKAFFOLD_CONFIG_DOCKERFILE | 110 | Fix dockerfile config for a given artifact and try again. |
FIX_JIB_PLUGIN_CONFIGURATION | 111 | Use a supported Jib plugin type |
FIX_DOCKER_NETWORK_CONTAINER_NAME | 112 | Docker build network invalid docker container name (or id). |
CHECK_DOCKER_NETWORK_CONTAINER_RUNNING | 113 | Docker build network container not existing in the current context. |
FIX_DOCKER_NETWORK_MODE_WHEN_EXTRACTING_CONTAINER_NAME | 114 | Executing extractContainerNameFromNetworkMode with a non valid mode (only container mode allowed) |
RUN_DOCKER_PRUNE | 115 | Prune Docker image |
SET_CLEANUP_FLAG | 116 | Set Cleanup flag for skaffold command. |
BUILD_FIX_UNKNOWN_PLATFORM_FLAG | 117 | Check value provided to the --platform flag |
BUILD_INSTALL_PLATFORM_EMULATORS | 118 | Check if QEMU platform emulators are installed |
SET_PUSH_AND_CONTAINER_REGISTRY | 119 | Set –push and container registry to run a multi-platform build |
CHECK_CLUSTER_CONNECTION | 201 | Check cluster connection |
CHECK_MINIKUBE_STATUS | 202 | Check minikube status |
INSTALL_HELM | 203 | Install helm tool |
UPGRADE_HELM | 204 | Upgrade helm tool |
FIX_SKAFFOLD_CONFIG_HELM_ARTIFACT_OVERRIDES | 205 | Fix helm releases.artifactOverrides config to match with build.artifacts (no longer used in Skaffold v2) |
UPGRADE_HELM32 | 206 | Upgrade helm version to v3.2.0 and higher. |
FIX_SKAFFOLD_CONFIG_HELM_CREATE_NAMESPACE | 207 | Set releases.createNamespace to false. |
INVALID_KPT_MANIFESTS | 208 | check the Kptfile validation. |
ALIGN_KPT_INVENTORY | 209 | align the inventory info in kpt live apply. |
INSTALL_KUBECTL | 220 | Install kubectl tool |
SPECIFY_CLOUD_RUN_LOCATION | 230 | Specify Cloud Run Location |
CHECK_CONTAINER_LOGS | 301 | Container run error |
CHECK_READINESS_PROBE | 302 | Pod Health check error |
CHECK_CONTAINER_IMAGE | 303 | Check Container image |
ADDRESS_NODE_MEMORY_PRESSURE | 400 | Node pressure error |
ADDRESS_NODE_DISK_PRESSURE | 401 | Node disk pressure error |
ADDRESS_NODE_NETWORK_UNAVAILABLE | 402 | Node network unavailable error |
ADDRESS_NODE_PID_PRESSURE | 403 | Node PID pressure error |
ADDRESS_NODE_UNSCHEDULABLE | 404 | Node unschedulable error |
ADDRESS_NODE_UNREACHABLE | 405 | Node unreachable error |
ADDRESS_NODE_NOT_READY | 406 | Node not ready error |
ADDRESS_FAILED_SCHEDULING | 407 | Scheduler failure error |
CHECK_HOST_CONNECTION | 408 | Cluster Connectivity error |
START_MINIKUBE | 501 | Minikube is stopped: use minikube start |
UNPAUSE_MINIKUBE | 502 | Minikube is paused: use minikube unpause |
RUN_DOCKER_PULL | 551 | Run Docker pull for the image with v1 manifest and try again. |
SET_RENDER_FLAG_OFFLINE_FALSE | 600 | Rerun with correct offline flag value. |
KPTFILE_MANUAL_INIT | 601 | Manually run kpt pkg init or kpt live init |
KPTFILE_CHECK_YAML | 602 | Check if the Kptfile is correct. |
REMOVE_NAMESPACE_FROM_MANIFESTS | 603 | Remove namespace from manifests |
CONFIG_CHECK_FILE_PATH | 700 | Check configuration file path |
CONFIG_CHECK_DEPENDENCY_DEFINITION | 701 | Check dependency config definition |
CONFIG_CHANGE_NAMES | 702 | Change config name to avoid duplicates |
CONFIG_CHECK_FILTER | 703 | Check config filter |
CONFIG_CHECK_PROFILE_DEFINITION | 704 | Check profile definition in current config |
CONFIG_CHECK_DEPENDENCY_PROFILES_SELECTION | 705 | Check active profile selection for dependency config |
CONFIG_CHECK_PROFILE_SELECTION | 706 | Check profile selection flag |
CONFIG_FIX_API_VERSION | 707 | Fix config API version or upgrade the skaffold binary |
CONFIG_ALLOWLIST_VALIDATORS | 708 | Only the allow listed validators are acceptable in skaffold-managed mode. |
CONFIG_ALLOWLIST_transformers | 709 | Only the allow listed transformers are acceptable in skaffold-managed mode. |
CONFIG_FIX_MISSING_MANIFEST_FILE | 710 | Check mising manifest file section of config and fix as needed. |
CONFIG_ENABLE_REMOTE_REPO_SYNC | 711 | Enable remote repo sync, or clone manually |
CONFIG_FIX_SKAFFOLD_CONFIG_VERSION | 712 | Upgrade skaffold config version to latest |
INSPECT_USE_MODIFY_OR_NEW_PROFILE | 800 | Create new build env in a profile instead, or use the ‘modify’ command |
INSPECT_USE_ADD_BUILD_ENV | 801 | Check profile selection, or use the ‘add’ command instead |
INSPECT_CHECK_INPUT_PROFILE | 802 | Check profile flag value |
OPEN_ISSUE | 900 | Open an issue so this situation can be diagnosed |
CHECK_CUSTOM_COMMAND | 1000 | Test error suggestion codes |
FIX_CUSTOM_COMMAND_TIMEOUT | 1001 | |
CHECK_CUSTOM_COMMAND_DEPENDENCIES_CMD | 1002 | |
CHECK_CUSTOM_COMMAND_DEPENDENCIES_PATHS | 1003 | |
CHECK_TEST_COMMAND_AND_IMAGE_NAME | 1004 |
TesterType
Enum indicating test tools used
Name | Number | Description |
---|---|---|
UNKNOWN_TEST_TYPE | 0 | Could not determine Test Type |
UNIT | 1 | Unit tests |
CONTAINER_STRUCTURE_TEST | 2 | Container Structure tests |