mirror of
https://github.com/coder/coder.git
synced 2026-09-24 15:04:27 +08:00
chore: add derpserver to wsproxy, add proxies to derpmap (#7311)
This commit is contained in:
Generated
+20
@@ -1,5 +1,25 @@
|
||||
# Agents
|
||||
|
||||
## Get DERP map updates
|
||||
|
||||
### Code samples
|
||||
|
||||
```shell
|
||||
# Example request using curl
|
||||
curl -X GET http://coder-server:8080/api/v2/derp-map \
|
||||
-H 'Coder-Session-Token: API_KEY'
|
||||
```
|
||||
|
||||
`GET /derp-map`
|
||||
|
||||
### Responses
|
||||
|
||||
| Status | Meaning | Description | Schema |
|
||||
| ------ | ------------------------------------------------------------------------ | ------------------- | ------ |
|
||||
| 101 | [Switching Protocols](https://tools.ietf.org/html/rfc7231#section-6.2.2) | Switching Protocols | |
|
||||
|
||||
To perform this operation, you must be authenticated. [Learn more](authentication.md).
|
||||
|
||||
## Authenticate agent on AWS instance
|
||||
|
||||
### Code samples
|
||||
|
||||
Generated
+5
@@ -1451,6 +1451,7 @@ curl -X GET http://coder-server:8080/api/v2/workspaceproxies \
|
||||
{
|
||||
"created_at": "2019-08-24T14:15:22Z",
|
||||
"deleted": true,
|
||||
"derp_enabled": true,
|
||||
"display_name": "string",
|
||||
"healthy": true,
|
||||
"icon_url": "string",
|
||||
@@ -1489,6 +1490,7 @@ Status Code **200**
|
||||
| `» regions` | array | false | | |
|
||||
| `»» created_at` | string(date-time) | false | | |
|
||||
| `»» deleted` | boolean | false | | |
|
||||
| `»» derp_enabled` | boolean | false | | |
|
||||
| `»» display_name` | string | false | | |
|
||||
| `»» healthy` | boolean | false | | |
|
||||
| `»» icon_url` | string | false | | |
|
||||
@@ -1553,6 +1555,7 @@ curl -X POST http://coder-server:8080/api/v2/workspaceproxies \
|
||||
{
|
||||
"created_at": "2019-08-24T14:15:22Z",
|
||||
"deleted": true,
|
||||
"derp_enabled": true,
|
||||
"display_name": "string",
|
||||
"healthy": true,
|
||||
"icon_url": "string",
|
||||
@@ -1607,6 +1610,7 @@ curl -X GET http://coder-server:8080/api/v2/workspaceproxies/{workspaceproxy} \
|
||||
{
|
||||
"created_at": "2019-08-24T14:15:22Z",
|
||||
"deleted": true,
|
||||
"derp_enabled": true,
|
||||
"display_name": "string",
|
||||
"healthy": true,
|
||||
"icon_url": "string",
|
||||
@@ -1719,6 +1723,7 @@ curl -X PATCH http://coder-server:8080/api/v2/workspaceproxies/{workspaceproxy}
|
||||
{
|
||||
"created_at": "2019-08-24T14:15:22Z",
|
||||
"deleted": true,
|
||||
"derp_enabled": true,
|
||||
"display_name": "string",
|
||||
"healthy": true,
|
||||
"icon_url": "string",
|
||||
|
||||
Generated
+54
-8
@@ -3815,6 +3815,7 @@ AuthorizationObject can represent a "set" of objects, such as: all workspaces in
|
||||
{
|
||||
"created_at": "2019-08-24T14:15:22Z",
|
||||
"deleted": true,
|
||||
"derp_enabled": true,
|
||||
"display_name": "string",
|
||||
"healthy": true,
|
||||
"icon_url": "string",
|
||||
@@ -5995,6 +5996,7 @@ If the schedule is empty, the user will be updated to use the default schedule.|
|
||||
{
|
||||
"created_at": "2019-08-24T14:15:22Z",
|
||||
"deleted": true,
|
||||
"derp_enabled": true,
|
||||
"display_name": "string",
|
||||
"healthy": true,
|
||||
"icon_url": "string",
|
||||
@@ -6020,6 +6022,7 @@ If the schedule is empty, the user will be updated to use the default schedule.|
|
||||
| ------------------- | -------------------------------------------------------------- | -------- | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `created_at` | string | false | | |
|
||||
| `deleted` | boolean | false | | |
|
||||
| `derp_enabled` | boolean | false | | |
|
||||
| `display_name` | string | false | | |
|
||||
| `healthy` | boolean | false | | |
|
||||
| `icon_url` | string | false | | |
|
||||
@@ -7357,6 +7360,20 @@ _None_
|
||||
| `found` | boolean | false | | |
|
||||
| `legacy` | boolean | false | | |
|
||||
|
||||
## wsproxysdk.DeregisterWorkspaceProxyRequest
|
||||
|
||||
```json
|
||||
{
|
||||
"replica_id": "string"
|
||||
}
|
||||
```
|
||||
|
||||
### Properties
|
||||
|
||||
| Name | Type | Required | Restrictions | Description |
|
||||
| ------------ | ------ | -------- | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `replica_id` | string | false | | Replica ID is a unique identifier for the replica of the proxy that is deregistering. It should be generated by the client on startup and should've already been passed to the register endpoint. |
|
||||
|
||||
## wsproxysdk.IssueSignedAppTokenResponse
|
||||
|
||||
```json
|
||||
@@ -7376,27 +7393,56 @@ _None_
|
||||
```json
|
||||
{
|
||||
"access_url": "string",
|
||||
"derp_enabled": true,
|
||||
"hostname": "string",
|
||||
"replica_error": "string",
|
||||
"replica_id": "string",
|
||||
"replica_relay_address": "string",
|
||||
"version": "string",
|
||||
"wildcard_hostname": "string"
|
||||
}
|
||||
```
|
||||
|
||||
### Properties
|
||||
|
||||
| Name | Type | Required | Restrictions | Description |
|
||||
| ------------------- | ------ | -------- | ------------ | ----------------------------------------------------------------------------- |
|
||||
| `access_url` | string | false | | Access URL that hits the workspace proxy api. |
|
||||
| `wildcard_hostname` | string | false | | Wildcard hostname that the workspace proxy api is serving for subdomain apps. |
|
||||
| Name | Type | Required | Restrictions | Description |
|
||||
| ------------------------------------------------------------------------------------------------- | ------- | -------- | ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `access_url` | string | false | | Access URL that hits the workspace proxy api. |
|
||||
| `derp_enabled` | boolean | false | | Derp enabled indicates whether the proxy should be included in the DERP map or not. |
|
||||
| `hostname` | string | false | | Hostname is the OS hostname of the machine that the proxy is running on. This is only used for tracking purposes in the replicas table. |
|
||||
| `replica_error` | string | false | | Replica error is the error that the replica encountered when trying to dial it's peers. This is stored in the replicas table for debugging purposes but does not affect the proxy's ability to register. |
|
||||
| This value is only stored on subsequent requests to the register endpoint, not the first request. |
|
||||
| `replica_id` | string | false | | Replica ID is a unique identifier for the replica of the proxy that is registering. It should be generated by the client on startup and persisted (in memory only) until the process is restarted. |
|
||||
| `replica_relay_address` | string | false | | Replica relay address is the DERP address of the replica that other replicas may use to connect internally for DERP meshing. |
|
||||
| `version` | string | false | | Version is the Coder version of the proxy. |
|
||||
| `wildcard_hostname` | string | false | | Wildcard hostname that the workspace proxy api is serving for subdomain apps. |
|
||||
|
||||
## wsproxysdk.RegisterWorkspaceProxyResponse
|
||||
|
||||
```json
|
||||
{
|
||||
"app_security_key": "string"
|
||||
"app_security_key": "string",
|
||||
"derp_mesh_key": "string",
|
||||
"derp_region_id": 0,
|
||||
"sibling_replicas": [
|
||||
{
|
||||
"created_at": "2019-08-24T14:15:22Z",
|
||||
"database_latency": 0,
|
||||
"error": "string",
|
||||
"hostname": "string",
|
||||
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
|
||||
"region_id": 0,
|
||||
"relay_address": "string"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### Properties
|
||||
|
||||
| Name | Type | Required | Restrictions | Description |
|
||||
| ------------------ | ------ | -------- | ------------ | ----------- |
|
||||
| `app_security_key` | string | false | | |
|
||||
| Name | Type | Required | Restrictions | Description |
|
||||
| ------------------ | --------------------------------------------- | -------- | ------------ | -------------------------------------------------------------------------------------- |
|
||||
| `app_security_key` | string | false | | |
|
||||
| `derp_mesh_key` | string | false | | |
|
||||
| `derp_region_id` | integer | false | | |
|
||||
| `sibling_replicas` | array of [codersdk.Replica](#codersdkreplica) | false | | Sibling replicas is a list of all other replicas of the proxy that have not timed out. |
|
||||
|
||||
Reference in New Issue
Block a user