2023-01-17 23:04:29 +00:00
import { withDefaultFeatures } from "./../api/api"
2022-07-28 17:18:51 +00:00
import { FieldError } from "api/errors"
2023-04-13 21:36:20 +00:00
import { everyOneGroup } from "utils/groups"
2022-05-12 15:01:28 +00:00
import * as Types from "../api/types"
import * as TypesGen from "../api/typesGenerated"
2023-01-18 17:31:31 +00:00
import range from "lodash/range"
2022-12-21 21:07:00 +00:00
import { Permissions } from "xServices/auth/authXService"
2023-04-13 21:36:20 +00:00
import { TemplateVersionFiles } from "utils/templateVersion"
import { FileTree } from "utils/filetree"
2022-05-12 15:01:28 +00:00
2023-03-06 18:36:19 +00:00
export const MockOrganization : TypesGen.Organization = {
id : "fc0774ce-cc9e-48d4-80ae-88f7a4d4a8b0" ,
name : "Test Organization" ,
created_at : "" ,
updated_at : "" ,
}
2022-09-01 19:58:23 +00:00
export const MockTemplateDAUResponse : TypesGen.TemplateDAUsResponse = {
entries : [
{ date : "2022-08-27T00:00:00Z" , amount : 1 } ,
{ date : "2022-08-29T00:00:00Z" , amount : 2 } ,
{ date : "2022-08-30T00:00:00Z" , amount : 1 } ,
] ,
}
2023-01-26 01:03:47 +00:00
export const MockDeploymentDAUResponse : TypesGen.DeploymentDAUsResponse = {
entries : [
{ date : "2022-08-27T00:00:00Z" , amount : 1 } ,
{ date : "2022-08-29T00:00:00Z" , amount : 2 } ,
{ date : "2022-08-30T00:00:00Z" , amount : 1 } ,
] ,
}
2022-05-12 15:01:28 +00:00
export const MockSessionToken : TypesGen.LoginWithPasswordResponse = {
session_token : "my-session-token" ,
}
export const MockAPIKey : TypesGen.GenerateAPIKeyResponse = {
key : "my-api-key" ,
}
2023-03-17 17:29:51 +00:00
export const MockToken : TypesGen.APIKeyWithOwner = {
id : "tBoVE3dqLl" ,
user_id : "f9ee61d8-1d84-4410-ab6e-c1ec1a641e0b" ,
last_used : "0001-01-01T00:00:00Z" ,
expires_at : "2023-01-15T20:10:45.637438Z" ,
created_at : "2022-12-16T20:10:45.637452Z" ,
updated_at : "2022-12-16T20:10:45.637452Z" ,
login_type : "token" ,
scope : "all" ,
lifetime_seconds : 2592000 ,
token_name : "token-one" ,
username : "admin" ,
}
export const MockTokens : TypesGen.APIKeyWithOwner [ ] = [
MockToken ,
2023-01-13 17:20:03 +00:00
{
id : "tBoVE3dqLl" ,
user_id : "f9ee61d8-1d84-4410-ab6e-c1ec1a641e0b" ,
last_used : "0001-01-01T00:00:00Z" ,
expires_at : "2023-01-15T20:10:45.637438Z" ,
created_at : "2022-12-16T20:10:45.637452Z" ,
updated_at : "2022-12-16T20:10:45.637452Z" ,
login_type : "token" ,
scope : "all" ,
lifetime_seconds : 2592000 ,
2023-03-02 17:39:38 +00:00
token_name : "token-two" ,
2023-03-17 17:29:51 +00:00
username : "admin" ,
2023-01-13 17:20:03 +00:00
} ,
]
2023-04-28 21:04:52 +00:00
export const MockPrimaryWorkspaceProxy : TypesGen.Region = {
id : "4aa23000-526a-481f-a007-0f20b98b1e12" ,
name : "primary" ,
display_name : "Default" ,
icon_url : "/emojis/1f60e.png" ,
healthy : true ,
path_app_url : "https://coder.com" ,
wildcard_hostname : "*.coder.com" ,
}
export const MockHealthyWildWorkspaceProxy : TypesGen.Region = {
id : "5e2c1ab7-479b-41a9-92ce-aa85625de52c" ,
name : "haswildcard" ,
display_name : "Subdomain Supported" ,
icon_url : "/emojis/1f319.png" ,
healthy : true ,
path_app_url : "https://external.com" ,
wildcard_hostname : "*.external.com" ,
}
2023-05-10 18:10:06 +00:00
export const MockUnhealthyWildWorkspaceProxy : TypesGen.Region = {
id : "8444931c-0247-4171-842a-569d9f9cbadb" ,
name : "unhealthy" ,
display_name : "Unhealthy" ,
icon_url : "/emojis/1f92e.png" ,
healthy : false ,
path_app_url : "https://unhealthy.coder.com" ,
wildcard_hostname : "*unhealthy..coder.com" ,
}
2023-04-28 21:04:52 +00:00
export const MockWorkspaceProxies : TypesGen.Region [ ] = [
MockPrimaryWorkspaceProxy ,
MockHealthyWildWorkspaceProxy ,
2023-05-10 18:10:06 +00:00
MockUnhealthyWildWorkspaceProxy ,
2023-04-28 21:04:52 +00:00
{
id : "26e84c16-db24-4636-a62d-aa1a4232b858" ,
name : "nowildcard" ,
display_name : "No wildcard" ,
icon_url : "/emojis/1f920.png" ,
healthy : true ,
path_app_url : "https://cowboy.coder.com" ,
wildcard_hostname : "" ,
} ,
]
2022-05-12 15:01:28 +00:00
export const MockBuildInfo : TypesGen.BuildInfoResponse = {
2022-04-07 17:18:58 +00:00
external_url : "file:///mock-url" ,
version : "v99.999.9999+c9cdf14" ,
2023-04-28 21:04:52 +00:00
dashboard_url : "https:///mock-url" ,
workspace_proxy : false ,
2022-04-07 17:18:58 +00:00
}
2023-02-27 08:25:04 +00:00
export const MockSupportLinks : TypesGen.LinkConfig [ ] = [
{
name : "First link" ,
target : "http://first-link" ,
icon : "chat" ,
} ,
{
name : "Second link" ,
target : "http://second-link" ,
icon : "docs" ,
} ,
{
name : "Third link" ,
target :
"https://github.com/coder/coder/issues/new?labels=needs+grooming&body={CODER_BUILD_INFO}" ,
icon : "" ,
} ,
]
2022-12-01 17:43:28 +00:00
export const MockUpdateCheck : TypesGen.UpdateCheckResponse = {
current : true ,
url : "file:///mock-url" ,
version : "v99.999.9999+c9cdf14" ,
}
2022-08-16 15:39:42 +00:00
export const MockOwnerRole : TypesGen.Role = {
name : "owner" ,
display_name : "Owner" ,
}
export const MockUserAdminRole : TypesGen.Role = {
name : "user_admin" ,
display_name : "User Admin" ,
}
export const MockTemplateAdminRole : TypesGen.Role = {
name : "template_admin" ,
display_name : "Template Admin" ,
2022-05-10 19:13:07 +00:00
}
2022-05-12 15:01:28 +00:00
export const MockMemberRole : TypesGen.Role = {
2022-05-10 19:13:07 +00:00
name : "member" ,
display_name : "Member" ,
}
2022-05-12 15:01:28 +00:00
export const MockAuditorRole : TypesGen.Role = {
2022-05-10 19:13:07 +00:00
name : "auditor" ,
display_name : "Auditor" ,
}
2022-08-16 15:39:42 +00:00
// assignableRole takes a role and a boolean. The boolean implies if the
// actor can assign (add/remove) the role from other users.
2022-10-10 17:33:35 +00:00
export function assignableRole (
role : TypesGen.Role ,
assignable : boolean ,
) : TypesGen . AssignableRoles {
2022-08-16 15:39:42 +00:00
return {
. . . role ,
assignable : assignable ,
}
}
2022-05-10 19:13:07 +00:00
2022-10-28 19:43:10 +00:00
export const MockSiteRoles = [ MockUserAdminRole , MockAuditorRole ]
export const MockAssignableSiteRoles = [
assignableRole ( MockUserAdminRole , true ) ,
assignableRole ( MockAuditorRole , true ) ,
]
2022-08-25 23:20:31 +00:00
export const MockMemberPermissions = {
viewAuditLog : false ,
}
2022-05-12 15:01:28 +00:00
export const MockUser : TypesGen.User = {
2022-03-23 14:09:43 +00:00
id : "test-user" ,
2022-01-26 00:36:26 +00:00
username : "TestUser" ,
email : "test@coder.com" ,
created_at : "" ,
2022-04-28 20:32:23 +00:00
status : "active" ,
2023-03-06 18:36:19 +00:00
organization_ids : [ MockOrganization . id ] ,
2022-08-16 15:39:42 +00:00
roles : [ MockOwnerRole ] ,
2022-10-11 14:39:03 +00:00
avatar_url : "https://avatars.githubusercontent.com/u/95932066?s=200&v=4" ,
2022-09-26 15:31:03 +00:00
last_seen_at : "" ,
2022-01-26 00:36:26 +00:00
}
2022-08-23 20:19:26 +00:00
export const MockUserAdmin : TypesGen.User = {
id : "test-user" ,
username : "TestUser" ,
email : "test@coder.com" ,
created_at : "" ,
status : "active" ,
2023-03-06 18:36:19 +00:00
organization_ids : [ MockOrganization . id ] ,
2022-08-23 20:19:26 +00:00
roles : [ MockUserAdminRole ] ,
2022-09-04 16:44:27 +00:00
avatar_url : "" ,
2022-09-26 15:31:03 +00:00
last_seen_at : "" ,
2022-08-23 20:19:26 +00:00
}
2022-05-12 15:01:28 +00:00
export const MockUser2 : TypesGen.User = {
2022-04-14 17:57:55 +00:00
id : "test-user-2" ,
username : "TestUser2" ,
email : "test2@coder.com" ,
created_at : "" ,
2022-04-28 20:32:23 +00:00
status : "active" ,
2023-03-06 18:36:19 +00:00
organization_ids : [ MockOrganization . id ] ,
2022-06-02 13:46:06 +00:00
roles : [ ] ,
2022-09-04 16:44:27 +00:00
avatar_url : "" ,
2022-09-26 15:31:03 +00:00
last_seen_at : "2022-09-14T19:12:21Z" ,
2022-04-14 17:57:55 +00:00
}
2022-06-15 17:29:38 +00:00
export const SuspendedMockUser : TypesGen.User = {
id : "suspended-mock-user" ,
username : "SuspendedMockUser" ,
email : "iamsuspendedsad!@coder.com" ,
created_at : "" ,
status : "suspended" ,
2023-03-06 18:36:19 +00:00
organization_ids : [ MockOrganization . id ] ,
2022-06-15 17:29:38 +00:00
roles : [ ] ,
2022-09-04 16:44:27 +00:00
avatar_url : "" ,
2022-09-26 15:31:03 +00:00
last_seen_at : "" ,
2022-06-15 17:29:38 +00:00
}
2022-05-12 15:01:28 +00:00
export const MockProvisioner : TypesGen.ProvisionerDaemon = {
created_at : "" ,
2022-01-26 00:36:26 +00:00
id : "test-provisioner" ,
name : "Test Provisioner" ,
2022-05-19 18:04:44 +00:00
provisioners : [ "echo" ] ,
2022-11-16 22:34:06 +00:00
tags : { } ,
2022-05-12 15:01:28 +00:00
}
export const MockProvisionerJob : TypesGen.ProvisionerJob = {
created_at : "" ,
id : "test-provisioner-job" ,
status : "succeeded" ,
2023-03-06 18:36:19 +00:00
file_id : MockOrganization.id ,
2022-08-09 14:07:01 +00:00
completed_at : "2022-05-17T17:39:01.382927298Z" ,
2022-11-16 22:34:06 +00:00
tags : { } ,
2022-01-26 00:36:26 +00:00
}
2022-06-15 17:42:43 +00:00
2022-05-31 15:16:15 +00:00
export const MockFailedProvisionerJob : TypesGen.ProvisionerJob = {
. . . MockProvisionerJob ,
status : "failed" ,
}
2022-09-06 17:07:00 +00:00
2022-05-31 15:16:15 +00:00
export const MockCancelingProvisionerJob : TypesGen.ProvisionerJob = {
. . . MockProvisionerJob ,
status : "canceling" ,
}
export const MockCanceledProvisionerJob : TypesGen.ProvisionerJob = {
2022-05-16 16:34:22 +00:00
. . . MockProvisionerJob ,
2022-05-31 15:16:15 +00:00
status : "canceled" ,
2022-05-16 16:34:22 +00:00
}
2022-05-31 15:16:15 +00:00
export const MockRunningProvisionerJob : TypesGen.ProvisionerJob = {
2022-05-24 00:04:38 +00:00
. . . MockProvisionerJob ,
2022-05-31 15:16:15 +00:00
status : "running" ,
2022-05-24 00:04:38 +00:00
}
2022-07-22 19:18:52 +00:00
export const MockPendingProvisionerJob : TypesGen.ProvisionerJob = {
. . . MockProvisionerJob ,
status : "pending" ,
}
2022-05-19 20:51:10 +00:00
export const MockTemplateVersion : TypesGen.TemplateVersion = {
id : "test-template-version" ,
2022-07-15 22:25:47 +00:00
created_at : "2022-05-17T17:39:01.382927298Z" ,
updated_at : "2022-05-17T17:39:01.382927298Z" ,
template_id : "test-template" ,
2022-05-19 20:51:10 +00:00
job : MockProvisionerJob ,
name : "test-version" ,
2022-05-27 15:19:32 +00:00
readme : ` ---
name :Template test
-- -
# # Instructions
You can add instructions here
[ Some link info ] ( https : //coder.com)`,
2022-10-31 16:38:07 +00:00
created_by : MockUser ,
2022-05-19 20:51:10 +00:00
}
2022-11-24 13:36:50 +00:00
export const MockTemplateVersion2 : TypesGen.TemplateVersion = {
id : "test-template-version-2" ,
created_at : "2022-05-17T17:39:01.382927298Z" ,
updated_at : "2022-05-17T17:39:01.382927298Z" ,
template_id : "test-template" ,
job : MockProvisionerJob ,
name : "test-version-2" ,
readme : ` ---
name :Template test 2
-- -
# # Instructions
You can add instructions here
[ Some link info ] ( https : //coder.com)`,
created_by : MockUser ,
}
2022-05-12 15:01:28 +00:00
export const MockTemplate : TypesGen.Template = {
2022-04-06 17:42:40 +00:00
id : "test-template" ,
2022-05-19 15:36:14 +00:00
created_at : "2022-05-17T17:39:01.382927298Z" ,
updated_at : "2022-05-18T17:39:01.382927298Z" ,
2022-03-23 14:09:43 +00:00
organization_id : MockOrganization.id ,
2022-08-18 19:58:01 +00:00
name : "test-template" ,
2022-11-10 20:51:09 +00:00
display_name : "Test Template" ,
2022-05-19 18:04:44 +00:00
provisioner : MockProvisioner.provisioners [ 0 ] ,
2022-05-19 20:51:10 +00:00
active_version_id : MockTemplateVersion.id ,
2022-09-09 19:30:31 +00:00
active_user_count : 1 ,
2022-10-17 04:34:03 +00:00
build_time_stats : {
2022-11-17 16:56:56 +00:00
start : {
P50 : 1000 ,
P95 : 1500 ,
} ,
stop : {
P50 : 1000 ,
P95 : 1500 ,
} ,
delete : {
P50 : 1000 ,
P95 : 1500 ,
} ,
2022-10-17 04:34:03 +00:00
} ,
2022-05-16 20:56:11 +00:00
description : "This is a test description." ,
2022-11-09 19:36:25 +00:00
default_ttl_ms : 24 * 60 * 60 * 1000 ,
2023-03-07 14:14:58 +00:00
max_ttl_ms : 2 * 24 * 60 * 60 * 1000 ,
2022-06-10 19:24:21 +00:00
created_by_id : "test-creator-id" ,
created_by_name : "test_creator" ,
2022-08-19 13:17:35 +00:00
icon : "/icon/code.svg" ,
2022-11-21 10:43:53 +00:00
allow_user_cancel_workspace_jobs : true ,
2023-05-05 15:19:26 +00:00
failure_ttl_ms : 0 ,
inactivity_ttl_ms : 0 ,
2023-05-04 17:30:48 +00:00
allow_user_autostart : false ,
allow_user_autostop : false ,
2022-01-26 00:36:26 +00:00
}
2022-01-26 03:50:31 +00:00
2023-02-07 01:24:04 +00:00
export const MockTemplateVersionFiles : TemplateVersionFiles = {
"README.md" : "# Example\n\nThis is an example template." ,
"main.tf" : ` // Provides info about the workspace.
data "coder_workspace" "me" { }
// Provides the startup script used to download
// the agent and communicate with Coder.
resource "coder_agent" "dev" {
os = "linux"
arch = "amd64"
}
resource "kubernetes_pod" "main" {
// Ensures that the Pod dies when the workspace shuts down!
count = data . coder_workspace . me . start_count
metadata {
name = "dev-\${data.coder_workspace.me.id}"
}
spec {
container {
image = "ubuntu"
command = [ "sh" , "-c" , coder_agent . main . init_script ]
env {
name = "CODER_AGENT_TOKEN"
value = coder_agent . main . token
}
}
}
}
` ,
}
2023-02-10 16:22:20 +00:00
export const MockTemplateVersionFileTree : FileTree = {
"README.md" : "# Example\n\nThis is an example template." ,
"main.tf" : ` // Provides info about the workspace.
data "coder_workspace" "me" { }
// Provides the startup script used to download
// the agent and communicate with Coder.
resource "coder_agent" "dev" {
os = "linux"
arch = "amd64"
}
resource "kubernetes_pod" "main" {
// Ensures that the Pod dies when the workspace shuts down!
count = data . coder_workspace . me . start_count
metadata {
name = "dev-\${data.coder_workspace.me.id}"
}
spec {
container {
image = "ubuntu"
command = [ "sh" , "-c" , coder_agent . main . init_script ]
env {
name = "CODER_AGENT_TOKEN"
value = coder_agent . main . token
}
}
}
}
` ,
images : {
"java.Dockerfile" : "FROM eclipse-temurin:17-jdk-jammy" ,
"python.Dockerfile" : "FROM python:3.8-slim-buster" ,
} ,
}
2022-10-03 21:01:13 +00:00
export const MockWorkspaceApp : TypesGen.WorkspaceApp = {
id : "test-app" ,
2022-10-28 17:41:31 +00:00
slug : "test-app" ,
display_name : "Test App" ,
2022-10-03 21:01:13 +00:00
icon : "" ,
2022-10-05 19:23:01 +00:00
subdomain : false ,
2022-10-03 21:01:13 +00:00
health : "disabled" ,
2022-12-14 21:54:18 +00:00
external : false ,
url : "" ,
2022-10-14 16:46:38 +00:00
sharing_level : "owner" ,
2022-10-03 21:01:13 +00:00
healthcheck : {
url : "" ,
interval : 0 ,
threshold : 0 ,
} ,
}
export const MockWorkspaceAgent : TypesGen.WorkspaceAgent = {
apps : [ MockWorkspaceApp ] ,
architecture : "amd64" ,
created_at : "" ,
environment_variables : { } ,
id : "test-workspace-agent" ,
name : "a-workspace-agent" ,
operating_system : "linux" ,
resource_id : "" ,
status : "connected" ,
updated_at : "" ,
version : MockBuildInfo.version ,
latency : {
"Coder Embedded DERP" : {
latency_ms : 32.55 ,
preferred : true ,
} ,
} ,
2022-11-09 15:27:05 +00:00
connection_timeout_seconds : 120 ,
troubleshooting_url : "https://coder.com/troubleshoot" ,
2023-01-24 12:24:27 +00:00
lifecycle_state : "starting" ,
2023-01-27 20:07:47 +00:00
login_before_ready : false ,
2023-03-23 19:09:13 +00:00
startup_logs_length : 0 ,
startup_logs_overflowed : false ,
2023-01-24 12:24:27 +00:00
startup_script_timeout_seconds : 120 ,
2023-03-06 19:34:00 +00:00
shutdown_script_timeout_seconds : 120 ,
2022-10-03 21:01:13 +00:00
}
export const MockWorkspaceAgentDisconnected : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-2" ,
name : "another-workspace-agent" ,
status : "disconnected" ,
version : "" ,
latency : { } ,
2023-01-24 12:24:27 +00:00
lifecycle_state : "ready" ,
2022-10-03 21:01:13 +00:00
}
export const MockWorkspaceAgentOutdated : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-3" ,
name : "an-outdated-workspace-agent" ,
version : "v99.999.9998+abcdef" ,
operating_system : "Windows" ,
latency : {
. . . MockWorkspaceAgent . latency ,
Chicago : {
preferred : false ,
latency_ms : 95.11 ,
} ,
"San Francisco" : {
preferred : false ,
latency_ms : 111.55 ,
} ,
Paris : {
preferred : false ,
latency_ms : 221.66 ,
} ,
} ,
2023-01-24 12:24:27 +00:00
lifecycle_state : "ready" ,
2022-10-03 21:01:13 +00:00
}
export const MockWorkspaceAgentConnecting : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-connecting" ,
name : "another-workspace-agent" ,
status : "connecting" ,
version : "" ,
latency : { } ,
2023-01-24 12:24:27 +00:00
lifecycle_state : "created" ,
2022-10-03 21:01:13 +00:00
}
2022-11-09 15:27:05 +00:00
export const MockWorkspaceAgentTimeout : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-timeout" ,
name : "a-timed-out-workspace-agent" ,
status : "timeout" ,
version : "" ,
latency : { } ,
2023-01-24 12:24:27 +00:00
lifecycle_state : "created" ,
}
export const MockWorkspaceAgentStarting : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-starting" ,
name : "a-starting-workspace-agent" ,
lifecycle_state : "starting" ,
}
2023-03-23 19:09:13 +00:00
export const MockWorkspaceAgentReady : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-ready" ,
name : "a-ready-workspace-agent" ,
lifecycle_state : "ready" ,
}
2023-01-24 12:24:27 +00:00
export const MockWorkspaceAgentStartTimeout : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-start-timeout" ,
name : "a-workspace-agent-timed-out-while-running-startup-script" ,
lifecycle_state : "start_timeout" ,
}
export const MockWorkspaceAgentStartError : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-start-error" ,
name : "a-workspace-agent-errored-while-running-startup-script" ,
lifecycle_state : "start_error" ,
2022-11-09 15:27:05 +00:00
}
2023-03-06 19:34:00 +00:00
export const MockWorkspaceAgentShuttingDown : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-shutting-down" ,
name : "a-shutting-down-workspace-agent" ,
lifecycle_state : "shutting_down" ,
}
export const MockWorkspaceAgentShutdownTimeout : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-shutdown-timeout" ,
name : "a-workspace-agent-timed-out-while-running-shutdownup-script" ,
lifecycle_state : "shutdown_timeout" ,
}
export const MockWorkspaceAgentShutdownError : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-shutdown-error" ,
name : "a-workspace-agent-errored-while-running-shutdownup-script" ,
lifecycle_state : "shutdown_error" ,
}
export const MockWorkspaceAgentOff : TypesGen.WorkspaceAgent = {
. . . MockWorkspaceAgent ,
id : "test-workspace-agent-off" ,
name : "a-workspace-agent-is-shut-down" ,
lifecycle_state : "off" ,
}
2022-10-03 21:01:13 +00:00
export const MockWorkspaceResource : TypesGen.WorkspaceResource = {
2022-10-10 17:33:35 +00:00
agents : [
MockWorkspaceAgent ,
MockWorkspaceAgentConnecting ,
MockWorkspaceAgentOutdated ,
] ,
2022-10-03 21:01:13 +00:00
created_at : "" ,
id : "test-workspace-resource" ,
job_id : "" ,
name : "a-workspace-resource" ,
type : "google_compute_disk" ,
workspace_transition : "start" ,
hide : false ,
icon : "" ,
2022-12-14 19:08:22 +00:00
metadata : [ { key : "api_key" , value : "12345678" , sensitive : true } ] ,
2022-11-14 17:57:33 +00:00
daily_cost : 10 ,
2022-10-03 21:01:13 +00:00
}
export const MockWorkspaceResource2 : TypesGen.WorkspaceResource = {
2022-10-10 17:33:35 +00:00
agents : [
MockWorkspaceAgent ,
MockWorkspaceAgentDisconnected ,
MockWorkspaceAgentOutdated ,
] ,
2022-10-03 21:01:13 +00:00
created_at : "" ,
id : "test-workspace-resource-2" ,
job_id : "" ,
name : "another-workspace-resource" ,
type : "google_compute_disk" ,
workspace_transition : "start" ,
hide : false ,
icon : "" ,
2022-12-14 19:08:22 +00:00
metadata : [ { key : "size" , value : "32GB" , sensitive : false } ] ,
2022-11-14 17:57:33 +00:00
daily_cost : 10 ,
2022-10-03 21:01:13 +00:00
}
export const MockWorkspaceResource3 : TypesGen.WorkspaceResource = {
2022-10-10 17:33:35 +00:00
agents : [
MockWorkspaceAgent ,
MockWorkspaceAgentDisconnected ,
MockWorkspaceAgentOutdated ,
] ,
2022-10-03 21:01:13 +00:00
created_at : "" ,
id : "test-workspace-resource-3" ,
job_id : "" ,
name : "another-workspace-resource" ,
type : "google_compute_disk" ,
workspace_transition : "start" ,
hide : true ,
icon : "" ,
2022-12-14 19:08:22 +00:00
metadata : [ { key : "size" , value : "32GB" , sensitive : false } ] ,
2022-11-14 17:57:33 +00:00
daily_cost : 20 ,
2022-10-03 21:01:13 +00:00
}
2022-10-10 17:33:35 +00:00
export const MockWorkspaceAutostartDisabled : TypesGen.UpdateWorkspaceAutostartRequest =
{
schedule : "" ,
}
2022-04-14 00:35:47 +00:00
2022-10-10 17:33:35 +00:00
export const MockWorkspaceAutostartEnabled : TypesGen.UpdateWorkspaceAutostartRequest =
{
// Runs at 9:30am Monday through Friday using Canada/Eastern
// (America/Toronto) time
schedule : "CRON_TZ=Canada/Eastern 30 9 * * 1-5" ,
}
2022-04-14 00:35:47 +00:00
2022-05-12 15:01:28 +00:00
export const MockWorkspaceBuild : TypesGen.WorkspaceBuild = {
2022-05-18 16:33:33 +00:00
build_number : 1 ,
2022-05-19 15:36:14 +00:00
created_at : "2022-05-17T17:39:01.382927298Z" ,
2022-05-18 13:54:06 +00:00
id : "1" ,
2022-06-17 17:41:11 +00:00
initiator_id : MockUser.id ,
initiator_name : MockUser.username ,
2022-05-12 15:01:28 +00:00
job : MockProvisionerJob ,
2022-11-24 13:36:50 +00:00
template_version_id : MockTemplateVersion.id ,
2022-11-28 19:53:56 +00:00
template_version_name : MockTemplateVersion.name ,
2022-05-12 15:01:28 +00:00
transition : "start" ,
2022-05-18 13:54:06 +00:00
updated_at : "2022-05-17T17:39:01.382927298Z" ,
2022-06-01 23:49:43 +00:00
workspace_name : "test-workspace" ,
2022-06-07 14:28:47 +00:00
workspace_owner_id : MockUser.id ,
workspace_owner_name : MockUser.username ,
2022-06-01 23:49:43 +00:00
workspace_id : "759f1d46-3174-453d-aa60-980a9c1442f3" ,
2022-05-26 17:08:11 +00:00
deadline : "2022-05-17T23:39:00.00Z" ,
2022-06-17 17:41:11 +00:00
reason : "initiator" ,
2022-10-03 21:01:13 +00:00
resources : [ MockWorkspaceResource ] ,
2022-10-03 16:43:11 +00:00
status : "running" ,
2022-11-14 17:57:33 +00:00
daily_cost : 20 ,
2022-05-12 15:01:28 +00:00
}
2022-09-06 17:07:00 +00:00
export const MockFailedWorkspaceBuild = (
transition : TypesGen.WorkspaceTransition = "start" ,
) : TypesGen . WorkspaceBuild = > ( {
build_number : 1 ,
created_at : "2022-05-17T17:39:01.382927298Z" ,
id : "1" ,
initiator_id : MockUser.id ,
initiator_name : MockUser.username ,
job : MockFailedProvisionerJob ,
2022-11-24 13:36:50 +00:00
template_version_id : MockTemplateVersion.id ,
2022-11-28 19:53:56 +00:00
template_version_name : MockTemplateVersion.name ,
2022-09-06 17:07:00 +00:00
transition : transition ,
updated_at : "2022-05-17T17:39:01.382927298Z" ,
workspace_name : "test-workspace" ,
workspace_owner_id : MockUser.id ,
workspace_owner_name : MockUser.username ,
workspace_id : "759f1d46-3174-453d-aa60-980a9c1442f3" ,
deadline : "2022-05-17T23:39:00.00Z" ,
reason : "initiator" ,
2022-09-16 18:54:23 +00:00
resources : [ ] ,
2022-10-03 16:43:11 +00:00
status : "running" ,
2022-11-14 17:57:33 +00:00
daily_cost : 20 ,
2022-09-06 17:07:00 +00:00
} )
2022-05-19 18:04:44 +00:00
export const MockWorkspaceBuildStop : TypesGen.WorkspaceBuild = {
2022-05-16 16:34:22 +00:00
. . . MockWorkspaceBuild ,
2022-05-18 13:54:06 +00:00
id : "2" ,
2022-05-16 16:34:22 +00:00
transition : "stop" ,
}
2022-05-19 18:04:44 +00:00
export const MockWorkspaceBuildDelete : TypesGen.WorkspaceBuild = {
2022-05-16 16:34:22 +00:00
. . . MockWorkspaceBuild ,
2022-05-18 13:54:06 +00:00
id : "3" ,
2022-05-16 16:34:22 +00:00
transition : "delete" ,
}
2022-10-10 17:33:35 +00:00
export const MockBuilds = [
MockWorkspaceBuild ,
MockWorkspaceBuildStop ,
MockWorkspaceBuildDelete ,
]
2022-05-18 13:54:06 +00:00
2022-05-12 15:01:28 +00:00
export const MockWorkspace : TypesGen.Workspace = {
2022-01-26 03:50:31 +00:00
id : "test-workspace" ,
name : "Test-Workspace" ,
created_at : "" ,
updated_at : "" ,
2022-04-06 17:42:40 +00:00
template_id : MockTemplate.id ,
2022-05-12 15:01:28 +00:00
template_name : MockTemplate.name ,
2022-08-22 14:42:11 +00:00
template_icon : MockTemplate.icon ,
2022-11-16 14:50:32 +00:00
template_display_name : MockTemplate.display_name ,
2022-11-21 10:43:53 +00:00
template_allow_user_cancel_workspace_jobs :
MockTemplate . allow_user_cancel_workspace_jobs ,
2022-05-12 15:01:28 +00:00
outdated : false ,
2022-03-23 14:09:43 +00:00
owner_id : MockUser.id ,
2023-03-23 19:09:13 +00:00
organization_id : MockOrganization.id ,
2022-05-14 01:41:21 +00:00
owner_name : MockUser.username ,
2022-04-14 00:35:47 +00:00
autostart_schedule : MockWorkspaceAutostartEnabled.schedule ,
2023-03-23 19:43:12 +00:00
ttl_ms : 2 * 60 * 60 * 1000 ,
2022-05-12 15:01:28 +00:00
latest_build : MockWorkspaceBuild ,
2023-03-27 17:26:57 +00:00
last_used_at : "2022-05-16T15:29:10.302441433Z" ,
2023-05-11 15:47:53 +00:00
deleting_at : "0001-01-01T00:00:00Z" ,
2022-04-29 22:30:10 +00:00
}
2022-05-31 19:50:03 +00:00
export const MockStoppedWorkspace : TypesGen.Workspace = {
. . . MockWorkspace ,
2022-10-20 17:23:14 +00:00
id : "test-stopped-workspace" ,
2022-10-05 20:20:29 +00:00
latest_build : { . . . MockWorkspaceBuildStop , status : "stopped" } ,
2022-05-31 19:50:03 +00:00
}
2022-05-16 16:34:22 +00:00
export const MockStoppingWorkspace : TypesGen.Workspace = {
. . . MockWorkspace ,
2022-10-20 17:23:14 +00:00
id : "test-stopping-workspace" ,
2022-05-31 19:50:03 +00:00
latest_build : {
. . . MockWorkspaceBuildStop ,
job : MockRunningProvisionerJob ,
2022-10-05 20:20:29 +00:00
status : "stopping" ,
2022-05-31 19:50:03 +00:00
} ,
2022-05-16 16:34:22 +00:00
}
export const MockStartingWorkspace : TypesGen.Workspace = {
. . . MockWorkspace ,
2022-10-20 17:23:14 +00:00
id : "test-starting-workspace" ,
2022-05-31 19:50:03 +00:00
latest_build : {
. . . MockWorkspaceBuild ,
job : MockRunningProvisionerJob ,
transition : "start" ,
2022-10-05 20:20:29 +00:00
status : "starting" ,
2022-05-31 19:50:03 +00:00
} ,
2022-05-16 16:34:22 +00:00
}
export const MockCancelingWorkspace : TypesGen.Workspace = {
. . . MockWorkspace ,
2022-10-20 17:23:14 +00:00
id : "test-canceling-workspace" ,
2022-10-10 17:33:35 +00:00
latest_build : {
. . . MockWorkspaceBuild ,
job : MockCancelingProvisionerJob ,
status : "canceling" ,
} ,
2022-05-16 16:34:22 +00:00
}
2022-05-24 00:04:38 +00:00
export const MockCanceledWorkspace : TypesGen.Workspace = {
. . . MockWorkspace ,
2022-10-20 17:23:14 +00:00
id : "test-canceled-workspace" ,
2022-10-10 17:33:35 +00:00
latest_build : {
. . . MockWorkspaceBuild ,
job : MockCanceledProvisionerJob ,
status : "canceled" ,
} ,
2022-05-24 00:04:38 +00:00
}
2022-05-16 16:34:22 +00:00
export const MockFailedWorkspace : TypesGen.Workspace = {
. . . MockWorkspace ,
2022-10-20 17:23:14 +00:00
id : "test-failed-workspace" ,
2022-05-31 19:50:03 +00:00
latest_build : {
. . . MockWorkspaceBuild ,
job : MockFailedProvisionerJob ,
2022-10-05 20:20:29 +00:00
status : "failed" ,
2022-05-31 19:50:03 +00:00
} ,
2022-05-16 16:34:22 +00:00
}
export const MockDeletingWorkspace : TypesGen.Workspace = {
. . . MockWorkspace ,
2022-10-20 17:23:14 +00:00
id : "test-deleting-workspace" ,
2022-10-10 17:33:35 +00:00
latest_build : {
. . . MockWorkspaceBuildDelete ,
job : MockRunningProvisionerJob ,
status : "deleting" ,
} ,
2022-05-16 16:34:22 +00:00
}
2022-06-27 14:53:44 +00:00
export const MockDeletedWorkspace : TypesGen.Workspace = {
. . . MockWorkspace ,
2022-10-20 17:23:14 +00:00
id : "test-deleted-workspace" ,
2022-10-05 20:20:29 +00:00
latest_build : { . . . MockWorkspaceBuildDelete , status : "deleted" } ,
2022-06-27 14:53:44 +00:00
}
2022-05-16 16:34:22 +00:00
2022-10-10 17:33:35 +00:00
export const MockOutdatedWorkspace : TypesGen.Workspace = {
. . . MockFailedWorkspace ,
2022-10-20 17:23:14 +00:00
id : "test-outdated-workspace" ,
2022-10-10 17:33:35 +00:00
outdated : true ,
}
2022-05-16 16:34:22 +00:00
2022-10-05 20:20:29 +00:00
export const MockPendingWorkspace : TypesGen.Workspace = {
2022-07-22 19:18:52 +00:00
. . . MockWorkspace ,
2022-10-20 17:23:14 +00:00
id : "test-pending-workspace" ,
2022-07-22 19:18:52 +00:00
latest_build : {
. . . MockWorkspaceBuild ,
job : MockPendingProvisionerJob ,
transition : "start" ,
2022-10-05 20:20:29 +00:00
status : "pending" ,
2022-07-22 19:18:52 +00:00
} ,
}
2022-11-10 18:25:46 +00:00
// just over one page of workspaces
export const MockWorkspacesResponse : TypesGen.WorkspacesResponse = {
workspaces : range ( 1 , 27 ) . map ( ( id : number ) = > ( {
. . . MockWorkspace ,
id : id.toString ( ) ,
name : ` ${ MockWorkspace . name } ${ id } ` ,
} ) ) ,
count : 26 ,
}
2023-02-01 17:13:11 +00:00
export const MockTemplateVersionParameter1 : TypesGen.TemplateVersionParameter =
{
name : "first_parameter" ,
type : "string" ,
description : "This is first parameter" ,
2023-02-08 11:57:12 +00:00
description_plaintext : "Markdown: This is first parameter" ,
2023-02-01 17:13:11 +00:00
default_value : "abc" ,
mutable : true ,
icon : "/icon/folder.svg" ,
options : [ ] ,
2023-03-07 15:38:31 +00:00
required : true ,
2023-02-01 17:13:11 +00:00
}
export const MockTemplateVersionParameter2 : TypesGen.TemplateVersionParameter =
{
name : "second_parameter" ,
type : "number" ,
description : "This is second parameter" ,
2023-02-08 11:57:12 +00:00
description_plaintext : "Markdown: This is second parameter" ,
2023-02-01 17:13:11 +00:00
default_value : "2" ,
mutable : true ,
icon : "/icon/folder.svg" ,
options : [ ] ,
validation_min : 1 ,
validation_max : 3 ,
2023-02-07 08:36:13 +00:00
validation_monotonic : "increasing" ,
2023-03-07 15:38:31 +00:00
required : true ,
2023-02-01 17:13:11 +00:00
}
export const MockTemplateVersionParameter3 : TypesGen.TemplateVersionParameter =
{
name : "third_parameter" ,
type : "string" ,
description : "This is third parameter" ,
2023-02-08 11:57:12 +00:00
description_plaintext : "Markdown: This is third parameter" ,
2023-02-01 17:13:11 +00:00
default_value : "aaa" ,
mutable : true ,
icon : "/icon/database.svg" ,
options : [ ] ,
validation_error : "No way!" ,
validation_regex : "^[a-z]{3}$" ,
2023-03-07 15:38:31 +00:00
required : true ,
2023-02-01 17:13:11 +00:00
}
export const MockTemplateVersionParameter4 : TypesGen.TemplateVersionParameter =
{
name : "fourth_parameter" ,
type : "string" ,
description : "This is fourth parameter" ,
2023-02-08 11:57:12 +00:00
description_plaintext : "Markdown: This is fourth parameter" ,
2023-02-01 17:13:11 +00:00
default_value : "def" ,
mutable : false ,
icon : "/icon/database.svg" ,
options : [ ] ,
2023-03-07 15:38:31 +00:00
required : true ,
2023-02-07 08:36:13 +00:00
}
export const MockTemplateVersionParameter5 : TypesGen.TemplateVersionParameter =
{
name : "fifth_parameter" ,
type : "number" ,
description : "This is fifth parameter" ,
2023-02-08 11:57:12 +00:00
description_plaintext : "Markdown: This is fifth parameter" ,
2023-02-07 08:36:13 +00:00
default_value : "5" ,
mutable : true ,
icon : "/icon/folder.svg" ,
options : [ ] ,
validation_min : 1 ,
validation_max : 10 ,
validation_monotonic : "decreasing" ,
2023-03-07 15:38:31 +00:00
required : true ,
2023-02-01 17:13:11 +00:00
}
2023-03-02 13:11:16 +00:00
export const MockTemplateVersionVariable1 : TypesGen.TemplateVersionVariable = {
name : "first_variable" ,
description : "This is first variable." ,
type : "string" ,
value : "" ,
default_value : "abc" ,
required : false ,
sensitive : false ,
}
export const MockTemplateVersionVariable2 : TypesGen.TemplateVersionVariable = {
name : "second_variable" ,
description : "This is second variable." ,
type : "number" ,
value : "5" ,
default_value : "3" ,
required : false ,
sensitive : false ,
}
export const MockTemplateVersionVariable3 : TypesGen.TemplateVersionVariable = {
name : "third_variable" ,
description : "This is third variable." ,
type : "bool" ,
value : "" ,
default_value : "false" ,
required : false ,
sensitive : false ,
}
export const MockTemplateVersionVariable4 : TypesGen.TemplateVersionVariable = {
name : "fourth_variable" ,
description : "This is fourth variable." ,
type : "string" ,
value : "defghijk" ,
default_value : "" ,
required : true ,
sensitive : true ,
}
export const MockTemplateVersionVariable5 : TypesGen.TemplateVersionVariable = {
name : "fifth_variable" ,
description : "This is fifth variable." ,
type : "string" ,
value : "" ,
default_value : "" ,
required : true ,
sensitive : false ,
}
2022-09-29 18:32:38 +00:00
// requests the MockWorkspace
export const MockWorkspaceRequest : TypesGen.CreateWorkspaceRequest = {
name : "test" ,
parameter_values : [ ] ,
template_id : "test-template" ,
2023-02-01 17:13:11 +00:00
rich_parameter_values : [
{
name : MockTemplateVersionParameter1.name ,
value : MockTemplateVersionParameter1.default_value ,
} ,
] ,
2022-09-29 18:32:38 +00:00
}
2022-05-12 15:01:28 +00:00
export const MockUserAgent : Types.UserAgent = {
2022-03-23 14:28:34 +00:00
browser : "Chrome 99.0.4844" ,
device : "Other" ,
ip_address : "11.22.33.44" ,
os : "Windows 10" ,
}
2022-04-23 22:58:57 +00:00
2022-05-12 15:01:28 +00:00
export const MockAuthMethods : TypesGen.AuthMethods = {
2023-01-31 18:33:25 +00:00
password : { enabled : true } ,
github : { enabled : false } ,
oidc : { enabled : false , signInText : "" , iconUrl : "" } ,
2022-04-23 22:58:57 +00:00
}
2022-05-16 17:15:45 +00:00
export const MockGitSSHKey : TypesGen.GitSSHKey = {
user_id : "1fa0200f-7331-4524-a364-35770666caa7" ,
created_at : "2022-05-16T14:30:34.148205897Z" ,
updated_at : "2022-05-16T15:29:10.302441433Z" ,
2022-10-10 17:33:35 +00:00
public_key :
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFJOQRIM7kE30rOzrfy+/+R+nQGCk7S9pioihy+2ARbq" ,
2022-05-16 17:15:45 +00:00
}
2022-05-19 20:34:42 +00:00
export const MockWorkspaceBuildLogs : TypesGen.ProvisionerJobLog [ ] = [
{
2022-11-07 02:50:34 +00:00
id : 1 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.005Z" ,
log_source : "provisioner_daemon" ,
log_level : "info" ,
stage : "Setting up" ,
output : "" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 2 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.006Z" ,
log_source : "provisioner_daemon" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 3 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.072Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : "" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 4 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.073Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : "Initializing the backend..." ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 5 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.077Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : "" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 6 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.078Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : "Initializing provider plugins..." ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 7 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.078Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : '- Finding hashicorp/google versions matching "~\u003e 4.15"...' ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 8 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.123Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : '- Finding coder/coder versions matching "0.3.4"...' ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 9 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.137Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : "- Using hashicorp/google v4.21.0 from the shared cache directory" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 10 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.344Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : "- Using coder/coder v0.3.4 from the shared cache directory" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 11 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.388Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : "" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 12 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.388Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
2022-10-10 17:33:35 +00:00
output :
"Terraform has created a lock file .terraform.lock.hcl to record the provider" ,
2022-05-19 20:34:42 +00:00
} ,
{
2022-11-07 02:50:34 +00:00
id : 13 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.389Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
2022-10-10 17:33:35 +00:00
output :
"selections it made above. Include this file in your version control repository" ,
2022-05-19 20:34:42 +00:00
} ,
{
2022-11-07 02:50:34 +00:00
id : 14 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.389Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
2022-10-10 17:33:35 +00:00
output :
"so that Terraform can guarantee to make the same selections by default when" ,
2022-05-19 20:34:42 +00:00
} ,
{
2022-11-07 02:50:34 +00:00
id : 15 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.39Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : 'you run "terraform init" in the future.' ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 16 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.39Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : "" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 17 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.391Z" ,
log_source : "provisioner" ,
log_level : "debug" ,
stage : "Starting workspace" ,
output : "Terraform has been successfully initialized!" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 18 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:31.42Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "Terraform 1.1.9" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 19 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:33.537Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "coder_agent.dev: Plan to create" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 20 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:33.537Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "google_compute_disk.root: Plan to create" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 21 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:33.538Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "google_compute_instance.dev[0]: Plan to create" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 22 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:33.539Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "Plan: 3 to add, 0 to change, 0 to destroy." ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 23 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:33.712Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "coder_agent.dev: Creating..." ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 24 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:33.719Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
2022-10-10 17:33:35 +00:00
output :
"coder_agent.dev: Creation complete after 0s [id=d07f5bdc-4a8d-4919-9cdb-0ac6ba9e64d6]" ,
2022-05-19 20:34:42 +00:00
} ,
{
2022-11-07 02:50:34 +00:00
id : 25 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:34.139Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "google_compute_disk.root: Creating..." ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 26 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:44.14Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "google_compute_disk.root: Still creating... [10s elapsed]" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 27 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:47.106Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output :
"google_compute_disk.root: Creation complete after 13s [id=projects/bruno-coder-v2/zones/europe-west4-b/disks/coder-developer-bruno-dev-123-root]" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 28 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:47.118Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "google_compute_instance.dev[0]: Creating..." ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 29 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:45:57.122Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "google_compute_instance.dev[0]: Still creating... [10s elapsed]" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 30 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:46:00.837Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output :
"google_compute_instance.dev[0]: Creation complete after 14s [id=projects/bruno-coder-v2/zones/europe-west4-b/instances/coder-developer-bruno-dev-123]" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 31 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:46:00.846Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "Apply complete! Resources: 3 added, 0 changed, 0 destroyed." ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 32 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:46:00.847Z" ,
log_source : "provisioner" ,
log_level : "info" ,
stage : "Starting workspace" ,
output : "Outputs: 0" ,
} ,
{
2022-11-07 02:50:34 +00:00
id : 33 ,
2022-05-19 20:34:42 +00:00
created_at : "2022-05-19T16:46:02.283Z" ,
log_source : "provisioner_daemon" ,
log_level : "info" ,
stage : "Cleaning Up" ,
output : "" ,
} ,
]
2022-05-25 21:58:00 +00:00
export const MockCancellationMessage = {
message : "Job successfully canceled" ,
}
2022-07-28 17:18:51 +00:00
2022-10-25 00:55:44 +00:00
type MockAPIInput = {
2022-07-28 17:18:51 +00:00
message? : string
detail? : string
validations? : FieldError [ ]
2022-10-25 00:55:44 +00:00
}
type MockAPIOutput = {
2023-05-04 17:30:48 +00:00
isAxiosError : true
2022-10-25 00:55:44 +00:00
response : {
data : {
message : string
detail : string | undefined
validations : FieldError [ ] | undefined
}
}
}
2023-05-04 17:30:48 +00:00
export const mockApiError = ( {
2022-10-25 00:55:44 +00:00
message ,
detail ,
validations ,
2023-05-04 17:30:48 +00:00
} : MockAPIInput ) : MockAPIOutput = > ( {
// This is how axios can check if it is an axios error when calling isAxiosError
isAxiosError : true ,
2022-07-28 17:18:51 +00:00
response : {
data : {
message : message ? ? "Something went wrong." ,
detail : detail ? ? undefined ,
validations : validations ? ? undefined ,
} ,
} ,
} )
2022-08-23 15:26:22 +00:00
export const MockEntitlements : TypesGen.Entitlements = {
2022-10-17 13:43:30 +00:00
errors : [ ] ,
2022-08-23 15:26:22 +00:00
warnings : [ ] ,
has_license : false ,
2023-01-17 23:04:29 +00:00
features : withDefaultFeatures ( { } ) ,
2023-02-14 20:26:47 +00:00
require_telemetry : false ,
2022-10-07 00:28:22 +00:00
trial : false ,
2022-08-23 15:26:22 +00:00
}
export const MockEntitlementsWithWarnings : TypesGen.Entitlements = {
2022-10-17 13:43:30 +00:00
errors : [ ] ,
2022-08-23 15:26:22 +00:00
warnings : [ "You are over your active user limit." , "And another thing." ] ,
has_license : true ,
2022-10-07 00:28:22 +00:00
trial : false ,
2023-02-14 20:26:47 +00:00
require_telemetry : false ,
2023-01-17 23:04:29 +00:00
features : withDefaultFeatures ( {
2022-08-25 23:20:31 +00:00
user_limit : {
2022-08-23 15:26:22 +00:00
enabled : true ,
2022-08-25 23:20:31 +00:00
entitlement : "grace_period" ,
2022-08-23 15:26:22 +00:00
limit : 100 ,
actual : 102 ,
} ,
2022-08-25 23:20:31 +00:00
audit_log : {
enabled : true ,
entitlement : "entitled" ,
} ,
2022-09-22 15:14:22 +00:00
browser_only : {
enabled : true ,
entitlement : "entitled" ,
} ,
2023-01-17 23:04:29 +00:00
} ) ,
2022-08-25 23:20:31 +00:00
}
export const MockEntitlementsWithAuditLog : TypesGen.Entitlements = {
2022-10-17 13:43:30 +00:00
errors : [ ] ,
2022-08-25 23:20:31 +00:00
warnings : [ ] ,
has_license : true ,
2023-02-14 20:26:47 +00:00
require_telemetry : false ,
2022-10-07 00:28:22 +00:00
trial : false ,
2023-01-17 23:04:29 +00:00
features : withDefaultFeatures ( {
2022-08-25 23:20:31 +00:00
audit_log : {
enabled : true ,
entitlement : "entitled" ,
} ,
2023-01-17 23:04:29 +00:00
} ) ,
2022-08-23 15:26:22 +00:00
}
2022-09-07 20:26:12 +00:00
2023-03-23 19:43:12 +00:00
export const MockEntitlementsWithScheduling : TypesGen.Entitlements = {
errors : [ ] ,
warnings : [ ] ,
has_license : true ,
require_telemetry : false ,
trial : false ,
features : withDefaultFeatures ( {
advanced_template_scheduling : {
enabled : true ,
entitlement : "entitled" ,
} ,
} ) ,
}
2023-05-05 15:19:26 +00:00
export const MockExperiments : TypesGen.Experiment [ ] = [ "workspace_actions" ]
2023-01-18 19:12:53 +00:00
2022-09-07 20:26:12 +00:00
export const MockAuditLog : TypesGen.AuditLog = {
id : "fbd2116a-8961-4954-87ae-e4575bd29ce0" ,
request_id : "53bded77-7b9d-4e82-8771-991a34d759f9" ,
time : "2022-05-19T16:45:57.122Z" ,
2023-03-06 18:36:19 +00:00
organization_id : MockOrganization.id ,
2022-09-07 20:26:12 +00:00
ip : "127.0.0.1" ,
user_agent :
'"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36"' ,
resource_type : "workspace" ,
resource_id : "ef8d1cf4-82de-4fd9-8980-047dad6d06b5" ,
resource_target : "bruno-dev" ,
resource_icon : "" ,
action : "create" ,
2022-10-14 18:39:20 +00:00
diff : {
ttl : {
old : 0 ,
new : 3600000000000 ,
secret : false ,
} ,
} ,
2022-09-07 20:26:12 +00:00
status_code : 200 ,
2022-10-27 19:57:41 +00:00
additional_fields : { } ,
2022-11-21 16:30:41 +00:00
description : "{user} created workspace {target}" ,
2022-09-07 20:26:12 +00:00
user : MockUser ,
2022-12-02 20:14:45 +00:00
resource_link : "/@admin/bruno-dev" ,
is_deleted : false ,
2022-09-07 20:26:12 +00:00
}
export const MockAuditLog2 : TypesGen.AuditLog = {
. . . MockAuditLog ,
id : "53bded77-7b9d-4e82-8771-991a34d759f9" ,
action : "write" ,
2022-11-21 16:30:41 +00:00
time : "2022-05-20T16:45:57.122Z" ,
description : "{user} updated workspace {target}" ,
2022-09-07 20:26:12 +00:00
diff : {
workspace_name : {
old : "old-workspace-name" ,
new : MockWorkspace . name ,
secret : false ,
} ,
workspace_auto_off : {
old : true ,
new : false ,
secret : false ,
} ,
template_version_id : {
old : "fbd2116a-8961-4954-87ae-e4575bd29ce0" ,
new : "53bded77-7b9d-4e82-8771-991a34d759f9" ,
secret : false ,
} ,
2022-09-09 16:53:38 +00:00
roles : {
old : null ,
new : [ "admin" , "auditor" ] ,
secret : false ,
} ,
2022-09-07 20:26:12 +00:00
} ,
}
2022-09-30 18:01:20 +00:00
2022-12-09 17:19:30 +00:00
export const MockWorkspaceCreateAuditLogForDifferentOwner = {
. . . MockAuditLog ,
additional_fields : {
2023-01-30 18:43:29 +00:00
workspace_owner : "Member" ,
2022-12-09 17:19:30 +00:00
} ,
}
2022-10-27 19:57:41 +00:00
export const MockAuditLogWithWorkspaceBuild : TypesGen.AuditLog = {
. . . MockAuditLog ,
id : "f90995bf-4a2b-4089-b597-e66e025e523e" ,
request_id : "61555889-2875-475c-8494-f7693dd5d75b" ,
action : "stop" ,
resource_type : "workspace_build" ,
2022-12-02 20:14:45 +00:00
description : "{user} stopped build for workspace {target}" ,
2022-10-27 19:57:41 +00:00
additional_fields : {
2023-01-30 18:43:29 +00:00
workspace_name : "test2" ,
2022-10-27 19:57:41 +00:00
} ,
}
2022-12-02 20:14:45 +00:00
export const MockAuditLogWithDeletedResource : TypesGen.AuditLog = {
. . . MockAuditLog ,
is_deleted : true ,
}
2023-01-19 22:47:53 +00:00
export const MockAuditLogGitSSH : TypesGen.AuditLog = {
. . . MockAuditLog ,
diff : {
private_key : {
old : "" ,
new : "" ,
secret : true ,
} ,
public_key : {
old : "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINRUPjBSNtOAnL22+r07OSu9t3Lnm8/5OX8bRHECKS9g\n" ,
new : "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEwoUPJPMekuSzMZyV0rA82TGGNzw/Uj/dhLbwiczTpV\n" ,
secret : false ,
} ,
} ,
}
2023-02-06 20:12:50 +00:00
export const MockAuditLogSuccessfulLogin : TypesGen.AuditLog = {
. . . MockAuditLog ,
resource_type : "api_key" ,
resource_target : "" ,
action : "login" ,
status_code : 201 ,
description : "{user} logged in" ,
}
export const MockAuditLogUnsuccessfulLoginKnownUser : TypesGen.AuditLog = {
. . . MockAuditLogSuccessfulLogin ,
status_code : 401 ,
}
2022-09-30 18:01:20 +00:00
export const MockWorkspaceQuota : TypesGen.WorkspaceQuota = {
2022-11-14 17:57:33 +00:00
credits_consumed : 0 ,
budget : 100 ,
2022-09-30 18:01:20 +00:00
}
2022-10-10 20:37:06 +00:00
export const MockGroup : TypesGen.Group = {
id : "fbd2116a-8961-4954-87ae-e4575bd29ce0" ,
name : "Front-End" ,
2022-10-17 22:46:01 +00:00
avatar_url : "https://example.com" ,
2022-10-10 20:37:06 +00:00
organization_id : MockOrganization.id ,
members : [ MockUser , MockUser2 ] ,
2022-11-14 17:57:33 +00:00
quota_allowance : 5 ,
2022-10-10 20:37:06 +00:00
}
export const MockTemplateACL : TypesGen.TemplateACL = {
2022-10-11 18:17:19 +00:00
group : [
2022-10-12 19:33:21 +00:00
{ . . . everyOneGroup ( MockOrganization . id ) , role : "use" } ,
2022-10-11 18:17:19 +00:00
{ . . . MockGroup , role : "admin" } ,
] ,
2022-10-12 19:33:21 +00:00
users : [ { . . . MockUser , role : "use" } ] ,
2022-10-10 20:37:06 +00:00
}
export const MockTemplateACLEmpty : TypesGen.TemplateACL = {
group : [ ] ,
users : [ ] ,
}
2022-12-21 21:07:00 +00:00
export const MockTemplateExample : TypesGen.TemplateExample = {
id : "aws-windows" ,
url : "https://github.com/coder/coder/tree/main/examples/templates/aws-windows" ,
name : "Develop in an ECS-hosted container" ,
description : "Get started with Linux development on AWS ECS." ,
markdown :
"\n# aws-ecs\n\nThis is a sample template for running a Coder workspace on ECS. It assumes there\nis a pre-existing ECS cluster with EC2-based compute to host the workspace.\n\n## Architecture\n\nThis workspace is built using the following AWS resources:\n\n- Task definition - the container definition, includes the image, command, volume(s)\n- ECS service - manages the task definition\n\n## code-server\n\n`code-server` is installed via the `startup_script` argument in the `coder_agent`\nresource block. The `coder_app` resource is defined to access `code-server` through\nthe dashboard UI over `localhost:13337`.\n" ,
icon : "/icon/aws.png" ,
tags : [ "aws" , "cloud" ] ,
}
export const MockTemplateExample2 : TypesGen.TemplateExample = {
id : "aws-linux" ,
url : "https://github.com/coder/coder/tree/main/examples/templates/aws-linux" ,
name : "Develop in Linux on AWS EC2" ,
description : "Get started with Linux development on AWS EC2." ,
markdown :
'\n# aws-linux\n\nTo get started, run `coder templates init`. When prompted, select this template.\nFollow the on-screen instructions to proceed.\n\n## Authentication\n\nThis template assumes that coderd is run in an environment that is authenticated\nwith AWS. For example, run `aws configure import` to import credentials on the\nsystem and user running coderd. For other ways to authenticate [consult the\nTerraform docs](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#authentication-and-configuration).\n\n## Required permissions / policy\n\nThe following sample policy allows Coder to create EC2 instances and modify\ninstances provisioned by Coder:\n\n```json\n{\n "Version": "2012-10-17",\n "Statement": [\n {\n "Sid": "VisualEditor0",\n "Effect": "Allow",\n "Action": [\n "ec2:GetDefaultCreditSpecification",\n "ec2:DescribeIamInstanceProfileAssociations",\n "ec2:DescribeTags",\n "ec2:CreateTags",\n "ec2:RunInstances",\n "ec2:DescribeInstanceCreditSpecifications",\n "ec2:DescribeImages",\n "ec2:ModifyDefaultCreditSpecification",\n "ec2:DescribeVolumes"\n ],\n "Resource": "*"\n },\n {\n "Sid": "CoderResources",\n "Effect": "Allow",\n "Action": [\n "ec2:DescribeInstances",\n "ec2:DescribeInstanceAttribute",\n "ec2:UnmonitorInstances",\n "ec2:TerminateInstances",\n "ec2:StartInstances",\n "ec2:StopInstances",\n "ec2:DeleteTags",\n "ec2:MonitorInstances",\n "ec2:CreateTags",\n "ec2:RunInstances",\n "ec2:ModifyInstanceAttribute",\n "ec2:ModifyInstanceCreditSpecification"\n ],\n "Resource": "arn:aws:ec2:*:*:instance/*",\n "Condition": {\n "StringEquals": {\n "aws:ResourceTag/Coder_Provisioned": "true"\n }\n }\n }\n ]\n}\n```\n\n## code-server\n\n`code-server` is installed via the `startup_script` argument in the `coder_agent`\nresource block. The `coder_app` resource is defined to access `code-server` through\nthe dashboard UI over `localhost:13337`.\n' ,
icon : "/icon/aws.png" ,
tags : [ "aws" , "cloud" ] ,
}
export const MockPermissions : Permissions = {
createGroup : true ,
createTemplates : true ,
createUser : true ,
deleteTemplates : true ,
readAllUsers : true ,
updateUsers : true ,
viewAuditLog : true ,
2023-03-07 21:10:01 +00:00
viewDeploymentValues : true ,
2023-01-13 16:48:45 +00:00
viewUpdateCheck : true ,
2023-03-09 03:05:45 +00:00
viewDeploymentStats : true ,
2022-12-21 21:07:00 +00:00
}
2023-01-04 21:31:45 +00:00
export const MockAppearance : TypesGen.AppearanceConfig = {
logo_url : "" ,
service_banner : {
enabled : false ,
} ,
}
2023-01-17 22:56:29 +00:00
2023-02-01 17:13:11 +00:00
export const MockWorkspaceBuildParameter1 : TypesGen.WorkspaceBuildParameter = {
name : MockTemplateVersionParameter1.name ,
value : "mock-abc" ,
}
export const MockWorkspaceBuildParameter2 : TypesGen.WorkspaceBuildParameter = {
name : MockTemplateVersionParameter2.name ,
value : "3" ,
}
2023-05-03 17:40:47 +00:00
export const MockWorkspaceBuildParameter3 : TypesGen.WorkspaceBuildParameter = {
name : MockTemplateVersionParameter3.name ,
value : "my-database" ,
}
2023-02-07 08:36:13 +00:00
export const MockWorkspaceBuildParameter5 : TypesGen.WorkspaceBuildParameter = {
name : MockTemplateVersionParameter5.name ,
value : "5" ,
}
2023-03-30 14:42:29 +00:00
export const MockParameterSchema : TypesGen.ParameterSchema = {
id : "000000" ,
job_id : "000000" ,
allow_override_destination : false ,
allow_override_source : true ,
created_at : "" ,
default_destination_scheme : "none" ,
default_refresh : "" ,
default_source_scheme : "data" ,
default_source_value : "default-value" ,
name : "parameter name" ,
description : "Some description!" ,
redisplay_value : false ,
validation_condition : "" ,
validation_contains : [ ] ,
validation_error : "" ,
validation_type_system : "" ,
validation_value_type : "" ,
}
2023-01-17 22:56:29 +00:00
export const mockParameterSchema = (
partial : Partial < TypesGen.ParameterSchema > ,
) : TypesGen . ParameterSchema = > {
return {
2023-03-30 14:42:29 +00:00
. . . MockParameterSchema ,
2023-01-17 22:56:29 +00:00
. . . partial ,
}
}
2023-02-27 16:18:19 +00:00
2023-03-06 18:36:19 +00:00
export const MockParameterSchemas : TypesGen.ParameterSchema [ ] = [
mockParameterSchema ( {
name : "region" ,
default_source_value : "🏈 US Central" ,
description : "Where would you like your workspace to live?" ,
redisplay_value : true ,
validation_contains : [
"🏈 US Central" ,
"⚽ Brazil East" ,
"💶 EU West" ,
"🦘 Australia South" ,
] ,
} ) ,
mockParameterSchema ( {
name : "instance_size" ,
default_source_value : "Big" ,
description : "How large should you instance be?" ,
validation_contains : [ "Small" , "Medium" , "Big" ] ,
redisplay_value : true ,
} ) ,
mockParameterSchema ( {
name : "instance_size" ,
default_source_value : "Big" ,
description : "How large should your instance be?" ,
validation_contains : [ "Small" , "Medium" , "Big" ] ,
redisplay_value : true ,
} ) ,
mockParameterSchema ( {
name : "disable_docker" ,
description : "Disable Docker?" ,
validation_value_type : "bool" ,
default_source_value : "false" ,
redisplay_value : true ,
} ) ,
]
2023-02-27 16:18:19 +00:00
export const MockTemplateVersionGitAuth : TypesGen.TemplateVersionGitAuth = {
id : "github" ,
type : "github" ,
authenticate_url : "https://example.com/gitauth/github" ,
authenticated : false ,
}
2023-03-09 03:05:45 +00:00
export const MockDeploymentStats : TypesGen.DeploymentStats = {
aggregated_from : "2023-03-06T19:08:55.211625Z" ,
collected_at : "2023-03-06T19:12:55.211625Z" ,
next_update_at : "2023-03-06T19:20:55.211625Z" ,
session_count : {
vscode : 128 ,
jetbrains : 5 ,
ssh : 32 ,
reconnecting_pty : 15 ,
} ,
workspaces : {
building : 15 ,
failed : 12 ,
pending : 5 ,
running : 32 ,
stopped : 16 ,
connection_latency_ms : {
P50 : 32.56 ,
P95 : 15.23 ,
} ,
rx_bytes : 15613513253 ,
tx_bytes : 36113513253 ,
} ,
}
2023-05-04 18:40:41 +00:00
export const MockDeploymentSSH : TypesGen.SSHConfigResponse = {
hostname_prefix : " coder." ,
ssh_config_options : { } ,
}
export const MockStartupLogs : TypesGen.WorkspaceAgentStartupLog [ ] = [
{
id : 166663 ,
created_at : "2023-05-04T11:30:41.402072Z" ,
output : "+ curl -fsSL https://code-server.dev/install.sh" ,
level : "info" ,
} ,
{
id : 166664 ,
created_at : "2023-05-04T11:30:41.40228Z" ,
output :
"+ sh -s -- --method=standalone --prefix=/tmp/code-server --version 4.8.3" ,
level : "info" ,
} ,
{
id : 166665 ,
created_at : "2023-05-04T11:30:42.590731Z" ,
output : "Ubuntu 22.04.2 LTS" ,
level : "info" ,
} ,
{
id : 166666 ,
created_at : "2023-05-04T11:30:42.593686Z" ,
output : "Installing v4.8.3 of the amd64 release from GitHub." ,
level : "info" ,
} ,
]