## UpdateRunner **post** `/gitpod.v1.RunnerService/UpdateRunner` Updates a runner's configuration. Use this method to: - Modify runner settings - Update release channels - Change runner status - Configure auto-update settings ### Examples - Update configuration: Changes runner settings. ```yaml runnerId: "d2c94c27-3b76-4a42-b88c-95a85e392c68" name: "Updated Runner Name" spec: configuration: releaseChannel: RUNNER_RELEASE_CHANNEL_LATEST autoUpdate: true ``` ### Body Parameters - `name: optional string` The runner's name which is shown to users - `runnerId: optional string` runner_id specifies which runner to be updated. +required - `spec: optional object { configuration, desiredPhase }` - `configuration: optional object { autoUpdate, devcontainerImageCacheEnabled, logLevel, 3 more }` - `autoUpdate: optional boolean` auto_update indicates whether the runner should automatically update itself. - `devcontainerImageCacheEnabled: optional boolean` devcontainer_image_cache_enabled controls whether the shared devcontainer build cache is enabled for this runner. - `logLevel: optional LogLevel` log_level is the log level for the runner - `"LOG_LEVEL_UNSPECIFIED"` - `"LOG_LEVEL_DEBUG"` - `"LOG_LEVEL_INFO"` - `"LOG_LEVEL_WARN"` - `"LOG_LEVEL_ERROR"` - `metrics: optional object { enabled, managedMetricsEnabled, password, 2 more }` metrics contains configuration for the runner's metrics collection - `enabled: optional boolean` enabled indicates whether the runner should collect metrics - `managedMetricsEnabled: optional boolean` When true, the runner pushes metrics to the management plane via ReportRunnerMetrics instead of directly to the remote_write endpoint. - `password: optional string` password is the password to use for the metrics collector - `url: optional string` url is the URL of the metrics collector - `username: optional string` username is the username to use for the metrics collector - `releaseChannel: optional RunnerReleaseChannel` The release channel the runner is on - `"RUNNER_RELEASE_CHANNEL_UNSPECIFIED"` - `"RUNNER_RELEASE_CHANNEL_STABLE"` - `"RUNNER_RELEASE_CHANNEL_LATEST"` - `updateWindow: optional UpdateWindow` update_window defines the daily time window (UTC) during which auto-updates are allowed. start_hour is required. If end_hour is omitted, it defaults to start_hour + 2. Send an empty UpdateWindow (no start_hour or end_hour) to clear a custom window and allow updates at any time. - `endHour: optional number` end_hour is the end of the update window as a UTC hour (0-23). If not set, defaults to start_hour + 2. - `startHour: optional number` start_hour is the beginning of the update window as a UTC hour (0-23). +required - `desiredPhase: optional RunnerPhase` desired_phase can currently only be updated on local-configuration runners, to toggle whether local runners are allowed for running environments in the organization. Set to: - ACTIVE to enable local runners. - INACTIVE to disable all local runners. Existing local runners and their environments will stop, and cannot be started again until the desired_phase is set to ACTIVE. Use this carefully, as it will affect all users in the organization who use local runners. - `"RUNNER_PHASE_UNSPECIFIED"` - `"RUNNER_PHASE_CREATED"` - `"RUNNER_PHASE_INACTIVE"` - `"RUNNER_PHASE_ACTIVE"` - `"RUNNER_PHASE_DELETING"` - `"RUNNER_PHASE_DELETED"` - `"RUNNER_PHASE_DEGRADED"` ### Example ```http curl https://app.gitpod.io/api/gitpod.v1.RunnerService/UpdateRunner \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $GITPOD_API_KEY" \ -d '{}' ``` #### Response ```json {} ```