Skip to content
Ona Docs

Environments

CreateEnvironment
client.Environments.New(ctx, body) (*EnvironmentNewResponse, error)
POST/gitpod.v1.EnvironmentService/CreateEnvironment
CreateEnvironmentAccessToken
client.Environments.NewEnvironmentToken(ctx, body) (*EnvironmentNewEnvironmentTokenResponse, error)
POST/gitpod.v1.EnvironmentService/CreateEnvironmentAccessToken
CreateEnvironmentFromProject
client.Environments.NewFromProject(ctx, body) (*EnvironmentNewFromProjectResponse, error)
POST/gitpod.v1.EnvironmentService/CreateEnvironmentFromProject
CreateEnvironmentLogsToken
client.Environments.NewLogsToken(ctx, body) (*EnvironmentNewLogsTokenResponse, error)
POST/gitpod.v1.EnvironmentService/CreateEnvironmentLogsToken
DeleteEnvironment
client.Environments.Delete(ctx, body) (*EnvironmentDeleteResponse, error)
POST/gitpod.v1.EnvironmentService/DeleteEnvironment
ListEnvironments
client.Environments.List(ctx, params) (*EnvironmentsPage[Environment], error)
POST/gitpod.v1.EnvironmentService/ListEnvironments
MarkEnvironmentActive
client.Environments.MarkActive(ctx, body) (*EnvironmentMarkActiveResponse, error)
POST/gitpod.v1.EnvironmentService/MarkEnvironmentActive
GetEnvironment
client.Environments.Get(ctx, body) (*EnvironmentGetResponse, error)
POST/gitpod.v1.EnvironmentService/GetEnvironment
StartEnvironment
client.Environments.Start(ctx, body) (*EnvironmentStartResponse, error)
POST/gitpod.v1.EnvironmentService/StartEnvironment
StopEnvironment
client.Environments.Stop(ctx, body) (*EnvironmentStopResponse, error)
POST/gitpod.v1.EnvironmentService/StopEnvironment
UnarchiveEnvironment
client.Environments.Unarchive(ctx, body) (*EnvironmentUnarchiveResponse, error)
POST/gitpod.v1.EnvironmentService/UnarchiveEnvironment
UpdateEnvironment
client.Environments.Update(ctx, body) (*EnvironmentUpdateResponse, error)
POST/gitpod.v1.EnvironmentService/UpdateEnvironment
ModelsExpand Collapse
type AdmissionLevel string

Admission level describes who can access an environment instance and its ports.

One of the following:
const AdmissionLevelUnspecified AdmissionLevel = "ADMISSION_LEVEL_UNSPECIFIED"
const AdmissionLevelOwnerOnly AdmissionLevel = "ADMISSION_LEVEL_OWNER_ONLY"
const AdmissionLevelEveryone AdmissionLevel = "ADMISSION_LEVEL_EVERYONE"
const AdmissionLevelOrganization AdmissionLevel = "ADMISSION_LEVEL_ORGANIZATION"
const AdmissionLevelCreatorOnly AdmissionLevel = "ADMISSION_LEVEL_CREATOR_ONLY"
type BpfDebugLevel string

BPFDebugLevel controls the verbosity of BPF trace_pipe output (bpf_printk). Applies to all BPF-based agents (veto exec, future agents).

One of the following:
const BpfDebugLevelUnspecified BpfDebugLevel = "BPF_DEBUG_LEVEL_UNSPECIFIED"
const BpfDebugLevelInfo BpfDebugLevel = "BPF_DEBUG_LEVEL_INFO"
const BpfDebugLevelVerbose BpfDebugLevel = "BPF_DEBUG_LEVEL_VERBOSE"
type Environment struct{…}

+resource get environment

ID string

ID is a unique identifier of this environment. No other environment with the same name must be managed by this environment manager

Metadata EnvironmentMetadataOptional

Metadata is data associated with this environment that’s required for other parts of Gitpod to function

Annotations map[string, string]Optional

annotations are key/value pairs that gets attached to the environment. +internal - not yet implemented

ArchivedAt TimeOptional

Time when the Environment was archived. If not set, the environment is not archived.

formatdate-time
CreatedAt TimeOptional

Time when the Environment was created.

formatdate-time
Creator SubjectOptional

creator is the identity of the creator of the environment

ID stringOptional

id is the UUID of the subject

formatuuid
Principal PrincipalOptional

Principal is the principal of the subject

One of the following:
const PrincipalUnspecified Principal = "PRINCIPAL_UNSPECIFIED"
const PrincipalAccount Principal = "PRINCIPAL_ACCOUNT"
const PrincipalUser Principal = "PRINCIPAL_USER"
const PrincipalRunner Principal = "PRINCIPAL_RUNNER"
const PrincipalEnvironment Principal = "PRINCIPAL_ENVIRONMENT"
const PrincipalServiceAccount Principal = "PRINCIPAL_SERVICE_ACCOUNT"
const PrincipalRunnerManager Principal = "PRINCIPAL_RUNNER_MANAGER"
LastStartedAt TimeOptional

Time when the Environment was last started (i.e. CreateEnvironment or StartEnvironment were called).

formatdate-time
LockdownAt TimeOptional

lockdown_at is the time at which the environment becomes locked down due to the organization’s maximum environment lifetime policy. Nil when no lifetime policy applies.

formatdate-time
Name stringOptional

name is the name of the environment as specified by the user

maxLength80
OrganizationID stringOptional

organization_id is the ID of the organization that contains the environment

formatuuid
OriginalContextURL stringOptional

original_context_url is the normalized URL from which the environment was created

PrebuildID stringOptional

prebuild_id is the ID of the prebuild this environment was created from. Only set if the environment was created from a prebuild.

formatuuid
ProjectID stringOptional

If the Environment was started from a project, the project_id will reference the project.

Role EnvironmentRoleOptional

role is the role of the environment

One of the following:
const EnvironmentRoleUnspecified EnvironmentRole = "ENVIRONMENT_ROLE_UNSPECIFIED"
const EnvironmentRoleDefault EnvironmentRole = "ENVIRONMENT_ROLE_DEFAULT"
const EnvironmentRolePrebuild EnvironmentRole = "ENVIRONMENT_ROLE_PREBUILD"
const EnvironmentRoleWorkflow EnvironmentRole = "ENVIRONMENT_ROLE_WORKFLOW"
RunnerID stringOptional

Runner is the ID of the runner that runs this environment.

Spec EnvironmentSpecOptional

Spec is the configuration of the environment that’s required for the runner to start the environment

Admission AdmissionLevelOptional

admission controlls who can access the environment and its ports.

One of the following:
const AdmissionLevelUnspecified AdmissionLevel = "ADMISSION_LEVEL_UNSPECIFIED"
const AdmissionLevelOwnerOnly AdmissionLevel = "ADMISSION_LEVEL_OWNER_ONLY"
const AdmissionLevelEveryone AdmissionLevel = "ADMISSION_LEVEL_EVERYONE"
const AdmissionLevelOrganization AdmissionLevel = "ADMISSION_LEVEL_ORGANIZATION"
const AdmissionLevelCreatorOnly AdmissionLevel = "ADMISSION_LEVEL_CREATOR_ONLY"
AutomationsFile EnvironmentSpecAutomationsFileOptional

automations_file is the automations file spec of the environment

AutomationsFilePath stringOptional

automations_file_path is the path to the automations file that is applied in the environment, relative to the repo root. path must not be absolute (start with a /):

this.matches('^$|^[^/].*')
Session stringOptional
TriggerFilter []AutomationTriggerOptional

trigger_filter specifies which automation triggers should execute. When set, only automations matching these triggers will run. If empty/unset, all triggers are evaluated normally.

BeforeSnapshot boolOptional
Manual boolOptional
PostDevcontainerStart boolOptional
PostEnvironmentStart boolOptional
PostMachineStart boolOptional
Prebuild boolOptional
Content EnvironmentSpecContentOptional

content is the content spec of the environment

GitEmail stringOptional

The Git email address

GitUsername stringOptional

The Git username

Initializer EnvironmentInitializerOptional

initializer configures how the environment is to be initialized

Specs []EnvironmentInitializerSpecOptional
ContextURL EnvironmentInitializerSpecsContextURLOptional
URL stringOptional

url is the URL from which the environment is created

formaturi
Git EnvironmentInitializerSpecsGitOptional
CheckoutLocation stringOptional

a path relative to the environment root in which the code will be checked out to

CloneTarget stringOptional

the value for the clone target mode - use depends on the target mode

RemoteUri stringOptional

remote_uri is the Git remote origin

TargetMode EnvironmentInitializerSpecsGitTargetModeOptional

the target mode determines what gets checked out

One of the following:
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeUnspecified EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_UNSPECIFIED"
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeRemoteHead EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_REMOTE_HEAD"
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeRemoteCommit EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_REMOTE_COMMIT"
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeRemoteBranch EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_REMOTE_BRANCH"
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeLocalBranch EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_LOCAL_BRANCH"
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeRemoteTag EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_REMOTE_TAG"
UpstreamRemoteUri stringOptional

upstream_Remote_uri is the fork upstream of a repository

Session stringOptional
DesiredPhase EnvironmentPhaseOptional

Phase is the desired phase of the environment

One of the following:
const EnvironmentPhaseUnspecified EnvironmentPhase = "ENVIRONMENT_PHASE_UNSPECIFIED"
const EnvironmentPhaseCreating EnvironmentPhase = "ENVIRONMENT_PHASE_CREATING"
const EnvironmentPhaseStarting EnvironmentPhase = "ENVIRONMENT_PHASE_STARTING"
const EnvironmentPhaseRunning EnvironmentPhase = "ENVIRONMENT_PHASE_RUNNING"
const EnvironmentPhaseUpdating EnvironmentPhase = "ENVIRONMENT_PHASE_UPDATING"
const EnvironmentPhaseStopping EnvironmentPhase = "ENVIRONMENT_PHASE_STOPPING"
const EnvironmentPhaseStopped EnvironmentPhase = "ENVIRONMENT_PHASE_STOPPED"
const EnvironmentPhaseDeleting EnvironmentPhase = "ENVIRONMENT_PHASE_DELETING"
const EnvironmentPhaseDeleted EnvironmentPhase = "ENVIRONMENT_PHASE_DELETED"
Devcontainer EnvironmentSpecDevcontainerOptional

devcontainer is the devcontainer spec of the environment

DefaultDevcontainerImage stringOptional

default_devcontainer_image is the default image that is used to start the devcontainer if no devcontainer config file is found

DevcontainerFilePath stringOptional

devcontainer_file_path is the path to the devcontainer file relative to the repo root path must not be absolute (start with a /):

this.matches('^$|^[^/].*')
Dotfiles EnvironmentSpecDevcontainerDotfilesOptional

Experimental: dotfiles is the dotfiles configuration of the devcontainer

Repository string

URL of a dotfiles Git repository (e.g. https://github.com/owner/repository)

formaturi
LifecycleStage EnvironmentSpecDevcontainerLifecycleStageOptional

lifecycle_stage controls which devcontainer lifecycle commands are executed. Defaults to FULL if not specified.

One of the following:
const EnvironmentSpecDevcontainerLifecycleStageLifecycleStageUnspecified EnvironmentSpecDevcontainerLifecycleStage = "LIFECYCLE_STAGE_UNSPECIFIED"
const EnvironmentSpecDevcontainerLifecycleStageLifecycleStageFull EnvironmentSpecDevcontainerLifecycleStage = "LIFECYCLE_STAGE_FULL"
const EnvironmentSpecDevcontainerLifecycleStageLifecycleStagePrebuild EnvironmentSpecDevcontainerLifecycleStage = "LIFECYCLE_STAGE_PREBUILD"
Session stringOptional
KernelControlsConfig KernelControlsConfigOptional

kernel_controls_config configures kernel-level controls for this environment

Veto VetoOptional

veto controls blocking mechanisms

Exec VetoExecOptional

exec controls executable blocking

Action KernelControlsActionOptional

action specifies what action kernel-level controls take on policy violations

One of the following:
const KernelControlsActionUnspecified KernelControlsAction = "KERNEL_CONTROLS_ACTION_UNSPECIFIED"
const KernelControlsActionBlock KernelControlsAction = "KERNEL_CONTROLS_ACTION_BLOCK"
const KernelControlsActionAudit KernelControlsAction = "KERNEL_CONTROLS_ACTION_AUDIT"
Denylist []stringOptional

denylist is the list of executable paths or names to block

Enabled boolOptional

enabled controls whether executable blocking is active

Machine EnvironmentSpecMachineOptional

machine is the machine spec of the environment

Class stringOptional

Class denotes the class of the environment we ought to start

Session stringOptional
Ports []EnvironmentSpecPortOptional

ports is the set of ports which ought to be exposed to your network

Admission AdmissionLevelOptional

policy of this port

One of the following:
const AdmissionLevelUnspecified AdmissionLevel = "ADMISSION_LEVEL_UNSPECIFIED"
const AdmissionLevelOwnerOnly AdmissionLevel = "ADMISSION_LEVEL_OWNER_ONLY"
const AdmissionLevelEveryone AdmissionLevel = "ADMISSION_LEVEL_EVERYONE"
const AdmissionLevelOrganization AdmissionLevel = "ADMISSION_LEVEL_ORGANIZATION"
const AdmissionLevelCreatorOnly AdmissionLevel = "ADMISSION_LEVEL_CREATOR_ONLY"
Name stringOptional

name of this port

maxLength100
minLength1
Port int64Optional

port number

formatint32
maximum65535
minimum1024
Protocol EnvironmentSpecPortsProtocolOptional

protocol for communication (Gateway proxy → user environment service). this setting only affects the protocol used between Gateway and user environment services.

One of the following:
const EnvironmentSpecPortsProtocolProtocolUnspecified EnvironmentSpecPortsProtocol = "PROTOCOL_UNSPECIFIED"
const EnvironmentSpecPortsProtocolProtocolHTTP EnvironmentSpecPortsProtocol = "PROTOCOL_HTTP"
const EnvironmentSpecPortsProtocolProtocolHTTPS EnvironmentSpecPortsProtocol = "PROTOCOL_HTTPS"
Secrets []EnvironmentSpecSecretOptional

secrets are confidential data that is mounted into the environment

ID stringOptional

id is the unique identifier of the secret.

APIOnly boolOptional

api_only indicates the secret is only available via API/CLI. These secrets are resolved but NOT automatically injected into services or devcontainers.

ContainerRegistryBasicAuthHost stringOptional

container_registry_basic_auth_host is the hostname of the container registry that supports basic auth

CredentialProxy EnvironmentSpecSecretsCredentialProxyOptional

credential_proxy configures transparent credential injection via the credential proxy. When set, the credential proxy intercepts HTTPS traffic to the target hosts and replaces the dummy secret value with the real value in the specified HTTP header. The real secret value is never exposed in the environment. This field is orthogonal to mount — a secret can be both mounted (e.g. as a git credential) and proxied at the same time.

Format EnvironmentSpecSecretsCredentialProxyFormatOptional

format describes how the secret value is encoded. The proxy uses this to decode the value before injecting it into the header.

One of the following:
const EnvironmentSpecSecretsCredentialProxyFormatFormatUnspecified EnvironmentSpecSecretsCredentialProxyFormat = "FORMAT_UNSPECIFIED"
const EnvironmentSpecSecretsCredentialProxyFormatFormatPlain EnvironmentSpecSecretsCredentialProxyFormat = "FORMAT_PLAIN"
const EnvironmentSpecSecretsCredentialProxyFormatFormatBase64 EnvironmentSpecSecretsCredentialProxyFormat = "FORMAT_BASE64"
Header stringOptional

header is the HTTP header name to inject (e.g. “Authorization”).

TargetHosts []stringOptional

target_hosts lists the hostnames to intercept (for example “github.com” or “*.github.com”). Wildcards are subdomain-only and do not match the apex domain.

EnvironmentVariable stringOptional
FilePath stringOptional

file_path is the path inside the devcontainer where the secret is mounted

GitCredentialHost stringOptional
Name stringOptional

name is the human readable description of the secret

Scope EnvironmentSpecSecretsScopeOptional

scope indicates where this secret originated from. Used to filter secrets during build (only org and project secrets are injected).

One of the following:
const EnvironmentSpecSecretsScopeScopeUnspecified EnvironmentSpecSecretsScope = "SCOPE_UNSPECIFIED"
const EnvironmentSpecSecretsScopeScopeOrganization EnvironmentSpecSecretsScope = "SCOPE_ORGANIZATION"
const EnvironmentSpecSecretsScopeScopeProject EnvironmentSpecSecretsScope = "SCOPE_PROJECT"
const EnvironmentSpecSecretsScopeScopeUser EnvironmentSpecSecretsScope = "SCOPE_USER"
const EnvironmentSpecSecretsScopeScopeServiceAccount EnvironmentSpecSecretsScope = "SCOPE_SERVICE_ACCOUNT"
const EnvironmentSpecSecretsScopeScopeRunner EnvironmentSpecSecretsScope = "SCOPE_RUNNER"
Session stringOptional

session indicated the current session of the secret. When the session does not change, secrets are not reloaded in the environment.

Source stringOptional

source is the source of the secret, for now control-plane or runner

SourceRef stringOptional

source_ref into the source, in case of control-plane this is uuid of the secret

SpecVersion stringOptional

version of the spec. The value of this field has no semantic meaning (e.g. don’t interpret it as as a timestamp), but it can be used to impose a partial order. If a.spec_version < b.spec_version then a was the spec before b.

SSHPublicKeys []EnvironmentSpecSSHPublicKeyOptional

ssh_public_keys are the public keys used to ssh into the environment

ID stringOptional

id is the unique identifier of the public key

Value stringOptional

value is the actual public key in the public key file format

Timeout EnvironmentSpecTimeoutOptional

Timeout configures the environment timeout

Disconnected stringOptional

inacitivity is the maximum time of disconnection before the environment is stopped or paused. Minimum duration is 30 minutes. Set to 0 to disable. value must be 0s (disabled) or at least 1800s (30 minutes):

this == duration('0s') || this >= duration('1800s')
formatregex
WorkflowActionID stringOptional

workflow_action_id is an optional reference to the workflow execution action that created this environment. Used for tracking and event correlation.

formatuuid
Status EnvironmentStatusOptional

Status is the current status of the environment

ActivitySignal EnvironmentActivitySignalOptional

activity_signal is the last activity signal for the environment.

Source stringOptional

source of the activity signal, such as “VS Code”, “SSH”, or “Automations”. It should be a human-readable string that describes the source of the activity signal.

maxLength80
minLength3
Timestamp TimeOptional

timestamp of when the activity was observed by the source. Only reported every 5 minutes. Zero value means no activity was observed.

formatdate-time
AutomationsFile EnvironmentStatusAutomationsFileOptional

automations_file contains the status of the automations file.

AutomationsFilePath stringOptional

automations_file_path is the path to the automations file relative to the repo root.

AutomationsFilePresence EnvironmentStatusAutomationsFileAutomationsFilePresenceOptional

automations_file_presence indicates how an automations file is present in the environment.

One of the following:
const EnvironmentStatusAutomationsFileAutomationsFilePresencePresenceUnspecified EnvironmentStatusAutomationsFileAutomationsFilePresence = "PRESENCE_UNSPECIFIED"
const EnvironmentStatusAutomationsFileAutomationsFilePresencePresenceAbsent EnvironmentStatusAutomationsFileAutomationsFilePresence = "PRESENCE_ABSENT"
const EnvironmentStatusAutomationsFileAutomationsFilePresencePresenceDiscovered EnvironmentStatusAutomationsFileAutomationsFilePresence = "PRESENCE_DISCOVERED"
const EnvironmentStatusAutomationsFileAutomationsFilePresencePresenceSpecified EnvironmentStatusAutomationsFileAutomationsFilePresence = "PRESENCE_SPECIFIED"
FailureMessage stringOptional

failure_message contains the reason the automations file failed to be applied. This is only set if the phase is FAILED.

Phase EnvironmentStatusAutomationsFilePhaseOptional

phase is the current phase of the automations file.

One of the following:
const EnvironmentStatusAutomationsFilePhaseContentPhaseUnspecified EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_UNSPECIFIED"
const EnvironmentStatusAutomationsFilePhaseContentPhaseCreating EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_CREATING"
const EnvironmentStatusAutomationsFilePhaseContentPhaseInitializing EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_INITIALIZING"
const EnvironmentStatusAutomationsFilePhaseContentPhaseReady EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_READY"
const EnvironmentStatusAutomationsFilePhaseContentPhaseUpdating EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_UPDATING"
const EnvironmentStatusAutomationsFilePhaseContentPhaseFailed EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_FAILED"
const EnvironmentStatusAutomationsFilePhaseContentPhaseUnavailable EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_UNAVAILABLE"
Session stringOptional

session is the automations file session that is currently applied in the environment.

WarningMessage stringOptional

warning_message contains warnings, e.g. when no triggers are defined in the automations file.

Content EnvironmentStatusContentOptional

content contains the status of the environment content.

ContentLocationInMachine stringOptional

content_location_in_machine is the location of the content in the machine

FailureMessage stringOptional

failure_message contains the reason the content initialization failed.

Git EnvironmentStatusContentGitOptional

git is the Git working copy status of the environment. Note: this is a best-effort field and more often than not will not be present. Its absence does not indicate the absence of a working copy.

Branch stringOptional

branch is branch we’re currently on

ChangedFiles []EnvironmentStatusContentGitChangedFileOptional

changed_files is an array of changed files in the environment, possibly truncated

ChangeType EnvironmentStatusContentGitChangedFilesChangeTypeOptional

ChangeType is the type of change that happened to the file

One of the following:
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeUnspecified EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_UNSPECIFIED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeAdded EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_ADDED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeModified EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_MODIFIED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeDeleted EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_DELETED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeRenamed EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_RENAMED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeCopied EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_COPIED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeUpdatedButUnmerged EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_UPDATED_BUT_UNMERGED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeUntracked EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_UNTRACKED"
OldPath stringOptional

old_path is the previous path of the file before a rename or copy. Only set when change_type is RENAMED or COPIED.

maxLength255
Path stringOptional

path is the path of the file

maxLength255
CloneURL stringOptional

clone_url is the repository url as you would pass it to “git clone”. Only HTTPS clone URLs are supported.

LatestCommit stringOptional

latest_commit is the most recent commit on the current branch

TotalChangedFiles int64Optional
formatint32
TotalUnpushedCommits int64Optional

the total number of unpushed changes

formatint32
UnpushedCommits []stringOptional

unpushed_commits is an array of unpushed changes in the environment, possibly truncated

Phase EnvironmentStatusContentPhaseOptional

phase is the current phase of the environment content

One of the following:
const EnvironmentStatusContentPhaseContentPhaseUnspecified EnvironmentStatusContentPhase = "CONTENT_PHASE_UNSPECIFIED"
const EnvironmentStatusContentPhaseContentPhaseCreating EnvironmentStatusContentPhase = "CONTENT_PHASE_CREATING"
const EnvironmentStatusContentPhaseContentPhaseInitializing EnvironmentStatusContentPhase = "CONTENT_PHASE_INITIALIZING"
const EnvironmentStatusContentPhaseContentPhaseReady EnvironmentStatusContentPhase = "CONTENT_PHASE_READY"
const EnvironmentStatusContentPhaseContentPhaseUpdating EnvironmentStatusContentPhase = "CONTENT_PHASE_UPDATING"
const EnvironmentStatusContentPhaseContentPhaseFailed EnvironmentStatusContentPhase = "CONTENT_PHASE_FAILED"
const EnvironmentStatusContentPhaseContentPhaseUnavailable EnvironmentStatusContentPhase = "CONTENT_PHASE_UNAVAILABLE"
Session stringOptional

session is the session that is currently active in the environment.

WarningMessage stringOptional

warning_message contains warnings, e.g. when the content is present but not in the expected state.

Devcontainer EnvironmentStatusDevcontainerOptional

devcontainer contains the status of the devcontainer.

ContainerID stringOptional

container_id is the ID of the container.

ContainerName stringOptional

container_name is the name of the container that is used to connect to the devcontainer

DevcontainerconfigInSync boolOptional

devcontainerconfig_in_sync indicates if the devcontainer is up to date w.r.t. the devcontainer config file.

DevcontainerFilePath stringOptional

devcontainer_file_path is the path to the devcontainer file relative to the repo root

DevcontainerFilePresence EnvironmentStatusDevcontainerDevcontainerFilePresenceOptional

devcontainer_file_presence indicates how the devcontainer file is present in the repo.

One of the following:
const EnvironmentStatusDevcontainerDevcontainerFilePresencePresenceUnspecified EnvironmentStatusDevcontainerDevcontainerFilePresence = "PRESENCE_UNSPECIFIED"
const EnvironmentStatusDevcontainerDevcontainerFilePresencePresenceGenerated EnvironmentStatusDevcontainerDevcontainerFilePresence = "PRESENCE_GENERATED"
const EnvironmentStatusDevcontainerDevcontainerFilePresencePresenceDiscovered EnvironmentStatusDevcontainerDevcontainerFilePresence = "PRESENCE_DISCOVERED"
const EnvironmentStatusDevcontainerDevcontainerFilePresencePresenceSpecified EnvironmentStatusDevcontainerDevcontainerFilePresence = "PRESENCE_SPECIFIED"
FailureMessage stringOptional

failure_message contains the reason the devcontainer failed to operate.

Phase EnvironmentStatusDevcontainerPhaseOptional

phase is the current phase of the devcontainer

One of the following:
const EnvironmentStatusDevcontainerPhasePhaseUnspecified EnvironmentStatusDevcontainerPhase = "PHASE_UNSPECIFIED"
const EnvironmentStatusDevcontainerPhasePhaseCreating EnvironmentStatusDevcontainerPhase = "PHASE_CREATING"
const EnvironmentStatusDevcontainerPhasePhaseRunning EnvironmentStatusDevcontainerPhase = "PHASE_RUNNING"
const EnvironmentStatusDevcontainerPhasePhaseStopped EnvironmentStatusDevcontainerPhase = "PHASE_STOPPED"
const EnvironmentStatusDevcontainerPhasePhaseFailed EnvironmentStatusDevcontainerPhase = "PHASE_FAILED"
RemoteUser stringOptional

remote_user is the user that is used to connect to the devcontainer

RemoteWorkspaceFolder stringOptional

remote_workspace_folder is the folder that is used to connect to the devcontainer

SecretsInSync boolOptional

secrets_in_sync indicates if the secrets are up to date w.r.t. the running devcontainer.

Session stringOptional

session is the session that is currently active in the devcontainer.

WarningMessage stringOptional

warning_message contains warnings, e.g. when the devcontainer is present but not in the expected state.

EnvironmentURLs EnvironmentStatusEnvironmentURLsOptional

environment_url contains the URL at which the environment can be accessed. This field is only set if the environment is running.

Logs stringOptional

logs is the URL at which the environment logs can be accessed.

Ops stringOptional

ops is the URL at which the environment ops service can be accessed.

Ports []EnvironmentStatusEnvironmentURLsPortOptional
Port int64Optional

port is the port number of the environment port

formatint32
maximum65535
minimum1024
URL stringOptional

url is the URL at which the environment port can be accessed

SSH EnvironmentStatusEnvironmentURLsSSHOptional

SSH is the URL at which the environment can be accessed via SSH.

URL stringOptional
SupportBundle stringOptional

support_bundle is the URL at which the environment support bundle can be accessed.

FailureMessage []stringOptional

failure_message summarises why the environment failed to operate. If this is non-empty the environment has failed to operate and will likely transition to a stopped state.

Machine EnvironmentStatusMachineOptional

machine contains the status of the environment machine

FailureMessage stringOptional

failure_message contains the reason the machine failed to operate.

Phase EnvironmentStatusMachinePhaseOptional

phase is the current phase of the environment machine

One of the following:
const EnvironmentStatusMachinePhasePhaseUnspecified EnvironmentStatusMachinePhase = "PHASE_UNSPECIFIED"
const EnvironmentStatusMachinePhasePhaseCreating EnvironmentStatusMachinePhase = "PHASE_CREATING"
const EnvironmentStatusMachinePhasePhaseStarting EnvironmentStatusMachinePhase = "PHASE_STARTING"
const EnvironmentStatusMachinePhasePhaseRunning EnvironmentStatusMachinePhase = "PHASE_RUNNING"
const EnvironmentStatusMachinePhasePhaseStopping EnvironmentStatusMachinePhase = "PHASE_STOPPING"
const EnvironmentStatusMachinePhasePhaseStopped EnvironmentStatusMachinePhase = "PHASE_STOPPED"
const EnvironmentStatusMachinePhasePhaseDeleting EnvironmentStatusMachinePhase = "PHASE_DELETING"
const EnvironmentStatusMachinePhasePhaseDeleted EnvironmentStatusMachinePhase = "PHASE_DELETED"
Session stringOptional

session is the session that is currently active in the machine.

Timeout stringOptional

timeout contains the reason the environment has timed out. If this field is empty, the environment has not timed out.

Versions EnvironmentStatusMachineVersionsOptional

versions contains the versions of components in the machine.

AmiID stringOptional
SupervisorCommit stringOptional
SupervisorVersion stringOptional
WarningMessage stringOptional

warning_message contains warnings, e.g. when the machine is present but not in the expected state.

Phase EnvironmentPhaseOptional

the phase of an environment is a simple, high-level summary of where the environment is in its lifecycle

One of the following:
const EnvironmentPhaseUnspecified EnvironmentPhase = "ENVIRONMENT_PHASE_UNSPECIFIED"
const EnvironmentPhaseCreating EnvironmentPhase = "ENVIRONMENT_PHASE_CREATING"
const EnvironmentPhaseStarting EnvironmentPhase = "ENVIRONMENT_PHASE_STARTING"
const EnvironmentPhaseRunning EnvironmentPhase = "ENVIRONMENT_PHASE_RUNNING"
const EnvironmentPhaseUpdating EnvironmentPhase = "ENVIRONMENT_PHASE_UPDATING"
const EnvironmentPhaseStopping EnvironmentPhase = "ENVIRONMENT_PHASE_STOPPING"
const EnvironmentPhaseStopped EnvironmentPhase = "ENVIRONMENT_PHASE_STOPPED"
const EnvironmentPhaseDeleting EnvironmentPhase = "ENVIRONMENT_PHASE_DELETING"
const EnvironmentPhaseDeleted EnvironmentPhase = "ENVIRONMENT_PHASE_DELETED"
RunnerAck EnvironmentStatusRunnerAckOptional

runner_ack contains the acknowledgement from the runner that is has received the environment spec.

Message stringOptional
SpecVersion stringOptional
StatusCode EnvironmentStatusRunnerAckStatusCodeOptional
One of the following:
const EnvironmentStatusRunnerAckStatusCodeStatusCodeUnspecified EnvironmentStatusRunnerAckStatusCode = "STATUS_CODE_UNSPECIFIED"
const EnvironmentStatusRunnerAckStatusCodeStatusCodeOk EnvironmentStatusRunnerAckStatusCode = "STATUS_CODE_OK"
const EnvironmentStatusRunnerAckStatusCodeStatusCodeInvalidResource EnvironmentStatusRunnerAckStatusCode = "STATUS_CODE_INVALID_RESOURCE"
const EnvironmentStatusRunnerAckStatusCodeStatusCodeFailedPrecondition EnvironmentStatusRunnerAckStatusCode = "STATUS_CODE_FAILED_PRECONDITION"
Secrets []EnvironmentStatusSecretOptional

secrets contains the status of the environment secrets

ID stringOptional

id is the unique identifier of the secret.

FailureMessage stringOptional

failure_message contains the reason the secret failed to be materialize.

Phase EnvironmentStatusSecretsPhaseOptional
One of the following:
const EnvironmentStatusSecretsPhaseContentPhaseUnspecified EnvironmentStatusSecretsPhase = "CONTENT_PHASE_UNSPECIFIED"
const EnvironmentStatusSecretsPhaseContentPhaseCreating EnvironmentStatusSecretsPhase = "CONTENT_PHASE_CREATING"
const EnvironmentStatusSecretsPhaseContentPhaseInitializing EnvironmentStatusSecretsPhase = "CONTENT_PHASE_INITIALIZING"
const EnvironmentStatusSecretsPhaseContentPhaseReady EnvironmentStatusSecretsPhase = "CONTENT_PHASE_READY"
const EnvironmentStatusSecretsPhaseContentPhaseUpdating EnvironmentStatusSecretsPhase = "CONTENT_PHASE_UPDATING"
const EnvironmentStatusSecretsPhaseContentPhaseFailed EnvironmentStatusSecretsPhase = "CONTENT_PHASE_FAILED"
const EnvironmentStatusSecretsPhaseContentPhaseUnavailable EnvironmentStatusSecretsPhase = "CONTENT_PHASE_UNAVAILABLE"
SecretName stringOptional
Session stringOptional

session is the session that is currently active in the environment.

WarningMessage stringOptional

warning_message contains warnings, e.g. when the secret is present but not in the expected state.

SSHPublicKeys []EnvironmentStatusSSHPublicKeyOptional

ssh_public_keys contains the status of the environment ssh public keys

ID stringOptional

id is the unique identifier of the public key

Phase EnvironmentStatusSSHPublicKeysPhaseOptional

phase is the current phase of the public key

One of the following:
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseUnspecified EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_UNSPECIFIED"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseCreating EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_CREATING"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseInitializing EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_INITIALIZING"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseReady EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_READY"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseUpdating EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_UPDATING"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseFailed EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_FAILED"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseUnavailable EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_UNAVAILABLE"
StatusVersion stringOptional

version of the status update. Environment instances themselves are unversioned, but their status has different versions. The value of this field has no semantic meaning (e.g. don’t interpret it as as a timestamp), but it can be used to impose a partial order. If a.status_version < b.status_version then a was the status before b.

WarningMessage []stringOptional

warning_message contains warnings, e.g. when the environment is present but not in the expected state.

type EnvironmentActivitySignal struct{…}

EnvironmentActivitySignal used to signal activity for an environment.

Source stringOptional

source of the activity signal, such as “VS Code”, “SSH”, or “Automations”. It should be a human-readable string that describes the source of the activity signal.

maxLength80
minLength3
Timestamp TimeOptional

timestamp of when the activity was observed by the source. Only reported every 5 minutes. Zero value means no activity was observed.

formatdate-time
type EnvironmentMetadata struct{…}

EnvironmentMetadata is data associated with an environment that’s required for other parts of the system to function

Annotations map[string, string]Optional

annotations are key/value pairs that gets attached to the environment. +internal - not yet implemented

ArchivedAt TimeOptional

Time when the Environment was archived. If not set, the environment is not archived.

formatdate-time
CreatedAt TimeOptional

Time when the Environment was created.

formatdate-time
Creator SubjectOptional

creator is the identity of the creator of the environment

ID stringOptional

id is the UUID of the subject

formatuuid
Principal PrincipalOptional

Principal is the principal of the subject

One of the following:
const PrincipalUnspecified Principal = "PRINCIPAL_UNSPECIFIED"
const PrincipalAccount Principal = "PRINCIPAL_ACCOUNT"
const PrincipalUser Principal = "PRINCIPAL_USER"
const PrincipalRunner Principal = "PRINCIPAL_RUNNER"
const PrincipalEnvironment Principal = "PRINCIPAL_ENVIRONMENT"
const PrincipalServiceAccount Principal = "PRINCIPAL_SERVICE_ACCOUNT"
const PrincipalRunnerManager Principal = "PRINCIPAL_RUNNER_MANAGER"
LastStartedAt TimeOptional

Time when the Environment was last started (i.e. CreateEnvironment or StartEnvironment were called).

formatdate-time
LockdownAt TimeOptional

lockdown_at is the time at which the environment becomes locked down due to the organization’s maximum environment lifetime policy. Nil when no lifetime policy applies.

formatdate-time
Name stringOptional

name is the name of the environment as specified by the user

maxLength80
OrganizationID stringOptional

organization_id is the ID of the organization that contains the environment

formatuuid
OriginalContextURL stringOptional

original_context_url is the normalized URL from which the environment was created

PrebuildID stringOptional

prebuild_id is the ID of the prebuild this environment was created from. Only set if the environment was created from a prebuild.

formatuuid
ProjectID stringOptional

If the Environment was started from a project, the project_id will reference the project.

Role EnvironmentRoleOptional

role is the role of the environment

One of the following:
const EnvironmentRoleUnspecified EnvironmentRole = "ENVIRONMENT_ROLE_UNSPECIFIED"
const EnvironmentRoleDefault EnvironmentRole = "ENVIRONMENT_ROLE_DEFAULT"
const EnvironmentRolePrebuild EnvironmentRole = "ENVIRONMENT_ROLE_PREBUILD"
const EnvironmentRoleWorkflow EnvironmentRole = "ENVIRONMENT_ROLE_WORKFLOW"
RunnerID stringOptional

Runner is the ID of the runner that runs this environment.

type EnvironmentPhase string
One of the following:
const EnvironmentPhaseUnspecified EnvironmentPhase = "ENVIRONMENT_PHASE_UNSPECIFIED"
const EnvironmentPhaseCreating EnvironmentPhase = "ENVIRONMENT_PHASE_CREATING"
const EnvironmentPhaseStarting EnvironmentPhase = "ENVIRONMENT_PHASE_STARTING"
const EnvironmentPhaseRunning EnvironmentPhase = "ENVIRONMENT_PHASE_RUNNING"
const EnvironmentPhaseUpdating EnvironmentPhase = "ENVIRONMENT_PHASE_UPDATING"
const EnvironmentPhaseStopping EnvironmentPhase = "ENVIRONMENT_PHASE_STOPPING"
const EnvironmentPhaseStopped EnvironmentPhase = "ENVIRONMENT_PHASE_STOPPED"
const EnvironmentPhaseDeleting EnvironmentPhase = "ENVIRONMENT_PHASE_DELETING"
const EnvironmentPhaseDeleted EnvironmentPhase = "ENVIRONMENT_PHASE_DELETED"
type EnvironmentRole string

EnvironmentRole represents the role of an environment

One of the following:
const EnvironmentRoleUnspecified EnvironmentRole = "ENVIRONMENT_ROLE_UNSPECIFIED"
const EnvironmentRoleDefault EnvironmentRole = "ENVIRONMENT_ROLE_DEFAULT"
const EnvironmentRolePrebuild EnvironmentRole = "ENVIRONMENT_ROLE_PREBUILD"
const EnvironmentRoleWorkflow EnvironmentRole = "ENVIRONMENT_ROLE_WORKFLOW"
type EnvironmentSpec struct{…}

EnvironmentSpec specifies the configuration of an environment for an environment start

Admission AdmissionLevelOptional

admission controlls who can access the environment and its ports.

One of the following:
const AdmissionLevelUnspecified AdmissionLevel = "ADMISSION_LEVEL_UNSPECIFIED"
const AdmissionLevelOwnerOnly AdmissionLevel = "ADMISSION_LEVEL_OWNER_ONLY"
const AdmissionLevelEveryone AdmissionLevel = "ADMISSION_LEVEL_EVERYONE"
const AdmissionLevelOrganization AdmissionLevel = "ADMISSION_LEVEL_ORGANIZATION"
const AdmissionLevelCreatorOnly AdmissionLevel = "ADMISSION_LEVEL_CREATOR_ONLY"
AutomationsFile EnvironmentSpecAutomationsFileOptional

automations_file is the automations file spec of the environment

AutomationsFilePath stringOptional

automations_file_path is the path to the automations file that is applied in the environment, relative to the repo root. path must not be absolute (start with a /):

this.matches('^$|^[^/].*')
Session stringOptional
TriggerFilter []AutomationTriggerOptional

trigger_filter specifies which automation triggers should execute. When set, only automations matching these triggers will run. If empty/unset, all triggers are evaluated normally.

BeforeSnapshot boolOptional
Manual boolOptional
PostDevcontainerStart boolOptional
PostEnvironmentStart boolOptional
PostMachineStart boolOptional
Prebuild boolOptional
Content EnvironmentSpecContentOptional

content is the content spec of the environment

GitEmail stringOptional

The Git email address

GitUsername stringOptional

The Git username

Initializer EnvironmentInitializerOptional

initializer configures how the environment is to be initialized

Specs []EnvironmentInitializerSpecOptional
ContextURL EnvironmentInitializerSpecsContextURLOptional
URL stringOptional

url is the URL from which the environment is created

formaturi
Git EnvironmentInitializerSpecsGitOptional
CheckoutLocation stringOptional

a path relative to the environment root in which the code will be checked out to

CloneTarget stringOptional

the value for the clone target mode - use depends on the target mode

RemoteUri stringOptional

remote_uri is the Git remote origin

TargetMode EnvironmentInitializerSpecsGitTargetModeOptional

the target mode determines what gets checked out

One of the following:
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeUnspecified EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_UNSPECIFIED"
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeRemoteHead EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_REMOTE_HEAD"
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeRemoteCommit EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_REMOTE_COMMIT"
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeRemoteBranch EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_REMOTE_BRANCH"
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeLocalBranch EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_LOCAL_BRANCH"
const EnvironmentInitializerSpecsGitTargetModeCloneTargetModeRemoteTag EnvironmentInitializerSpecsGitTargetMode = "CLONE_TARGET_MODE_REMOTE_TAG"
UpstreamRemoteUri stringOptional

upstream_Remote_uri is the fork upstream of a repository

Session stringOptional
DesiredPhase EnvironmentPhaseOptional

Phase is the desired phase of the environment

One of the following:
const EnvironmentPhaseUnspecified EnvironmentPhase = "ENVIRONMENT_PHASE_UNSPECIFIED"
const EnvironmentPhaseCreating EnvironmentPhase = "ENVIRONMENT_PHASE_CREATING"
const EnvironmentPhaseStarting EnvironmentPhase = "ENVIRONMENT_PHASE_STARTING"
const EnvironmentPhaseRunning EnvironmentPhase = "ENVIRONMENT_PHASE_RUNNING"
const EnvironmentPhaseUpdating EnvironmentPhase = "ENVIRONMENT_PHASE_UPDATING"
const EnvironmentPhaseStopping EnvironmentPhase = "ENVIRONMENT_PHASE_STOPPING"
const EnvironmentPhaseStopped EnvironmentPhase = "ENVIRONMENT_PHASE_STOPPED"
const EnvironmentPhaseDeleting EnvironmentPhase = "ENVIRONMENT_PHASE_DELETING"
const EnvironmentPhaseDeleted EnvironmentPhase = "ENVIRONMENT_PHASE_DELETED"
Devcontainer EnvironmentSpecDevcontainerOptional

devcontainer is the devcontainer spec of the environment

DefaultDevcontainerImage stringOptional

default_devcontainer_image is the default image that is used to start the devcontainer if no devcontainer config file is found

DevcontainerFilePath stringOptional

devcontainer_file_path is the path to the devcontainer file relative to the repo root path must not be absolute (start with a /):

this.matches('^$|^[^/].*')
Dotfiles EnvironmentSpecDevcontainerDotfilesOptional

Experimental: dotfiles is the dotfiles configuration of the devcontainer

Repository string

URL of a dotfiles Git repository (e.g. https://github.com/owner/repository)

formaturi
LifecycleStage EnvironmentSpecDevcontainerLifecycleStageOptional

lifecycle_stage controls which devcontainer lifecycle commands are executed. Defaults to FULL if not specified.

One of the following:
const EnvironmentSpecDevcontainerLifecycleStageLifecycleStageUnspecified EnvironmentSpecDevcontainerLifecycleStage = "LIFECYCLE_STAGE_UNSPECIFIED"
const EnvironmentSpecDevcontainerLifecycleStageLifecycleStageFull EnvironmentSpecDevcontainerLifecycleStage = "LIFECYCLE_STAGE_FULL"
const EnvironmentSpecDevcontainerLifecycleStageLifecycleStagePrebuild EnvironmentSpecDevcontainerLifecycleStage = "LIFECYCLE_STAGE_PREBUILD"
Session stringOptional
KernelControlsConfig KernelControlsConfigOptional

kernel_controls_config configures kernel-level controls for this environment

Veto VetoOptional

veto controls blocking mechanisms

Exec VetoExecOptional

exec controls executable blocking

Action KernelControlsActionOptional

action specifies what action kernel-level controls take on policy violations

One of the following:
const KernelControlsActionUnspecified KernelControlsAction = "KERNEL_CONTROLS_ACTION_UNSPECIFIED"
const KernelControlsActionBlock KernelControlsAction = "KERNEL_CONTROLS_ACTION_BLOCK"
const KernelControlsActionAudit KernelControlsAction = "KERNEL_CONTROLS_ACTION_AUDIT"
Denylist []stringOptional

denylist is the list of executable paths or names to block

Enabled boolOptional

enabled controls whether executable blocking is active

Machine EnvironmentSpecMachineOptional

machine is the machine spec of the environment

Class stringOptional

Class denotes the class of the environment we ought to start

Session stringOptional
Ports []EnvironmentSpecPortOptional

ports is the set of ports which ought to be exposed to your network

Admission AdmissionLevelOptional

policy of this port

One of the following:
const AdmissionLevelUnspecified AdmissionLevel = "ADMISSION_LEVEL_UNSPECIFIED"
const AdmissionLevelOwnerOnly AdmissionLevel = "ADMISSION_LEVEL_OWNER_ONLY"
const AdmissionLevelEveryone AdmissionLevel = "ADMISSION_LEVEL_EVERYONE"
const AdmissionLevelOrganization AdmissionLevel = "ADMISSION_LEVEL_ORGANIZATION"
const AdmissionLevelCreatorOnly AdmissionLevel = "ADMISSION_LEVEL_CREATOR_ONLY"
Name stringOptional

name of this port

maxLength100
minLength1
Port int64Optional

port number

formatint32
maximum65535
minimum1024
Protocol EnvironmentSpecPortsProtocolOptional

protocol for communication (Gateway proxy → user environment service). this setting only affects the protocol used between Gateway and user environment services.

One of the following:
const EnvironmentSpecPortsProtocolProtocolUnspecified EnvironmentSpecPortsProtocol = "PROTOCOL_UNSPECIFIED"
const EnvironmentSpecPortsProtocolProtocolHTTP EnvironmentSpecPortsProtocol = "PROTOCOL_HTTP"
const EnvironmentSpecPortsProtocolProtocolHTTPS EnvironmentSpecPortsProtocol = "PROTOCOL_HTTPS"
Secrets []EnvironmentSpecSecretOptional

secrets are confidential data that is mounted into the environment

ID stringOptional

id is the unique identifier of the secret.

APIOnly boolOptional

api_only indicates the secret is only available via API/CLI. These secrets are resolved but NOT automatically injected into services or devcontainers.

ContainerRegistryBasicAuthHost stringOptional

container_registry_basic_auth_host is the hostname of the container registry that supports basic auth

CredentialProxy EnvironmentSpecSecretsCredentialProxyOptional

credential_proxy configures transparent credential injection via the credential proxy. When set, the credential proxy intercepts HTTPS traffic to the target hosts and replaces the dummy secret value with the real value in the specified HTTP header. The real secret value is never exposed in the environment. This field is orthogonal to mount — a secret can be both mounted (e.g. as a git credential) and proxied at the same time.

Format EnvironmentSpecSecretsCredentialProxyFormatOptional

format describes how the secret value is encoded. The proxy uses this to decode the value before injecting it into the header.

One of the following:
const EnvironmentSpecSecretsCredentialProxyFormatFormatUnspecified EnvironmentSpecSecretsCredentialProxyFormat = "FORMAT_UNSPECIFIED"
const EnvironmentSpecSecretsCredentialProxyFormatFormatPlain EnvironmentSpecSecretsCredentialProxyFormat = "FORMAT_PLAIN"
const EnvironmentSpecSecretsCredentialProxyFormatFormatBase64 EnvironmentSpecSecretsCredentialProxyFormat = "FORMAT_BASE64"
Header stringOptional

header is the HTTP header name to inject (e.g. “Authorization”).

TargetHosts []stringOptional

target_hosts lists the hostnames to intercept (for example “github.com” or “*.github.com”). Wildcards are subdomain-only and do not match the apex domain.

EnvironmentVariable stringOptional
FilePath stringOptional

file_path is the path inside the devcontainer where the secret is mounted

GitCredentialHost stringOptional
Name stringOptional

name is the human readable description of the secret

Scope EnvironmentSpecSecretsScopeOptional

scope indicates where this secret originated from. Used to filter secrets during build (only org and project secrets are injected).

One of the following:
const EnvironmentSpecSecretsScopeScopeUnspecified EnvironmentSpecSecretsScope = "SCOPE_UNSPECIFIED"
const EnvironmentSpecSecretsScopeScopeOrganization EnvironmentSpecSecretsScope = "SCOPE_ORGANIZATION"
const EnvironmentSpecSecretsScopeScopeProject EnvironmentSpecSecretsScope = "SCOPE_PROJECT"
const EnvironmentSpecSecretsScopeScopeUser EnvironmentSpecSecretsScope = "SCOPE_USER"
const EnvironmentSpecSecretsScopeScopeServiceAccount EnvironmentSpecSecretsScope = "SCOPE_SERVICE_ACCOUNT"
const EnvironmentSpecSecretsScopeScopeRunner EnvironmentSpecSecretsScope = "SCOPE_RUNNER"
Session stringOptional

session indicated the current session of the secret. When the session does not change, secrets are not reloaded in the environment.

Source stringOptional

source is the source of the secret, for now control-plane or runner

SourceRef stringOptional

source_ref into the source, in case of control-plane this is uuid of the secret

SpecVersion stringOptional

version of the spec. The value of this field has no semantic meaning (e.g. don’t interpret it as as a timestamp), but it can be used to impose a partial order. If a.spec_version < b.spec_version then a was the spec before b.

SSHPublicKeys []EnvironmentSpecSSHPublicKeyOptional

ssh_public_keys are the public keys used to ssh into the environment

ID stringOptional

id is the unique identifier of the public key

Value stringOptional

value is the actual public key in the public key file format

Timeout EnvironmentSpecTimeoutOptional

Timeout configures the environment timeout

Disconnected stringOptional

inacitivity is the maximum time of disconnection before the environment is stopped or paused. Minimum duration is 30 minutes. Set to 0 to disable. value must be 0s (disabled) or at least 1800s (30 minutes):

this == duration('0s') || this >= duration('1800s')
formatregex
WorkflowActionID stringOptional

workflow_action_id is an optional reference to the workflow execution action that created this environment. Used for tracking and event correlation.

formatuuid
type EnvironmentStatus struct{…}

EnvironmentStatus describes an environment status

ActivitySignal EnvironmentActivitySignalOptional

activity_signal is the last activity signal for the environment.

Source stringOptional

source of the activity signal, such as “VS Code”, “SSH”, or “Automations”. It should be a human-readable string that describes the source of the activity signal.

maxLength80
minLength3
Timestamp TimeOptional

timestamp of when the activity was observed by the source. Only reported every 5 minutes. Zero value means no activity was observed.

formatdate-time
AutomationsFile EnvironmentStatusAutomationsFileOptional

automations_file contains the status of the automations file.

AutomationsFilePath stringOptional

automations_file_path is the path to the automations file relative to the repo root.

AutomationsFilePresence EnvironmentStatusAutomationsFileAutomationsFilePresenceOptional

automations_file_presence indicates how an automations file is present in the environment.

One of the following:
const EnvironmentStatusAutomationsFileAutomationsFilePresencePresenceUnspecified EnvironmentStatusAutomationsFileAutomationsFilePresence = "PRESENCE_UNSPECIFIED"
const EnvironmentStatusAutomationsFileAutomationsFilePresencePresenceAbsent EnvironmentStatusAutomationsFileAutomationsFilePresence = "PRESENCE_ABSENT"
const EnvironmentStatusAutomationsFileAutomationsFilePresencePresenceDiscovered EnvironmentStatusAutomationsFileAutomationsFilePresence = "PRESENCE_DISCOVERED"
const EnvironmentStatusAutomationsFileAutomationsFilePresencePresenceSpecified EnvironmentStatusAutomationsFileAutomationsFilePresence = "PRESENCE_SPECIFIED"
FailureMessage stringOptional

failure_message contains the reason the automations file failed to be applied. This is only set if the phase is FAILED.

Phase EnvironmentStatusAutomationsFilePhaseOptional

phase is the current phase of the automations file.

One of the following:
const EnvironmentStatusAutomationsFilePhaseContentPhaseUnspecified EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_UNSPECIFIED"
const EnvironmentStatusAutomationsFilePhaseContentPhaseCreating EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_CREATING"
const EnvironmentStatusAutomationsFilePhaseContentPhaseInitializing EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_INITIALIZING"
const EnvironmentStatusAutomationsFilePhaseContentPhaseReady EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_READY"
const EnvironmentStatusAutomationsFilePhaseContentPhaseUpdating EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_UPDATING"
const EnvironmentStatusAutomationsFilePhaseContentPhaseFailed EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_FAILED"
const EnvironmentStatusAutomationsFilePhaseContentPhaseUnavailable EnvironmentStatusAutomationsFilePhase = "CONTENT_PHASE_UNAVAILABLE"
Session stringOptional

session is the automations file session that is currently applied in the environment.

WarningMessage stringOptional

warning_message contains warnings, e.g. when no triggers are defined in the automations file.

Content EnvironmentStatusContentOptional

content contains the status of the environment content.

ContentLocationInMachine stringOptional

content_location_in_machine is the location of the content in the machine

FailureMessage stringOptional

failure_message contains the reason the content initialization failed.

Git EnvironmentStatusContentGitOptional

git is the Git working copy status of the environment. Note: this is a best-effort field and more often than not will not be present. Its absence does not indicate the absence of a working copy.

Branch stringOptional

branch is branch we’re currently on

ChangedFiles []EnvironmentStatusContentGitChangedFileOptional

changed_files is an array of changed files in the environment, possibly truncated

ChangeType EnvironmentStatusContentGitChangedFilesChangeTypeOptional

ChangeType is the type of change that happened to the file

One of the following:
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeUnspecified EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_UNSPECIFIED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeAdded EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_ADDED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeModified EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_MODIFIED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeDeleted EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_DELETED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeRenamed EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_RENAMED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeCopied EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_COPIED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeUpdatedButUnmerged EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_UPDATED_BUT_UNMERGED"
const EnvironmentStatusContentGitChangedFilesChangeTypeChangeTypeUntracked EnvironmentStatusContentGitChangedFilesChangeType = "CHANGE_TYPE_UNTRACKED"
OldPath stringOptional

old_path is the previous path of the file before a rename or copy. Only set when change_type is RENAMED or COPIED.

maxLength255
Path stringOptional

path is the path of the file

maxLength255
CloneURL stringOptional

clone_url is the repository url as you would pass it to “git clone”. Only HTTPS clone URLs are supported.

LatestCommit stringOptional

latest_commit is the most recent commit on the current branch

TotalChangedFiles int64Optional
formatint32
TotalUnpushedCommits int64Optional

the total number of unpushed changes

formatint32
UnpushedCommits []stringOptional

unpushed_commits is an array of unpushed changes in the environment, possibly truncated

Phase EnvironmentStatusContentPhaseOptional

phase is the current phase of the environment content

One of the following:
const EnvironmentStatusContentPhaseContentPhaseUnspecified EnvironmentStatusContentPhase = "CONTENT_PHASE_UNSPECIFIED"
const EnvironmentStatusContentPhaseContentPhaseCreating EnvironmentStatusContentPhase = "CONTENT_PHASE_CREATING"
const EnvironmentStatusContentPhaseContentPhaseInitializing EnvironmentStatusContentPhase = "CONTENT_PHASE_INITIALIZING"
const EnvironmentStatusContentPhaseContentPhaseReady EnvironmentStatusContentPhase = "CONTENT_PHASE_READY"
const EnvironmentStatusContentPhaseContentPhaseUpdating EnvironmentStatusContentPhase = "CONTENT_PHASE_UPDATING"
const EnvironmentStatusContentPhaseContentPhaseFailed EnvironmentStatusContentPhase = "CONTENT_PHASE_FAILED"
const EnvironmentStatusContentPhaseContentPhaseUnavailable EnvironmentStatusContentPhase = "CONTENT_PHASE_UNAVAILABLE"
Session stringOptional

session is the session that is currently active in the environment.

WarningMessage stringOptional

warning_message contains warnings, e.g. when the content is present but not in the expected state.

Devcontainer EnvironmentStatusDevcontainerOptional

devcontainer contains the status of the devcontainer.

ContainerID stringOptional

container_id is the ID of the container.

ContainerName stringOptional

container_name is the name of the container that is used to connect to the devcontainer

DevcontainerconfigInSync boolOptional

devcontainerconfig_in_sync indicates if the devcontainer is up to date w.r.t. the devcontainer config file.

DevcontainerFilePath stringOptional

devcontainer_file_path is the path to the devcontainer file relative to the repo root

DevcontainerFilePresence EnvironmentStatusDevcontainerDevcontainerFilePresenceOptional

devcontainer_file_presence indicates how the devcontainer file is present in the repo.

One of the following:
const EnvironmentStatusDevcontainerDevcontainerFilePresencePresenceUnspecified EnvironmentStatusDevcontainerDevcontainerFilePresence = "PRESENCE_UNSPECIFIED"
const EnvironmentStatusDevcontainerDevcontainerFilePresencePresenceGenerated EnvironmentStatusDevcontainerDevcontainerFilePresence = "PRESENCE_GENERATED"
const EnvironmentStatusDevcontainerDevcontainerFilePresencePresenceDiscovered EnvironmentStatusDevcontainerDevcontainerFilePresence = "PRESENCE_DISCOVERED"
const EnvironmentStatusDevcontainerDevcontainerFilePresencePresenceSpecified EnvironmentStatusDevcontainerDevcontainerFilePresence = "PRESENCE_SPECIFIED"
FailureMessage stringOptional

failure_message contains the reason the devcontainer failed to operate.

Phase EnvironmentStatusDevcontainerPhaseOptional

phase is the current phase of the devcontainer

One of the following:
const EnvironmentStatusDevcontainerPhasePhaseUnspecified EnvironmentStatusDevcontainerPhase = "PHASE_UNSPECIFIED"
const EnvironmentStatusDevcontainerPhasePhaseCreating EnvironmentStatusDevcontainerPhase = "PHASE_CREATING"
const EnvironmentStatusDevcontainerPhasePhaseRunning EnvironmentStatusDevcontainerPhase = "PHASE_RUNNING"
const EnvironmentStatusDevcontainerPhasePhaseStopped EnvironmentStatusDevcontainerPhase = "PHASE_STOPPED"
const EnvironmentStatusDevcontainerPhasePhaseFailed EnvironmentStatusDevcontainerPhase = "PHASE_FAILED"
RemoteUser stringOptional

remote_user is the user that is used to connect to the devcontainer

RemoteWorkspaceFolder stringOptional

remote_workspace_folder is the folder that is used to connect to the devcontainer

SecretsInSync boolOptional

secrets_in_sync indicates if the secrets are up to date w.r.t. the running devcontainer.

Session stringOptional

session is the session that is currently active in the devcontainer.

WarningMessage stringOptional

warning_message contains warnings, e.g. when the devcontainer is present but not in the expected state.

EnvironmentURLs EnvironmentStatusEnvironmentURLsOptional

environment_url contains the URL at which the environment can be accessed. This field is only set if the environment is running.

Logs stringOptional

logs is the URL at which the environment logs can be accessed.

Ops stringOptional

ops is the URL at which the environment ops service can be accessed.

Ports []EnvironmentStatusEnvironmentURLsPortOptional
Port int64Optional

port is the port number of the environment port

formatint32
maximum65535
minimum1024
URL stringOptional

url is the URL at which the environment port can be accessed

SSH EnvironmentStatusEnvironmentURLsSSHOptional

SSH is the URL at which the environment can be accessed via SSH.

URL stringOptional
SupportBundle stringOptional

support_bundle is the URL at which the environment support bundle can be accessed.

FailureMessage []stringOptional

failure_message summarises why the environment failed to operate. If this is non-empty the environment has failed to operate and will likely transition to a stopped state.

Machine EnvironmentStatusMachineOptional

machine contains the status of the environment machine

FailureMessage stringOptional

failure_message contains the reason the machine failed to operate.

Phase EnvironmentStatusMachinePhaseOptional

phase is the current phase of the environment machine

One of the following:
const EnvironmentStatusMachinePhasePhaseUnspecified EnvironmentStatusMachinePhase = "PHASE_UNSPECIFIED"
const EnvironmentStatusMachinePhasePhaseCreating EnvironmentStatusMachinePhase = "PHASE_CREATING"
const EnvironmentStatusMachinePhasePhaseStarting EnvironmentStatusMachinePhase = "PHASE_STARTING"
const EnvironmentStatusMachinePhasePhaseRunning EnvironmentStatusMachinePhase = "PHASE_RUNNING"
const EnvironmentStatusMachinePhasePhaseStopping EnvironmentStatusMachinePhase = "PHASE_STOPPING"
const EnvironmentStatusMachinePhasePhaseStopped EnvironmentStatusMachinePhase = "PHASE_STOPPED"
const EnvironmentStatusMachinePhasePhaseDeleting EnvironmentStatusMachinePhase = "PHASE_DELETING"
const EnvironmentStatusMachinePhasePhaseDeleted EnvironmentStatusMachinePhase = "PHASE_DELETED"
Session stringOptional

session is the session that is currently active in the machine.

Timeout stringOptional

timeout contains the reason the environment has timed out. If this field is empty, the environment has not timed out.

Versions EnvironmentStatusMachineVersionsOptional

versions contains the versions of components in the machine.

AmiID stringOptional
SupervisorCommit stringOptional
SupervisorVersion stringOptional
WarningMessage stringOptional

warning_message contains warnings, e.g. when the machine is present but not in the expected state.

Phase EnvironmentPhaseOptional

the phase of an environment is a simple, high-level summary of where the environment is in its lifecycle

One of the following:
const EnvironmentPhaseUnspecified EnvironmentPhase = "ENVIRONMENT_PHASE_UNSPECIFIED"
const EnvironmentPhaseCreating EnvironmentPhase = "ENVIRONMENT_PHASE_CREATING"
const EnvironmentPhaseStarting EnvironmentPhase = "ENVIRONMENT_PHASE_STARTING"
const EnvironmentPhaseRunning EnvironmentPhase = "ENVIRONMENT_PHASE_RUNNING"
const EnvironmentPhaseUpdating EnvironmentPhase = "ENVIRONMENT_PHASE_UPDATING"
const EnvironmentPhaseStopping EnvironmentPhase = "ENVIRONMENT_PHASE_STOPPING"
const EnvironmentPhaseStopped EnvironmentPhase = "ENVIRONMENT_PHASE_STOPPED"
const EnvironmentPhaseDeleting EnvironmentPhase = "ENVIRONMENT_PHASE_DELETING"
const EnvironmentPhaseDeleted EnvironmentPhase = "ENVIRONMENT_PHASE_DELETED"
RunnerAck EnvironmentStatusRunnerAckOptional

runner_ack contains the acknowledgement from the runner that is has received the environment spec.

Message stringOptional
SpecVersion stringOptional
StatusCode EnvironmentStatusRunnerAckStatusCodeOptional
One of the following:
const EnvironmentStatusRunnerAckStatusCodeStatusCodeUnspecified EnvironmentStatusRunnerAckStatusCode = "STATUS_CODE_UNSPECIFIED"
const EnvironmentStatusRunnerAckStatusCodeStatusCodeOk EnvironmentStatusRunnerAckStatusCode = "STATUS_CODE_OK"
const EnvironmentStatusRunnerAckStatusCodeStatusCodeInvalidResource EnvironmentStatusRunnerAckStatusCode = "STATUS_CODE_INVALID_RESOURCE"
const EnvironmentStatusRunnerAckStatusCodeStatusCodeFailedPrecondition EnvironmentStatusRunnerAckStatusCode = "STATUS_CODE_FAILED_PRECONDITION"
Secrets []EnvironmentStatusSecretOptional

secrets contains the status of the environment secrets

ID stringOptional

id is the unique identifier of the secret.

FailureMessage stringOptional

failure_message contains the reason the secret failed to be materialize.

Phase EnvironmentStatusSecretsPhaseOptional
One of the following:
const EnvironmentStatusSecretsPhaseContentPhaseUnspecified EnvironmentStatusSecretsPhase = "CONTENT_PHASE_UNSPECIFIED"
const EnvironmentStatusSecretsPhaseContentPhaseCreating EnvironmentStatusSecretsPhase = "CONTENT_PHASE_CREATING"
const EnvironmentStatusSecretsPhaseContentPhaseInitializing EnvironmentStatusSecretsPhase = "CONTENT_PHASE_INITIALIZING"
const EnvironmentStatusSecretsPhaseContentPhaseReady EnvironmentStatusSecretsPhase = "CONTENT_PHASE_READY"
const EnvironmentStatusSecretsPhaseContentPhaseUpdating EnvironmentStatusSecretsPhase = "CONTENT_PHASE_UPDATING"
const EnvironmentStatusSecretsPhaseContentPhaseFailed EnvironmentStatusSecretsPhase = "CONTENT_PHASE_FAILED"
const EnvironmentStatusSecretsPhaseContentPhaseUnavailable EnvironmentStatusSecretsPhase = "CONTENT_PHASE_UNAVAILABLE"
SecretName stringOptional
Session stringOptional

session is the session that is currently active in the environment.

WarningMessage stringOptional

warning_message contains warnings, e.g. when the secret is present but not in the expected state.

SSHPublicKeys []EnvironmentStatusSSHPublicKeyOptional

ssh_public_keys contains the status of the environment ssh public keys

ID stringOptional

id is the unique identifier of the public key

Phase EnvironmentStatusSSHPublicKeysPhaseOptional

phase is the current phase of the public key

One of the following:
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseUnspecified EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_UNSPECIFIED"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseCreating EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_CREATING"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseInitializing EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_INITIALIZING"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseReady EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_READY"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseUpdating EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_UPDATING"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseFailed EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_FAILED"
const EnvironmentStatusSSHPublicKeysPhaseContentPhaseUnavailable EnvironmentStatusSSHPublicKeysPhase = "CONTENT_PHASE_UNAVAILABLE"
StatusVersion stringOptional

version of the status update. Environment instances themselves are unversioned, but their status has different versions. The value of this field has no semantic meaning (e.g. don’t interpret it as as a timestamp), but it can be used to impose a partial order. If a.status_version < b.status_version then a was the status before b.

WarningMessage []stringOptional

warning_message contains warnings, e.g. when the environment is present but not in the expected state.

type KernelControlsConfig struct{…}

KernelControlsConfig configures kernel-level controls for the environment

Veto VetoOptional

veto controls blocking mechanisms

Exec VetoExecOptional

exec controls executable blocking

Action KernelControlsActionOptional

action specifies what action kernel-level controls take on policy violations

One of the following:
const KernelControlsActionUnspecified KernelControlsAction = "KERNEL_CONTROLS_ACTION_UNSPECIFIED"
const KernelControlsActionBlock KernelControlsAction = "KERNEL_CONTROLS_ACTION_BLOCK"
const KernelControlsActionAudit KernelControlsAction = "KERNEL_CONTROLS_ACTION_AUDIT"
Denylist []stringOptional

denylist is the list of executable paths or names to block

Enabled boolOptional

enabled controls whether executable blocking is active

type Veto struct{…}

Veto controls kernel-level blocking mechanisms

Exec VetoExecOptional

exec controls executable blocking

Action KernelControlsActionOptional

action specifies what action kernel-level controls take on policy violations

One of the following:
const KernelControlsActionUnspecified KernelControlsAction = "KERNEL_CONTROLS_ACTION_UNSPECIFIED"
const KernelControlsActionBlock KernelControlsAction = "KERNEL_CONTROLS_ACTION_BLOCK"
const KernelControlsActionAudit KernelControlsAction = "KERNEL_CONTROLS_ACTION_AUDIT"
Denylist []stringOptional

denylist is the list of executable paths or names to block

Enabled boolOptional

enabled controls whether executable blocking is active

EnvironmentsAutomations

UpsertAutomationsFile
client.Environments.Automations.Upsert(ctx, body) (*EnvironmentAutomationUpsertResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/UpsertAutomationsFile
ModelsExpand Collapse
type AutomationsFile struct{…}

WARN: Do not remove any field here, as it will break reading automation yaml files. We error if there are any unknown fields in the yaml (to ensure the yaml is correct), but would break if we removed any fields. This includes marking a field as “reserved” in the proto file, this will also break reading the yaml.

Services map[string, AutomationsFileService]Optional
Commands AutomationsFileServicesCommandsOptional
Ready stringOptional

ready is an optional command that is run repeatedly until it exits with a zero exit code. If set, the service will first go into a Starting phase, and then into a Running phase once the ready command exits with a zero exit code.

Start stringOptional

start is the command to start and run the service. If start exits, the service will transition to the following phase:

  • Stopped: if the exit code is 0
  • Failed: if the exit code is not 0 If the stop command is not set, the start command will receive a SIGTERM signal when the service is requested to stop. If it does not exit within 2 minutes, it will receive a SIGKILL signal.
minLength1
Stop stringOptional

stop is an optional command that runs when the service is requested to stop. If set, instead of sending a SIGTERM signal to the start command, the stop command will be run. Once the stop command exits, the start command will receive a SIGKILL signal. If the stop command exits with a non-zero exit code, the service will transition to the Failed phase. If the stop command does not exit within 2 minutes, a SIGKILL signal will be sent to both the start and stop commands.

Description stringOptional
Name stringOptional
minLength1
Role AutomationsFileServicesRoleOptional
One of the following:
const AutomationsFileServicesRoleEmpty AutomationsFileServicesRole = ""
const AutomationsFileServicesRoleDefault AutomationsFileServicesRole = "default"
const AutomationsFileServicesRoleEditor AutomationsFileServicesRole = "editor"
const AutomationsFileServicesRoleAIAgent AutomationsFileServicesRole = "ai-agent"
RunsOn RunsOnOptional
Docker RunsOnDockerOptional
Environment []stringOptional
Image stringOptional
minLength1
Machine unknownOptional

Machine runs the service/task directly on the VM/machine level.

TriggeredBy []AutomationsFileServicesTriggeredByOptional
One of the following:
const AutomationsFileServicesTriggeredByManual AutomationsFileServicesTriggeredBy = "manual"
const AutomationsFileServicesTriggeredByPostEnvironmentStart AutomationsFileServicesTriggeredBy = "postEnvironmentStart"
const AutomationsFileServicesTriggeredByPostDevcontainerStart AutomationsFileServicesTriggeredBy = "postDevcontainerStart"
const AutomationsFileServicesTriggeredByPrebuild AutomationsFileServicesTriggeredBy = "prebuild"
Tasks map[string, AutomationsFileTask]Optional
Command stringOptional
minLength1
DependsOn []stringOptional
Description stringOptional
Name stringOptional
minLength1
RunsOn RunsOnOptional
Docker RunsOnDockerOptional
Environment []stringOptional
Image stringOptional
minLength1
Machine unknownOptional

Machine runs the service/task directly on the VM/machine level.

TriggeredBy []AutomationsFileTasksTriggeredByOptional
One of the following:
const AutomationsFileTasksTriggeredByManual AutomationsFileTasksTriggeredBy = "manual"
const AutomationsFileTasksTriggeredByPostEnvironmentStart AutomationsFileTasksTriggeredBy = "postEnvironmentStart"
const AutomationsFileTasksTriggeredByPostDevcontainerStart AutomationsFileTasksTriggeredBy = "postDevcontainerStart"
const AutomationsFileTasksTriggeredByPrebuild AutomationsFileTasksTriggeredBy = "prebuild"

EnvironmentsAutomationsServices

CreateService
client.Environments.Automations.Services.New(ctx, body) (*EnvironmentAutomationServiceNewResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/CreateService
DeleteService
client.Environments.Automations.Services.Delete(ctx, body) (*EnvironmentAutomationServiceDeleteResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/DeleteService
ListServices
client.Environments.Automations.Services.List(ctx, params) (*ServicesPage[Service], error)
POST/gitpod.v1.EnvironmentAutomationService/ListServices
GetService
client.Environments.Automations.Services.Get(ctx, body) (*EnvironmentAutomationServiceGetResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/GetService
StartService
client.Environments.Automations.Services.Start(ctx, body) (*EnvironmentAutomationServiceStartResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/StartService
StopService
client.Environments.Automations.Services.Stop(ctx, body) (*EnvironmentAutomationServiceStopResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/StopService
UpdateService
client.Environments.Automations.Services.Update(ctx, body) (*EnvironmentAutomationServiceUpdateResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/UpdateService
ModelsExpand Collapse
type Service struct{…}
ID string
formatuuid
EnvironmentID stringOptional
formatuuid
Metadata ServiceMetadataOptional
CreatedAt TimeOptional

created_at is the time the service was created.

formatdate-time
Creator SubjectOptional

creator describes the principal who created the service.

ID stringOptional

id is the UUID of the subject

formatuuid
Principal PrincipalOptional

Principal is the principal of the subject

One of the following:
const PrincipalUnspecified Principal = "PRINCIPAL_UNSPECIFIED"
const PrincipalAccount Principal = "PRINCIPAL_ACCOUNT"
const PrincipalUser Principal = "PRINCIPAL_USER"
const PrincipalRunner Principal = "PRINCIPAL_RUNNER"
const PrincipalEnvironment Principal = "PRINCIPAL_ENVIRONMENT"
const PrincipalServiceAccount Principal = "PRINCIPAL_SERVICE_ACCOUNT"
const PrincipalRunnerManager Principal = "PRINCIPAL_RUNNER_MANAGER"
Description stringOptional

description is a user-facing description for the service. It can be used to provide context and documentation for the service.

Name stringOptional

name is a user-facing name for the service. Unlike the reference, this field is not unique, and not referenced by the system. This is a short descriptive name for the service.

minLength1
Reference stringOptional

reference is a user-facing identifier for the service which must be unique on the environment. It is used to express dependencies between services, and to identify the service in user interactions (e.g. the CLI).

Role ServiceRoleOptional

role specifies the intended role or purpose of the service.

One of the following:
const ServiceRoleUnspecified ServiceRole = "SERVICE_ROLE_UNSPECIFIED"
const ServiceRoleDefault ServiceRole = "SERVICE_ROLE_DEFAULT"
const ServiceRoleEditor ServiceRole = "SERVICE_ROLE_EDITOR"
const ServiceRoleAIAgent ServiceRole = "SERVICE_ROLE_AI_AGENT"
const ServiceRoleSecurityAgent ServiceRole = "SERVICE_ROLE_SECURITY_AGENT"
TriggeredBy []AutomationTriggerOptional

triggered_by is a list of trigger that start the service.

BeforeSnapshot boolOptional
Manual boolOptional
PostDevcontainerStart boolOptional
PostEnvironmentStart boolOptional
PostMachineStart boolOptional
Prebuild boolOptional
Spec ServiceSpecOptional
Commands ServiceSpecCommandsOptional

commands contains the commands to start, stop and check the readiness of the service

Ready stringOptional

ready is an optional command that is run repeatedly until it exits with a zero exit code. If set, the service will first go into a Starting phase, and then into a Running phase once the ready command exits with a zero exit code.

Start stringOptional

start is the command to start and run the service. If start exits, the service will transition to the following phase:

  • Stopped: if the exit code is 0
  • Failed: if the exit code is not 0 If the stop command is not set, the start command will receive a SIGTERM signal when the service is requested to stop. If it does not exit within 2 minutes, it will receive a SIGKILL signal.
minLength1
Stop stringOptional

stop is an optional command that runs when the service is requested to stop. If set, instead of sending a SIGTERM signal to the start command, the stop command will be run. Once the stop command exits, the start command will receive a SIGKILL signal. If the stop command exits with a non-zero exit code, the service will transition to the Failed phase. If the stop command does not exit within 2 minutes, a SIGKILL signal will be sent to both the start and stop commands.

DesiredPhase ServicePhaseOptional

desired_phase is the phase the service should be in. Used to start or stop the service.

One of the following:
const ServicePhaseUnspecified ServicePhase = "SERVICE_PHASE_UNSPECIFIED"
const ServicePhaseStarting ServicePhase = "SERVICE_PHASE_STARTING"
const ServicePhaseRunning ServicePhase = "SERVICE_PHASE_RUNNING"
const ServicePhaseStopping ServicePhase = "SERVICE_PHASE_STOPPING"
const ServicePhaseStopped ServicePhase = "SERVICE_PHASE_STOPPED"
const ServicePhaseFailed ServicePhase = "SERVICE_PHASE_FAILED"
const ServicePhaseDeleted ServicePhase = "SERVICE_PHASE_DELETED"

env specifies environment variables for the service.

Name stringOptional

name is the environment variable name.

minLength1
Value stringOptional

value is a literal string value.

ValueFrom EnvironmentVariableSourceOptional

value_from specifies a source for the value.

SecretRef SecretRef

secret_ref references a secret by ID.

ID stringOptional

id is the UUID of the secret to reference.

formatuuid
RunsOn RunsOnOptional

runs_on specifies the environment the service should run on.

Docker RunsOnDockerOptional
Environment []stringOptional
Image stringOptional
minLength1
Machine unknownOptional

Machine runs the service/task directly on the VM/machine level.

Session stringOptional

session should be changed to trigger a restart of the service. If a service exits it will not be restarted until the session is changed.

SpecVersion stringOptional

version of the spec. The value of this field has no semantic meaning (e.g. don’t interpret it as as a timestamp), but it can be used to impose a partial order. If a.spec_version < b.spec_version then a was the spec before b.

Status ServiceStatusOptional
FailureMessage stringOptional

failure_message summarises why the service failed to operate. If this is non-empty the service has failed to operate and will likely transition to a failed state.

LogURL stringOptional

log_url contains the URL at which the service logs can be accessed.

Output map[string, string]Optional

output contains the output of the service. setting an output field to empty string will unset it.

Phase ServicePhaseOptional

phase is the current phase of the service.

One of the following:
const ServicePhaseUnspecified ServicePhase = "SERVICE_PHASE_UNSPECIFIED"
const ServicePhaseStarting ServicePhase = "SERVICE_PHASE_STARTING"
const ServicePhaseRunning ServicePhase = "SERVICE_PHASE_RUNNING"
const ServicePhaseStopping ServicePhase = "SERVICE_PHASE_STOPPING"
const ServicePhaseStopped ServicePhase = "SERVICE_PHASE_STOPPED"
const ServicePhaseFailed ServicePhase = "SERVICE_PHASE_FAILED"
const ServicePhaseDeleted ServicePhase = "SERVICE_PHASE_DELETED"
Session stringOptional

session is the current session of the service.

StatusVersion stringOptional

version of the status update. Service instances themselves are unversioned, but their status has different versions. The value of this field has no semantic meaning (e.g. don’t interpret it as as a timestamp), but it can be used to impose a partial order. If a.status_version < b.status_version then a was the status before b.

type ServiceMetadata struct{…}
CreatedAt TimeOptional

created_at is the time the service was created.

formatdate-time
Creator SubjectOptional

creator describes the principal who created the service.

ID stringOptional

id is the UUID of the subject

formatuuid
Principal PrincipalOptional

Principal is the principal of the subject

One of the following:
const PrincipalUnspecified Principal = "PRINCIPAL_UNSPECIFIED"
const PrincipalAccount Principal = "PRINCIPAL_ACCOUNT"
const PrincipalUser Principal = "PRINCIPAL_USER"
const PrincipalRunner Principal = "PRINCIPAL_RUNNER"
const PrincipalEnvironment Principal = "PRINCIPAL_ENVIRONMENT"
const PrincipalServiceAccount Principal = "PRINCIPAL_SERVICE_ACCOUNT"
const PrincipalRunnerManager Principal = "PRINCIPAL_RUNNER_MANAGER"
Description stringOptional

description is a user-facing description for the service. It can be used to provide context and documentation for the service.

Name stringOptional

name is a user-facing name for the service. Unlike the reference, this field is not unique, and not referenced by the system. This is a short descriptive name for the service.

minLength1
Reference stringOptional

reference is a user-facing identifier for the service which must be unique on the environment. It is used to express dependencies between services, and to identify the service in user interactions (e.g. the CLI).

Role ServiceRoleOptional

role specifies the intended role or purpose of the service.

One of the following:
const ServiceRoleUnspecified ServiceRole = "SERVICE_ROLE_UNSPECIFIED"
const ServiceRoleDefault ServiceRole = "SERVICE_ROLE_DEFAULT"
const ServiceRoleEditor ServiceRole = "SERVICE_ROLE_EDITOR"
const ServiceRoleAIAgent ServiceRole = "SERVICE_ROLE_AI_AGENT"
const ServiceRoleSecurityAgent ServiceRole = "SERVICE_ROLE_SECURITY_AGENT"
TriggeredBy []AutomationTriggerOptional

triggered_by is a list of trigger that start the service.

BeforeSnapshot boolOptional
Manual boolOptional
PostDevcontainerStart boolOptional
PostEnvironmentStart boolOptional
PostMachineStart boolOptional
Prebuild boolOptional
type ServicePhase string
One of the following:
const ServicePhaseUnspecified ServicePhase = "SERVICE_PHASE_UNSPECIFIED"
const ServicePhaseStarting ServicePhase = "SERVICE_PHASE_STARTING"
const ServicePhaseRunning ServicePhase = "SERVICE_PHASE_RUNNING"
const ServicePhaseStopping ServicePhase = "SERVICE_PHASE_STOPPING"
const ServicePhaseStopped ServicePhase = "SERVICE_PHASE_STOPPED"
const ServicePhaseFailed ServicePhase = "SERVICE_PHASE_FAILED"
const ServicePhaseDeleted ServicePhase = "SERVICE_PHASE_DELETED"
type ServiceRole string
One of the following:
const ServiceRoleUnspecified ServiceRole = "SERVICE_ROLE_UNSPECIFIED"
const ServiceRoleDefault ServiceRole = "SERVICE_ROLE_DEFAULT"
const ServiceRoleEditor ServiceRole = "SERVICE_ROLE_EDITOR"
const ServiceRoleAIAgent ServiceRole = "SERVICE_ROLE_AI_AGENT"
const ServiceRoleSecurityAgent ServiceRole = "SERVICE_ROLE_SECURITY_AGENT"
type ServiceSpec struct{…}
Commands ServiceSpecCommandsOptional

commands contains the commands to start, stop and check the readiness of the service

Ready stringOptional

ready is an optional command that is run repeatedly until it exits with a zero exit code. If set, the service will first go into a Starting phase, and then into a Running phase once the ready command exits with a zero exit code.

Start stringOptional

start is the command to start and run the service. If start exits, the service will transition to the following phase:

  • Stopped: if the exit code is 0
  • Failed: if the exit code is not 0 If the stop command is not set, the start command will receive a SIGTERM signal when the service is requested to stop. If it does not exit within 2 minutes, it will receive a SIGKILL signal.
minLength1
Stop stringOptional

stop is an optional command that runs when the service is requested to stop. If set, instead of sending a SIGTERM signal to the start command, the stop command will be run. Once the stop command exits, the start command will receive a SIGKILL signal. If the stop command exits with a non-zero exit code, the service will transition to the Failed phase. If the stop command does not exit within 2 minutes, a SIGKILL signal will be sent to both the start and stop commands.

DesiredPhase ServicePhaseOptional

desired_phase is the phase the service should be in. Used to start or stop the service.

One of the following:
const ServicePhaseUnspecified ServicePhase = "SERVICE_PHASE_UNSPECIFIED"
const ServicePhaseStarting ServicePhase = "SERVICE_PHASE_STARTING"
const ServicePhaseRunning ServicePhase = "SERVICE_PHASE_RUNNING"
const ServicePhaseStopping ServicePhase = "SERVICE_PHASE_STOPPING"
const ServicePhaseStopped ServicePhase = "SERVICE_PHASE_STOPPED"
const ServicePhaseFailed ServicePhase = "SERVICE_PHASE_FAILED"
const ServicePhaseDeleted ServicePhase = "SERVICE_PHASE_DELETED"

env specifies environment variables for the service.

Name stringOptional

name is the environment variable name.

minLength1
Value stringOptional

value is a literal string value.

ValueFrom EnvironmentVariableSourceOptional

value_from specifies a source for the value.

SecretRef SecretRef

secret_ref references a secret by ID.

ID stringOptional

id is the UUID of the secret to reference.

formatuuid
RunsOn RunsOnOptional

runs_on specifies the environment the service should run on.

Docker RunsOnDockerOptional
Environment []stringOptional
Image stringOptional
minLength1
Machine unknownOptional

Machine runs the service/task directly on the VM/machine level.

Session stringOptional

session should be changed to trigger a restart of the service. If a service exits it will not be restarted until the session is changed.

SpecVersion stringOptional

version of the spec. The value of this field has no semantic meaning (e.g. don’t interpret it as as a timestamp), but it can be used to impose a partial order. If a.spec_version < b.spec_version then a was the spec before b.

type ServiceStatus struct{…}
FailureMessage stringOptional

failure_message summarises why the service failed to operate. If this is non-empty the service has failed to operate and will likely transition to a failed state.

LogURL stringOptional

log_url contains the URL at which the service logs can be accessed.

Output map[string, string]Optional

output contains the output of the service. setting an output field to empty string will unset it.

Phase ServicePhaseOptional

phase is the current phase of the service.

One of the following:
const ServicePhaseUnspecified ServicePhase = "SERVICE_PHASE_UNSPECIFIED"
const ServicePhaseStarting ServicePhase = "SERVICE_PHASE_STARTING"
const ServicePhaseRunning ServicePhase = "SERVICE_PHASE_RUNNING"
const ServicePhaseStopping ServicePhase = "SERVICE_PHASE_STOPPING"
const ServicePhaseStopped ServicePhase = "SERVICE_PHASE_STOPPED"
const ServicePhaseFailed ServicePhase = "SERVICE_PHASE_FAILED"
const ServicePhaseDeleted ServicePhase = "SERVICE_PHASE_DELETED"
Session stringOptional

session is the current session of the service.

StatusVersion stringOptional

version of the status update. Service instances themselves are unversioned, but their status has different versions. The value of this field has no semantic meaning (e.g. don’t interpret it as as a timestamp), but it can be used to impose a partial order. If a.status_version < b.status_version then a was the status before b.

EnvironmentsAutomationsTasks

CreateTask
client.Environments.Automations.Tasks.New(ctx, body) (*EnvironmentAutomationTaskNewResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/CreateTask
DeleteTask
client.Environments.Automations.Tasks.Delete(ctx, body) (*EnvironmentAutomationTaskDeleteResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/DeleteTask
ListTasks
client.Environments.Automations.Tasks.List(ctx, params) (*TasksPage[Task], error)
POST/gitpod.v1.EnvironmentAutomationService/ListTasks
GetTask
client.Environments.Automations.Tasks.Get(ctx, body) (*EnvironmentAutomationTaskGetResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/GetTask
StartTask
client.Environments.Automations.Tasks.Start(ctx, body) (*EnvironmentAutomationTaskStartResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/StartTask
UpdateTask
client.Environments.Automations.Tasks.Update(ctx, body) (*EnvironmentAutomationTaskUpdateResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/UpdateTask

EnvironmentsAutomationsTasksExecutions

ListTaskExecutions
client.Environments.Automations.Tasks.Executions.List(ctx, params) (*TaskExecutionsPage[TaskExecution], error)
POST/gitpod.v1.EnvironmentAutomationService/ListTaskExecutions
GetTaskExecution
client.Environments.Automations.Tasks.Executions.Get(ctx, body) (*EnvironmentAutomationTaskExecutionGetResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/GetTaskExecution
StopTaskExecution
client.Environments.Automations.Tasks.Executions.Stop(ctx, body) (*EnvironmentAutomationTaskExecutionStopResponse, error)
POST/gitpod.v1.EnvironmentAutomationService/StopTaskExecution

EnvironmentsClasses

ListEnvironmentClasses
client.Environments.Classes.List(ctx, params) (*EnvironmentClassesPage[EnvironmentClass], error)
POST/gitpod.v1.EnvironmentService/ListEnvironmentClasses