@boatdev/sdk 1.11.0 → 1.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.openapi-generator/FILES +42 -0
- package/dist/apis/BoatApi.d.ts +191 -14
- package/dist/apis/BoatApi.js +466 -14
- package/dist/esm/apis/BoatApi.d.ts +191 -14
- package/dist/esm/apis/BoatApi.js +466 -14
- package/dist/esm/models/CreateSandboxRequest.d.ts +35 -1
- package/dist/esm/models/CreateSandboxRequest.js +17 -0
- package/dist/esm/models/CreateSandboxRequestFilesInner.d.ts +52 -0
- package/dist/esm/models/CreateSandboxRequestFilesInner.js +56 -0
- package/dist/esm/models/CreateSandboxResponse.d.ts +7 -0
- package/dist/esm/models/CreateSandboxResponse.js +3 -0
- package/dist/esm/models/CreateSandboxResponseAllOfHostedPortsInner.d.ts +77 -0
- package/dist/esm/models/CreateSandboxResponseAllOfHostedPortsInner.js +64 -0
- package/dist/esm/models/FileDeleteResponse.d.ts +57 -0
- package/dist/esm/models/FileDeleteResponse.js +59 -0
- package/dist/esm/models/FileEntry.d.ts +68 -0
- package/dist/esm/models/FileEntry.js +67 -0
- package/dist/esm/models/FileFindResponse.d.ts +70 -0
- package/dist/esm/models/FileFindResponse.js +66 -0
- package/dist/esm/models/FileFindResponseAllOfMatches.d.ts +44 -0
- package/dist/esm/models/FileFindResponseAllOfMatches.js +51 -0
- package/dist/esm/models/FileFolderRequest.d.ts +38 -0
- package/dist/esm/models/FileFolderRequest.js +45 -0
- package/dist/esm/models/FileInfoResponse.d.ts +95 -0
- package/dist/esm/models/FileInfoResponse.js +85 -0
- package/dist/esm/models/FileListResponse.d.ts +70 -0
- package/dist/esm/models/FileListResponse.js +68 -0
- package/dist/esm/models/FileMoveRequest.d.ts +44 -0
- package/dist/esm/models/FileMoveRequest.js +49 -0
- package/dist/esm/models/FileMoveResponse.d.ts +63 -0
- package/dist/esm/models/FileMoveResponse.js +63 -0
- package/dist/esm/models/FilePermissionsRequest.d.ts +38 -0
- package/dist/esm/models/FilePermissionsRequest.js +47 -0
- package/dist/esm/models/FileReplaceRequest.d.ts +44 -0
- package/dist/esm/models/FileReplaceRequest.js +51 -0
- package/dist/esm/models/FileReplaceResponse.d.ts +58 -0
- package/dist/esm/models/FileReplaceResponse.js +60 -0
- package/dist/esm/models/FileReplaceResponseAllOfResults.d.ts +50 -0
- package/dist/esm/models/FileReplaceResponseAllOfResults.js +51 -0
- package/dist/esm/models/FileSearchResponse.d.ts +69 -0
- package/dist/esm/models/FileSearchResponse.js +65 -0
- package/dist/esm/models/LimitsFields.d.ts +54 -16
- package/dist/esm/models/LimitsFields.js +16 -2
- package/dist/esm/models/LimitsFieldsOveragePrices.d.ts +51 -0
- package/dist/esm/models/LimitsFieldsOveragePrices.js +48 -0
- package/dist/esm/models/LimitsFieldsOveragePricesStartBracketsInner.d.ts +44 -0
- package/dist/esm/models/LimitsFieldsOveragePricesStartBracketsInner.js +45 -0
- package/dist/esm/models/LimitsFieldsPlanIncluded.d.ts +44 -0
- package/dist/esm/models/LimitsFieldsPlanIncluded.js +45 -0
- package/dist/esm/models/LimitsFieldsStartLimitsWithWallet.d.ts +44 -0
- package/dist/esm/models/LimitsFieldsStartLimitsWithWallet.js +45 -0
- package/dist/esm/models/LimitsFieldsWallet.d.ts +32 -0
- package/dist/esm/models/LimitsFieldsWallet.js +41 -0
- package/dist/esm/models/LimitsResponse.d.ts +54 -16
- package/dist/esm/models/LimitsResponse.js +16 -2
- package/dist/esm/models/NamedSnapshotAllowance.d.ts +9 -3
- package/dist/esm/models/NamedSnapshotAllowance.js +2 -0
- package/dist/esm/models/SavedSnapshotAllowance.d.ts +9 -3
- package/dist/esm/models/SavedSnapshotAllowance.js +2 -0
- package/dist/esm/models/index.d.ts +21 -0
- package/dist/esm/models/index.js +21 -0
- package/dist/models/CreateSandboxRequest.d.ts +35 -1
- package/dist/models/CreateSandboxRequest.js +18 -1
- package/dist/models/CreateSandboxRequestFilesInner.d.ts +52 -0
- package/dist/models/CreateSandboxRequestFilesInner.js +64 -0
- package/dist/models/CreateSandboxResponse.d.ts +7 -0
- package/dist/models/CreateSandboxResponse.js +3 -0
- package/dist/models/CreateSandboxResponseAllOfHostedPortsInner.d.ts +77 -0
- package/dist/models/CreateSandboxResponseAllOfHostedPortsInner.js +72 -0
- package/dist/models/FileDeleteResponse.d.ts +57 -0
- package/dist/models/FileDeleteResponse.js +67 -0
- package/dist/models/FileEntry.d.ts +68 -0
- package/dist/models/FileEntry.js +74 -0
- package/dist/models/FileFindResponse.d.ts +70 -0
- package/dist/models/FileFindResponse.js +74 -0
- package/dist/models/FileFindResponseAllOfMatches.d.ts +44 -0
- package/dist/models/FileFindResponseAllOfMatches.js +58 -0
- package/dist/models/FileFolderRequest.d.ts +38 -0
- package/dist/models/FileFolderRequest.js +52 -0
- package/dist/models/FileInfoResponse.d.ts +95 -0
- package/dist/models/FileInfoResponse.js +93 -0
- package/dist/models/FileListResponse.d.ts +70 -0
- package/dist/models/FileListResponse.js +76 -0
- package/dist/models/FileMoveRequest.d.ts +44 -0
- package/dist/models/FileMoveRequest.js +56 -0
- package/dist/models/FileMoveResponse.d.ts +63 -0
- package/dist/models/FileMoveResponse.js +71 -0
- package/dist/models/FilePermissionsRequest.d.ts +38 -0
- package/dist/models/FilePermissionsRequest.js +54 -0
- package/dist/models/FileReplaceRequest.d.ts +44 -0
- package/dist/models/FileReplaceRequest.js +58 -0
- package/dist/models/FileReplaceResponse.d.ts +58 -0
- package/dist/models/FileReplaceResponse.js +68 -0
- package/dist/models/FileReplaceResponseAllOfResults.d.ts +50 -0
- package/dist/models/FileReplaceResponseAllOfResults.js +58 -0
- package/dist/models/FileSearchResponse.d.ts +69 -0
- package/dist/models/FileSearchResponse.js +73 -0
- package/dist/models/LimitsFields.d.ts +54 -16
- package/dist/models/LimitsFields.js +16 -2
- package/dist/models/LimitsFieldsOveragePrices.d.ts +51 -0
- package/dist/models/LimitsFieldsOveragePrices.js +55 -0
- package/dist/models/LimitsFieldsOveragePricesStartBracketsInner.d.ts +44 -0
- package/dist/models/LimitsFieldsOveragePricesStartBracketsInner.js +52 -0
- package/dist/models/LimitsFieldsPlanIncluded.d.ts +44 -0
- package/dist/models/LimitsFieldsPlanIncluded.js +52 -0
- package/dist/models/LimitsFieldsStartLimitsWithWallet.d.ts +44 -0
- package/dist/models/LimitsFieldsStartLimitsWithWallet.js +52 -0
- package/dist/models/LimitsFieldsWallet.d.ts +32 -0
- package/dist/models/LimitsFieldsWallet.js +48 -0
- package/dist/models/LimitsResponse.d.ts +54 -16
- package/dist/models/LimitsResponse.js +16 -2
- package/dist/models/NamedSnapshotAllowance.d.ts +9 -3
- package/dist/models/NamedSnapshotAllowance.js +2 -0
- package/dist/models/SavedSnapshotAllowance.d.ts +9 -3
- package/dist/models/SavedSnapshotAllowance.js +2 -0
- package/dist/models/index.d.ts +21 -0
- package/dist/models/index.js +21 -0
- package/docs/BoatApi.md +744 -48
- package/docs/CreateSandboxRequest.md +8 -0
- package/docs/CreateSandboxRequestFilesInner.md +36 -0
- package/docs/CreateSandboxResponse.md +2 -0
- package/docs/CreateSandboxResponseAllOfHostedPortsInner.md +44 -0
- package/docs/FileDeleteResponse.md +38 -0
- package/docs/FileEntry.md +44 -0
- package/docs/FileFindResponse.md +42 -0
- package/docs/FileFindResponseAllOfMatches.md +36 -0
- package/docs/FileFolderRequest.md +34 -0
- package/docs/FileInfoResponse.md +50 -0
- package/docs/FileListResponse.md +42 -0
- package/docs/FileMoveRequest.md +36 -0
- package/docs/FileMoveResponse.md +40 -0
- package/docs/FilePermissionsRequest.md +34 -0
- package/docs/FileReplaceRequest.md +36 -0
- package/docs/FileReplaceResponse.md +38 -0
- package/docs/FileReplaceResponseAllOfResults.md +38 -0
- package/docs/FileSearchResponse.md +42 -0
- package/docs/LimitsFields.md +12 -2
- package/docs/LimitsFieldsOveragePrices.md +39 -0
- package/docs/LimitsFieldsOveragePricesStartBracketsInner.md +36 -0
- package/docs/LimitsFieldsPlanIncluded.md +37 -0
- package/docs/LimitsFieldsStartLimitsWithWallet.md +37 -0
- package/docs/LimitsFieldsWallet.md +33 -0
- package/docs/LimitsResponse.md +12 -2
- package/docs/NamedSnapshotAllowance.md +3 -1
- package/docs/SavedSnapshotAllowance.md +3 -1
- package/package.json +1 -1
- package/src/apis/BoatApi.ts +721 -14
- package/src/models/CreateSandboxRequest.ts +57 -1
- package/src/models/CreateSandboxRequestFilesInner.ts +94 -0
- package/src/models/CreateSandboxResponse.ts +15 -0
- package/src/models/CreateSandboxResponseAllOfHostedPortsInner.ts +128 -0
- package/src/models/FileDeleteResponse.ts +102 -0
- package/src/models/FileEntry.ts +120 -0
- package/src/models/FileFindResponse.ts +127 -0
- package/src/models/FileFindResponseAllOfMatches.ts +84 -0
- package/src/models/FileFolderRequest.ts +74 -0
- package/src/models/FileInfoResponse.ts +158 -0
- package/src/models/FileListResponse.ts +128 -0
- package/src/models/FileMoveRequest.ts +83 -0
- package/src/models/FileMoveResponse.ts +111 -0
- package/src/models/FilePermissionsRequest.ts +75 -0
- package/src/models/FileReplaceRequest.ts +84 -0
- package/src/models/FileReplaceResponse.ts +110 -0
- package/src/models/FileReplaceResponseAllOfResults.ts +91 -0
- package/src/models/FileSearchResponse.ts +119 -0
- package/src/models/LimitsFields.ts +90 -16
- package/src/models/LimitsFieldsOveragePrices.ts +97 -0
- package/src/models/LimitsFieldsOveragePricesStartBracketsInner.ts +81 -0
- package/src/models/LimitsFieldsPlanIncluded.ts +81 -0
- package/src/models/LimitsFieldsStartLimitsWithWallet.ts +81 -0
- package/src/models/LimitsFieldsWallet.ts +65 -0
- package/src/models/LimitsResponse.ts +90 -16
- package/src/models/NamedSnapshotAllowance.ts +11 -3
- package/src/models/SavedSnapshotAllowance.ts +11 -3
- package/src/models/index.ts +21 -0
package/dist/esm/apis/BoatApi.js
CHANGED
|
@@ -47,7 +47,18 @@ import { DesktopRequestToJSON, } from '../models/DesktopRequest';
|
|
|
47
47
|
import { DesktopResponseFromJSON, } from '../models/DesktopResponse';
|
|
48
48
|
import { EnvironmentItemChangeResponseFromJSON, } from '../models/EnvironmentItemChangeResponse';
|
|
49
49
|
import { EventsResponseFromJSON, } from '../models/EventsResponse';
|
|
50
|
+
import { FileDeleteResponseFromJSON, } from '../models/FileDeleteResponse';
|
|
51
|
+
import { FileFindResponseFromJSON, } from '../models/FileFindResponse';
|
|
52
|
+
import { FileFolderRequestToJSON, } from '../models/FileFolderRequest';
|
|
53
|
+
import { FileInfoResponseFromJSON, } from '../models/FileInfoResponse';
|
|
54
|
+
import { FileListResponseFromJSON, } from '../models/FileListResponse';
|
|
55
|
+
import { FileMoveRequestToJSON, } from '../models/FileMoveRequest';
|
|
56
|
+
import { FileMoveResponseFromJSON, } from '../models/FileMoveResponse';
|
|
57
|
+
import { FilePermissionsRequestToJSON, } from '../models/FilePermissionsRequest';
|
|
50
58
|
import { FileReadResponseFromJSON, } from '../models/FileReadResponse';
|
|
59
|
+
import { FileReplaceRequestToJSON, } from '../models/FileReplaceRequest';
|
|
60
|
+
import { FileReplaceResponseFromJSON, } from '../models/FileReplaceResponse';
|
|
61
|
+
import { FileSearchResponseFromJSON, } from '../models/FileSearchResponse';
|
|
51
62
|
import { FileUrlRequestToJSON, } from '../models/FileUrlRequest';
|
|
52
63
|
import { FileUrlResponseFromJSON, } from '../models/FileUrlResponse';
|
|
53
64
|
import { FileWriteRequestToJSON, } from '../models/FileWriteRequest';
|
|
@@ -857,6 +868,54 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
857
868
|
const response = await this.createEnvironmentRaw(requestParameters, initOverrides);
|
|
858
869
|
return await response.value();
|
|
859
870
|
}
|
|
871
|
+
/**
|
|
872
|
+
* Creates request options for createFolder without sending the request
|
|
873
|
+
*/
|
|
874
|
+
async createFolderRequestOpts(input) {
|
|
875
|
+
const requestParameters = runtime.unflattenBody(input, 'fileFolderRequest', ['sandboxId'], []);
|
|
876
|
+
if (requestParameters['sandboxId'] == null) {
|
|
877
|
+
throw new runtime.RequiredError('sandboxId', 'Required parameter "sandboxId" was null or undefined when calling createFolder().');
|
|
878
|
+
}
|
|
879
|
+
if (requestParameters['fileFolderRequest'] == null) {
|
|
880
|
+
throw new runtime.RequiredError('fileFolderRequest', 'Required parameter "fileFolderRequest" was null or undefined when calling createFolder().');
|
|
881
|
+
}
|
|
882
|
+
const queryParameters = {};
|
|
883
|
+
const headerParameters = {};
|
|
884
|
+
headerParameters['Content-Type'] = 'application/json';
|
|
885
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
886
|
+
const token = this.configuration.accessToken;
|
|
887
|
+
const tokenString = await token("BoatBearerAuth", []);
|
|
888
|
+
if (tokenString) {
|
|
889
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
890
|
+
}
|
|
891
|
+
}
|
|
892
|
+
let urlPath = `/sandboxes/{sandboxId}/files/folder`;
|
|
893
|
+
urlPath = urlPath.replace('{sandboxId}', encodeURIComponent(String(requestParameters['sandboxId'])));
|
|
894
|
+
return {
|
|
895
|
+
path: urlPath,
|
|
896
|
+
method: 'POST',
|
|
897
|
+
headers: headerParameters,
|
|
898
|
+
query: queryParameters,
|
|
899
|
+
body: FileFolderRequestToJSON(requestParameters['fileFolderRequest']),
|
|
900
|
+
};
|
|
901
|
+
}
|
|
902
|
+
/**
|
|
903
|
+
* Missing parent directories are created. An existing directory is not an error. Needs `file.write`.
|
|
904
|
+
* Create a directory in a sandbox
|
|
905
|
+
*/
|
|
906
|
+
async createFolderRaw(requestParameters, initOverrides) {
|
|
907
|
+
const requestOptions = await this.createFolderRequestOpts(requestParameters);
|
|
908
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
909
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => FileInfoResponseFromJSON(jsonValue));
|
|
910
|
+
}
|
|
911
|
+
/**
|
|
912
|
+
* Missing parent directories are created. An existing directory is not an error. Needs `file.write`.
|
|
913
|
+
* Create a directory in a sandbox
|
|
914
|
+
*/
|
|
915
|
+
async createFolder(requestParameters, initOverrides) {
|
|
916
|
+
const response = await this.createFolderRaw(requestParameters, initOverrides);
|
|
917
|
+
return await response.value();
|
|
918
|
+
}
|
|
860
919
|
/**
|
|
861
920
|
* Creates request options for createScopedApiKey without sending the request
|
|
862
921
|
*/
|
|
@@ -885,7 +944,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
885
944
|
};
|
|
886
945
|
}
|
|
887
946
|
/**
|
|
888
|
-
* Creates a scoped, expiring API key. Requires a dashboard/CLI session or an admin-scoped token. The secret is returned once. This dedicated path returns a typed 503 until scoped credential creation is activated.
|
|
947
|
+
* Creates a scoped, expiring API key. Requires a dashboard/CLI session or an admin-scoped token. The secret is returned once. An unknown field is a 400, so a misspelled scope never creates a full-access key. environmentIds takes your own environments and the org environments you can use. This dedicated path returns a typed 503 until scoped credential creation is activated.
|
|
889
948
|
* Create a scoped API key
|
|
890
949
|
*/
|
|
891
950
|
async createScopedApiKeyRaw(requestParameters, initOverrides) {
|
|
@@ -894,7 +953,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
894
953
|
return new runtime.JSONApiResponse(response, (jsonValue) => ApiKeySecretResponseFromJSON(jsonValue));
|
|
895
954
|
}
|
|
896
955
|
/**
|
|
897
|
-
* Creates a scoped, expiring API key. Requires a dashboard/CLI session or an admin-scoped token. The secret is returned once. This dedicated path returns a typed 503 until scoped credential creation is activated.
|
|
956
|
+
* Creates a scoped, expiring API key. Requires a dashboard/CLI session or an admin-scoped token. The secret is returned once. An unknown field is a 400, so a misspelled scope never creates a full-access key. environmentIds takes your own environments and the org environments you can use. This dedicated path returns a typed 503 until scoped credential creation is activated.
|
|
898
957
|
* Create a scoped API key
|
|
899
958
|
*/
|
|
900
959
|
async createScopedApiKey(requestParameters, initOverrides) {
|
|
@@ -1413,6 +1472,57 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
1413
1472
|
const response = await this.deleteEnvironmentVarRaw(requestParameters, initOverrides);
|
|
1414
1473
|
return await response.value();
|
|
1415
1474
|
}
|
|
1475
|
+
/**
|
|
1476
|
+
* Creates request options for deleteFile without sending the request
|
|
1477
|
+
*/
|
|
1478
|
+
async deleteFileRequestOpts(requestParameters) {
|
|
1479
|
+
if (requestParameters['sandboxId'] == null) {
|
|
1480
|
+
throw new runtime.RequiredError('sandboxId', 'Required parameter "sandboxId" was null or undefined when calling deleteFile().');
|
|
1481
|
+
}
|
|
1482
|
+
if (requestParameters['path'] == null) {
|
|
1483
|
+
throw new runtime.RequiredError('path', 'Required parameter "path" was null or undefined when calling deleteFile().');
|
|
1484
|
+
}
|
|
1485
|
+
const queryParameters = {};
|
|
1486
|
+
if (requestParameters['path'] != null) {
|
|
1487
|
+
queryParameters['path'] = requestParameters['path'];
|
|
1488
|
+
}
|
|
1489
|
+
if (requestParameters['recursive'] != null) {
|
|
1490
|
+
queryParameters['recursive'] = requestParameters['recursive'];
|
|
1491
|
+
}
|
|
1492
|
+
const headerParameters = {};
|
|
1493
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
1494
|
+
const token = this.configuration.accessToken;
|
|
1495
|
+
const tokenString = await token("BoatBearerAuth", []);
|
|
1496
|
+
if (tokenString) {
|
|
1497
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
1498
|
+
}
|
|
1499
|
+
}
|
|
1500
|
+
let urlPath = `/sandboxes/{sandboxId}/files`;
|
|
1501
|
+
urlPath = urlPath.replace('{sandboxId}', encodeURIComponent(String(requestParameters['sandboxId'])));
|
|
1502
|
+
return {
|
|
1503
|
+
path: urlPath,
|
|
1504
|
+
method: 'DELETE',
|
|
1505
|
+
headers: headerParameters,
|
|
1506
|
+
query: queryParameters,
|
|
1507
|
+
};
|
|
1508
|
+
}
|
|
1509
|
+
/**
|
|
1510
|
+
* A directory needs `recursive=true`. A symlink is deleted itself, never its target. /home/user and /tmp themselves cannot be deleted. Needs `file.write`.
|
|
1511
|
+
* Delete a file or directory in a sandbox
|
|
1512
|
+
*/
|
|
1513
|
+
async deleteFileRaw(requestParameters, initOverrides) {
|
|
1514
|
+
const requestOptions = await this.deleteFileRequestOpts(requestParameters);
|
|
1515
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
1516
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => FileDeleteResponseFromJSON(jsonValue));
|
|
1517
|
+
}
|
|
1518
|
+
/**
|
|
1519
|
+
* A directory needs `recursive=true`. A symlink is deleted itself, never its target. /home/user and /tmp themselves cannot be deleted. Needs `file.write`.
|
|
1520
|
+
* Delete a file or directory in a sandbox
|
|
1521
|
+
*/
|
|
1522
|
+
async deleteFile(requestParameters, initOverrides) {
|
|
1523
|
+
const response = await this.deleteFileRaw(requestParameters, initOverrides);
|
|
1524
|
+
return await response.value();
|
|
1525
|
+
}
|
|
1416
1526
|
/**
|
|
1417
1527
|
* Creates request options for deleteNamedSnapshot without sending the request
|
|
1418
1528
|
* @deprecated
|
|
@@ -1873,6 +1983,60 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
1873
1983
|
const response = await this.eventsRaw(requestParameters, initOverrides);
|
|
1874
1984
|
return await response.value();
|
|
1875
1985
|
}
|
|
1986
|
+
/**
|
|
1987
|
+
* Creates request options for findInFiles without sending the request
|
|
1988
|
+
*/
|
|
1989
|
+
async findInFilesRequestOpts(requestParameters) {
|
|
1990
|
+
if (requestParameters['sandboxId'] == null) {
|
|
1991
|
+
throw new runtime.RequiredError('sandboxId', 'Required parameter "sandboxId" was null or undefined when calling findInFiles().');
|
|
1992
|
+
}
|
|
1993
|
+
if (requestParameters['pattern'] == null) {
|
|
1994
|
+
throw new runtime.RequiredError('pattern', 'Required parameter "pattern" was null or undefined when calling findInFiles().');
|
|
1995
|
+
}
|
|
1996
|
+
const queryParameters = {};
|
|
1997
|
+
if (requestParameters['path'] != null) {
|
|
1998
|
+
queryParameters['path'] = requestParameters['path'];
|
|
1999
|
+
}
|
|
2000
|
+
if (requestParameters['pattern'] != null) {
|
|
2001
|
+
queryParameters['pattern'] = requestParameters['pattern'];
|
|
2002
|
+
}
|
|
2003
|
+
if (requestParameters['regex'] != null) {
|
|
2004
|
+
queryParameters['regex'] = requestParameters['regex'];
|
|
2005
|
+
}
|
|
2006
|
+
const headerParameters = {};
|
|
2007
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
2008
|
+
const token = this.configuration.accessToken;
|
|
2009
|
+
const tokenString = await token("BoatBearerAuth", []);
|
|
2010
|
+
if (tokenString) {
|
|
2011
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
2012
|
+
}
|
|
2013
|
+
}
|
|
2014
|
+
let urlPath = `/sandboxes/{sandboxId}/files/find`;
|
|
2015
|
+
urlPath = urlPath.replace('{sandboxId}', encodeURIComponent(String(requestParameters['sandboxId'])));
|
|
2016
|
+
return {
|
|
2017
|
+
path: urlPath,
|
|
2018
|
+
method: 'GET',
|
|
2019
|
+
headers: headerParameters,
|
|
2020
|
+
query: queryParameters,
|
|
2021
|
+
};
|
|
2022
|
+
}
|
|
2023
|
+
/**
|
|
2024
|
+
* Every line under `path` that contains `pattern`. `pattern` is plain text; with `regex=true` it is an extended regular expression. Binary files are skipped and symlinks are not followed. Needs `file.read`.
|
|
2025
|
+
* Find text in sandbox files
|
|
2026
|
+
*/
|
|
2027
|
+
async findInFilesRaw(requestParameters, initOverrides) {
|
|
2028
|
+
const requestOptions = await this.findInFilesRequestOpts(requestParameters);
|
|
2029
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
2030
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => FileFindResponseFromJSON(jsonValue));
|
|
2031
|
+
}
|
|
2032
|
+
/**
|
|
2033
|
+
* Every line under `path` that contains `pattern`. `pattern` is plain text; with `regex=true` it is an extended regular expression. Binary files are skipped and symlinks are not followed. Needs `file.read`.
|
|
2034
|
+
* Find text in sandbox files
|
|
2035
|
+
*/
|
|
2036
|
+
async findInFiles(requestParameters, initOverrides) {
|
|
2037
|
+
const response = await this.findInFilesRaw(requestParameters, initOverrides);
|
|
2038
|
+
return await response.value();
|
|
2039
|
+
}
|
|
1876
2040
|
/**
|
|
1877
2041
|
* Creates request options for fork without sending the request
|
|
1878
2042
|
*/
|
|
@@ -2181,6 +2345,54 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
2181
2345
|
const response = await this.getDeletionOperationRaw(requestParameters, initOverrides);
|
|
2182
2346
|
return await response.value();
|
|
2183
2347
|
}
|
|
2348
|
+
/**
|
|
2349
|
+
* Creates request options for getFileInfo without sending the request
|
|
2350
|
+
*/
|
|
2351
|
+
async getFileInfoRequestOpts(requestParameters) {
|
|
2352
|
+
if (requestParameters['sandboxId'] == null) {
|
|
2353
|
+
throw new runtime.RequiredError('sandboxId', 'Required parameter "sandboxId" was null or undefined when calling getFileInfo().');
|
|
2354
|
+
}
|
|
2355
|
+
if (requestParameters['path'] == null) {
|
|
2356
|
+
throw new runtime.RequiredError('path', 'Required parameter "path" was null or undefined when calling getFileInfo().');
|
|
2357
|
+
}
|
|
2358
|
+
const queryParameters = {};
|
|
2359
|
+
if (requestParameters['path'] != null) {
|
|
2360
|
+
queryParameters['path'] = requestParameters['path'];
|
|
2361
|
+
}
|
|
2362
|
+
const headerParameters = {};
|
|
2363
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
2364
|
+
const token = this.configuration.accessToken;
|
|
2365
|
+
const tokenString = await token("BoatBearerAuth", []);
|
|
2366
|
+
if (tokenString) {
|
|
2367
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
2368
|
+
}
|
|
2369
|
+
}
|
|
2370
|
+
let urlPath = `/sandboxes/{sandboxId}/files/info`;
|
|
2371
|
+
urlPath = urlPath.replace('{sandboxId}', encodeURIComponent(String(requestParameters['sandboxId'])));
|
|
2372
|
+
return {
|
|
2373
|
+
path: urlPath,
|
|
2374
|
+
method: 'GET',
|
|
2375
|
+
headers: headerParameters,
|
|
2376
|
+
query: queryParameters,
|
|
2377
|
+
};
|
|
2378
|
+
}
|
|
2379
|
+
/**
|
|
2380
|
+
* Size, permission bits, type and modification time. Needs `file.read`.
|
|
2381
|
+
* Get file or directory details in a sandbox
|
|
2382
|
+
*/
|
|
2383
|
+
async getFileInfoRaw(requestParameters, initOverrides) {
|
|
2384
|
+
const requestOptions = await this.getFileInfoRequestOpts(requestParameters);
|
|
2385
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
2386
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => FileInfoResponseFromJSON(jsonValue));
|
|
2387
|
+
}
|
|
2388
|
+
/**
|
|
2389
|
+
* Size, permission bits, type and modification time. Needs `file.read`.
|
|
2390
|
+
* Get file or directory details in a sandbox
|
|
2391
|
+
*/
|
|
2392
|
+
async getFileInfo(requestParameters, initOverrides) {
|
|
2393
|
+
const response = await this.getFileInfoRaw(requestParameters, initOverrides);
|
|
2394
|
+
return await response.value();
|
|
2395
|
+
}
|
|
2184
2396
|
/**
|
|
2185
2397
|
* Creates request options for getLatestSandboxSnapshot without sending the request
|
|
2186
2398
|
*/
|
|
@@ -2730,7 +2942,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
2730
2942
|
};
|
|
2731
2943
|
}
|
|
2732
2944
|
/**
|
|
2733
|
-
* Check remaining machine starts,
|
|
2945
|
+
* Check remaining machine starts, included VM time, the wallet, overage prices, access readiness, and concurrent-sandbox capacity for the wallet a create would bill: the `org` / `X-Boat-Org` you pass (id or name), else the account\'s active wallet, else personal. The response carries `teamId` when an organization wallet was read.
|
|
2734
2946
|
* Get Boat limits
|
|
2735
2947
|
*/
|
|
2736
2948
|
async limitsRaw(requestParameters, initOverrides) {
|
|
@@ -2739,7 +2951,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
2739
2951
|
return new runtime.JSONApiResponse(response, (jsonValue) => LimitsResponseFromJSON(jsonValue));
|
|
2740
2952
|
}
|
|
2741
2953
|
/**
|
|
2742
|
-
* Check remaining machine starts,
|
|
2954
|
+
* Check remaining machine starts, included VM time, the wallet, overage prices, access readiness, and concurrent-sandbox capacity for the wallet a create would bill: the `org` / `X-Boat-Org` you pass (id or name), else the account\'s active wallet, else personal. The response carries `teamId` when an organization wallet was read.
|
|
2743
2955
|
* Get Boat limits
|
|
2744
2956
|
*/
|
|
2745
2957
|
async limits(requestParameters = {}, initOverrides) {
|
|
@@ -2830,6 +3042,51 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
2830
3042
|
const response = await this.listCredentialProfilesRaw(initOverrides);
|
|
2831
3043
|
return await response.value();
|
|
2832
3044
|
}
|
|
3045
|
+
/**
|
|
3046
|
+
* Creates request options for listFiles without sending the request
|
|
3047
|
+
*/
|
|
3048
|
+
async listFilesRequestOpts(requestParameters) {
|
|
3049
|
+
if (requestParameters['sandboxId'] == null) {
|
|
3050
|
+
throw new runtime.RequiredError('sandboxId', 'Required parameter "sandboxId" was null or undefined when calling listFiles().');
|
|
3051
|
+
}
|
|
3052
|
+
const queryParameters = {};
|
|
3053
|
+
if (requestParameters['path'] != null) {
|
|
3054
|
+
queryParameters['path'] = requestParameters['path'];
|
|
3055
|
+
}
|
|
3056
|
+
const headerParameters = {};
|
|
3057
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
3058
|
+
const token = this.configuration.accessToken;
|
|
3059
|
+
const tokenString = await token("BoatBearerAuth", []);
|
|
3060
|
+
if (tokenString) {
|
|
3061
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
3062
|
+
}
|
|
3063
|
+
}
|
|
3064
|
+
let urlPath = `/sandboxes/{sandboxId}/files/list`;
|
|
3065
|
+
urlPath = urlPath.replace('{sandboxId}', encodeURIComponent(String(requestParameters['sandboxId'])));
|
|
3066
|
+
return {
|
|
3067
|
+
path: urlPath,
|
|
3068
|
+
method: 'GET',
|
|
3069
|
+
headers: headerParameters,
|
|
3070
|
+
query: queryParameters,
|
|
3071
|
+
};
|
|
3072
|
+
}
|
|
3073
|
+
/**
|
|
3074
|
+
* One level, sorted by name. A symlink is listed as a symlink, not followed. Defaults to /home/user. Needs `file.read`.
|
|
3075
|
+
* List a directory in a sandbox
|
|
3076
|
+
*/
|
|
3077
|
+
async listFilesRaw(requestParameters, initOverrides) {
|
|
3078
|
+
const requestOptions = await this.listFilesRequestOpts(requestParameters);
|
|
3079
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
3080
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => FileListResponseFromJSON(jsonValue));
|
|
3081
|
+
}
|
|
3082
|
+
/**
|
|
3083
|
+
* One level, sorted by name. A symlink is listed as a symlink, not followed. Defaults to /home/user. Needs `file.read`.
|
|
3084
|
+
* List a directory in a sandbox
|
|
3085
|
+
*/
|
|
3086
|
+
async listFiles(requestParameters, initOverrides) {
|
|
3087
|
+
const response = await this.listFilesRaw(requestParameters, initOverrides);
|
|
3088
|
+
return await response.value();
|
|
3089
|
+
}
|
|
2833
3090
|
/**
|
|
2834
3091
|
* Creates request options for listNamedSnapshots without sending the request
|
|
2835
3092
|
* @deprecated
|
|
@@ -3163,6 +3420,54 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
3163
3420
|
const response = await this.meRaw(initOverrides);
|
|
3164
3421
|
return await response.value();
|
|
3165
3422
|
}
|
|
3423
|
+
/**
|
|
3424
|
+
* Creates request options for moveFile without sending the request
|
|
3425
|
+
*/
|
|
3426
|
+
async moveFileRequestOpts(input) {
|
|
3427
|
+
const requestParameters = runtime.unflattenBody(input, 'fileMoveRequest', ['sandboxId'], []);
|
|
3428
|
+
if (requestParameters['sandboxId'] == null) {
|
|
3429
|
+
throw new runtime.RequiredError('sandboxId', 'Required parameter "sandboxId" was null or undefined when calling moveFile().');
|
|
3430
|
+
}
|
|
3431
|
+
if (requestParameters['fileMoveRequest'] == null) {
|
|
3432
|
+
throw new runtime.RequiredError('fileMoveRequest', 'Required parameter "fileMoveRequest" was null or undefined when calling moveFile().');
|
|
3433
|
+
}
|
|
3434
|
+
const queryParameters = {};
|
|
3435
|
+
const headerParameters = {};
|
|
3436
|
+
headerParameters['Content-Type'] = 'application/json';
|
|
3437
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
3438
|
+
const token = this.configuration.accessToken;
|
|
3439
|
+
const tokenString = await token("BoatBearerAuth", []);
|
|
3440
|
+
if (tokenString) {
|
|
3441
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
3442
|
+
}
|
|
3443
|
+
}
|
|
3444
|
+
let urlPath = `/sandboxes/{sandboxId}/files/move`;
|
|
3445
|
+
urlPath = urlPath.replace('{sandboxId}', encodeURIComponent(String(requestParameters['sandboxId'])));
|
|
3446
|
+
return {
|
|
3447
|
+
path: urlPath,
|
|
3448
|
+
method: 'POST',
|
|
3449
|
+
headers: headerParameters,
|
|
3450
|
+
query: queryParameters,
|
|
3451
|
+
body: FileMoveRequestToJSON(requestParameters['fileMoveRequest']),
|
|
3452
|
+
};
|
|
3453
|
+
}
|
|
3454
|
+
/**
|
|
3455
|
+
* Works across /home/user and /tmp. A symlink is moved itself, never its target. Needs `file.write`.
|
|
3456
|
+
* Move or rename a file or directory in a sandbox
|
|
3457
|
+
*/
|
|
3458
|
+
async moveFileRaw(requestParameters, initOverrides) {
|
|
3459
|
+
const requestOptions = await this.moveFileRequestOpts(requestParameters);
|
|
3460
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
3461
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => FileMoveResponseFromJSON(jsonValue));
|
|
3462
|
+
}
|
|
3463
|
+
/**
|
|
3464
|
+
* Works across /home/user and /tmp. A symlink is moved itself, never its target. Needs `file.write`.
|
|
3465
|
+
* Move or rename a file or directory in a sandbox
|
|
3466
|
+
*/
|
|
3467
|
+
async moveFile(requestParameters, initOverrides) {
|
|
3468
|
+
const response = await this.moveFileRaw(requestParameters, initOverrides);
|
|
3469
|
+
return await response.value();
|
|
3470
|
+
}
|
|
3166
3471
|
/**
|
|
3167
3472
|
* Creates request options for processes without sending the request
|
|
3168
3473
|
*/
|
|
@@ -3334,7 +3639,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
3334
3639
|
};
|
|
3335
3640
|
}
|
|
3336
3641
|
/**
|
|
3337
|
-
* Files up to 5 MiB. For a larger file, use `POST /sandboxes/{sandboxId}/files/download-url`.
|
|
3642
|
+
* Files up to 5 MiB. For a larger file, use `POST /sandboxes/{sandboxId}/files/download-url`. On a sandbox that is still starting, the call waits until it is ready (up to 60 s, like a command), so it reads the sandbox\'s own disk and never the machine\'s stock one.
|
|
3338
3643
|
* Read a file from a sandbox
|
|
3339
3644
|
*/
|
|
3340
3645
|
async readFileRaw(requestParameters, initOverrides) {
|
|
@@ -3343,7 +3648,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
3343
3648
|
return new runtime.JSONApiResponse(response, (jsonValue) => FileReadResponseFromJSON(jsonValue));
|
|
3344
3649
|
}
|
|
3345
3650
|
/**
|
|
3346
|
-
* Files up to 5 MiB. For a larger file, use `POST /sandboxes/{sandboxId}/files/download-url`.
|
|
3651
|
+
* Files up to 5 MiB. For a larger file, use `POST /sandboxes/{sandboxId}/files/download-url`. On a sandbox that is still starting, the call waits until it is ready (up to 60 s, like a command), so it reads the sandbox\'s own disk and never the machine\'s stock one.
|
|
3347
3652
|
* Read a file from a sandbox
|
|
3348
3653
|
*/
|
|
3349
3654
|
async readFile(requestParameters, initOverrides) {
|
|
@@ -3392,6 +3697,54 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
3392
3697
|
const response = await this.recoverRaw(requestParameters, initOverrides);
|
|
3393
3698
|
return await response.value();
|
|
3394
3699
|
}
|
|
3700
|
+
/**
|
|
3701
|
+
* Creates request options for replaceInFiles without sending the request
|
|
3702
|
+
*/
|
|
3703
|
+
async replaceInFilesRequestOpts(input) {
|
|
3704
|
+
const requestParameters = runtime.unflattenBody(input, 'fileReplaceRequest', ['sandboxId'], []);
|
|
3705
|
+
if (requestParameters['sandboxId'] == null) {
|
|
3706
|
+
throw new runtime.RequiredError('sandboxId', 'Required parameter "sandboxId" was null or undefined when calling replaceInFiles().');
|
|
3707
|
+
}
|
|
3708
|
+
if (requestParameters['fileReplaceRequest'] == null) {
|
|
3709
|
+
throw new runtime.RequiredError('fileReplaceRequest', 'Required parameter "fileReplaceRequest" was null or undefined when calling replaceInFiles().');
|
|
3710
|
+
}
|
|
3711
|
+
const queryParameters = {};
|
|
3712
|
+
const headerParameters = {};
|
|
3713
|
+
headerParameters['Content-Type'] = 'application/json';
|
|
3714
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
3715
|
+
const token = this.configuration.accessToken;
|
|
3716
|
+
const tokenString = await token("BoatBearerAuth", []);
|
|
3717
|
+
if (tokenString) {
|
|
3718
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
3719
|
+
}
|
|
3720
|
+
}
|
|
3721
|
+
let urlPath = `/sandboxes/{sandboxId}/files/replace`;
|
|
3722
|
+
urlPath = urlPath.replace('{sandboxId}', encodeURIComponent(String(requestParameters['sandboxId'])));
|
|
3723
|
+
return {
|
|
3724
|
+
path: urlPath,
|
|
3725
|
+
method: 'POST',
|
|
3726
|
+
headers: headerParameters,
|
|
3727
|
+
query: queryParameters,
|
|
3728
|
+
body: FileReplaceRequestToJSON(requestParameters['fileReplaceRequest']),
|
|
3729
|
+
};
|
|
3730
|
+
}
|
|
3731
|
+
/**
|
|
3732
|
+
* Replaces every occurrence of `pattern` with `newValue` in each file. Needs `file.write`.
|
|
3733
|
+
* Replace text in sandbox files
|
|
3734
|
+
*/
|
|
3735
|
+
async replaceInFilesRaw(requestParameters, initOverrides) {
|
|
3736
|
+
const requestOptions = await this.replaceInFilesRequestOpts(requestParameters);
|
|
3737
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
3738
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => FileReplaceResponseFromJSON(jsonValue));
|
|
3739
|
+
}
|
|
3740
|
+
/**
|
|
3741
|
+
* Replaces every occurrence of `pattern` with `newValue` in each file. Needs `file.write`.
|
|
3742
|
+
* Replace text in sandbox files
|
|
3743
|
+
*/
|
|
3744
|
+
async replaceInFiles(requestParameters, initOverrides) {
|
|
3745
|
+
const response = await this.replaceInFilesRaw(requestParameters, initOverrides);
|
|
3746
|
+
return await response.value();
|
|
3747
|
+
}
|
|
3395
3748
|
/**
|
|
3396
3749
|
* Creates request options for repos without sending the request
|
|
3397
3750
|
*/
|
|
@@ -3517,7 +3870,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
3517
3870
|
};
|
|
3518
3871
|
}
|
|
3519
3872
|
/**
|
|
3520
|
-
* Revokes the key immediately. Requires a dashboard or CLI session.
|
|
3873
|
+
* Revokes the key immediately. Requires a dashboard or CLI session, or an admin-scoped key. A key revokes itself or a key it could create (same or fewer actions, sandboxes and environments, no later expiry).
|
|
3521
3874
|
* Revoke an API key
|
|
3522
3875
|
*/
|
|
3523
3876
|
async revokeApiKeyRaw(requestParameters, initOverrides) {
|
|
@@ -3526,7 +3879,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
3526
3879
|
return new runtime.JSONApiResponse(response, (jsonValue) => ApiKeyRevokeResponseFromJSON(jsonValue));
|
|
3527
3880
|
}
|
|
3528
3881
|
/**
|
|
3529
|
-
* Revokes the key immediately. Requires a dashboard or CLI session.
|
|
3882
|
+
* Revokes the key immediately. Requires a dashboard or CLI session, or an admin-scoped key. A key revokes itself or a key it could create (same or fewer actions, sandboxes and environments, no later expiry).
|
|
3530
3883
|
* Revoke an API key
|
|
3531
3884
|
*/
|
|
3532
3885
|
async revokeApiKey(requestParameters, initOverrides) {
|
|
@@ -3605,7 +3958,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
3605
3958
|
};
|
|
3606
3959
|
}
|
|
3607
3960
|
/**
|
|
3608
|
-
* Replaces the raw secret without changing expiry or scope. Requires a dashboard or CLI session.
|
|
3961
|
+
* Replaces the raw secret without changing expiry or scope. Requires a dashboard or CLI session, or an admin-scoped key. A key rotates itself or a key it could create.
|
|
3609
3962
|
* Rotate an API key
|
|
3610
3963
|
*/
|
|
3611
3964
|
async rotateApiKeyRaw(requestParameters, initOverrides) {
|
|
@@ -3614,7 +3967,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
3614
3967
|
return new runtime.JSONApiResponse(response, (jsonValue) => ApiKeySecretResponseFromJSON(jsonValue));
|
|
3615
3968
|
}
|
|
3616
3969
|
/**
|
|
3617
|
-
* Replaces the raw secret without changing expiry or scope. Requires a dashboard or CLI session.
|
|
3970
|
+
* Replaces the raw secret without changing expiry or scope. Requires a dashboard or CLI session, or an admin-scoped key. A key rotates itself or a key it could create.
|
|
3618
3971
|
* Rotate an API key
|
|
3619
3972
|
*/
|
|
3620
3973
|
async rotateApiKey(requestParameters, initOverrides) {
|
|
@@ -3813,6 +4166,57 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
3813
4166
|
const response = await this.saveSavedSnapshotRaw(requestParameters, initOverrides);
|
|
3814
4167
|
return await response.value();
|
|
3815
4168
|
}
|
|
4169
|
+
/**
|
|
4170
|
+
* Creates request options for searchFiles without sending the request
|
|
4171
|
+
*/
|
|
4172
|
+
async searchFilesRequestOpts(requestParameters) {
|
|
4173
|
+
if (requestParameters['sandboxId'] == null) {
|
|
4174
|
+
throw new runtime.RequiredError('sandboxId', 'Required parameter "sandboxId" was null or undefined when calling searchFiles().');
|
|
4175
|
+
}
|
|
4176
|
+
if (requestParameters['pattern'] == null) {
|
|
4177
|
+
throw new runtime.RequiredError('pattern', 'Required parameter "pattern" was null or undefined when calling searchFiles().');
|
|
4178
|
+
}
|
|
4179
|
+
const queryParameters = {};
|
|
4180
|
+
if (requestParameters['path'] != null) {
|
|
4181
|
+
queryParameters['path'] = requestParameters['path'];
|
|
4182
|
+
}
|
|
4183
|
+
if (requestParameters['pattern'] != null) {
|
|
4184
|
+
queryParameters['pattern'] = requestParameters['pattern'];
|
|
4185
|
+
}
|
|
4186
|
+
const headerParameters = {};
|
|
4187
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
4188
|
+
const token = this.configuration.accessToken;
|
|
4189
|
+
const tokenString = await token("BoatBearerAuth", []);
|
|
4190
|
+
if (tokenString) {
|
|
4191
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
4192
|
+
}
|
|
4193
|
+
}
|
|
4194
|
+
let urlPath = `/sandboxes/{sandboxId}/files/search`;
|
|
4195
|
+
urlPath = urlPath.replace('{sandboxId}', encodeURIComponent(String(requestParameters['sandboxId'])));
|
|
4196
|
+
return {
|
|
4197
|
+
path: urlPath,
|
|
4198
|
+
method: 'GET',
|
|
4199
|
+
headers: headerParameters,
|
|
4200
|
+
query: queryParameters,
|
|
4201
|
+
};
|
|
4202
|
+
}
|
|
4203
|
+
/**
|
|
4204
|
+
* Every file and directory under `path` whose name matches the glob `pattern` (for example `*.py`). Symlinks are not followed. Needs `file.read`.
|
|
4205
|
+
* Search files by name in a sandbox
|
|
4206
|
+
*/
|
|
4207
|
+
async searchFilesRaw(requestParameters, initOverrides) {
|
|
4208
|
+
const requestOptions = await this.searchFilesRequestOpts(requestParameters);
|
|
4209
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
4210
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => FileSearchResponseFromJSON(jsonValue));
|
|
4211
|
+
}
|
|
4212
|
+
/**
|
|
4213
|
+
* Every file and directory under `path` whose name matches the glob `pattern` (for example `*.py`). Symlinks are not followed. Needs `file.read`.
|
|
4214
|
+
* Search files by name in a sandbox
|
|
4215
|
+
*/
|
|
4216
|
+
async searchFiles(requestParameters, initOverrides) {
|
|
4217
|
+
const response = await this.searchFilesRaw(requestParameters, initOverrides);
|
|
4218
|
+
return await response.value();
|
|
4219
|
+
}
|
|
3816
4220
|
/**
|
|
3817
4221
|
* Creates request options for secrets without sending the request
|
|
3818
4222
|
*/
|
|
@@ -4149,6 +4553,54 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
4149
4553
|
const response = await this.setEnvironmentVarRaw(requestParameters, initOverrides);
|
|
4150
4554
|
return await response.value();
|
|
4151
4555
|
}
|
|
4556
|
+
/**
|
|
4557
|
+
* Creates request options for setFilePermissions without sending the request
|
|
4558
|
+
*/
|
|
4559
|
+
async setFilePermissionsRequestOpts(input) {
|
|
4560
|
+
const requestParameters = runtime.unflattenBody(input, 'filePermissionsRequest', ['sandboxId'], []);
|
|
4561
|
+
if (requestParameters['sandboxId'] == null) {
|
|
4562
|
+
throw new runtime.RequiredError('sandboxId', 'Required parameter "sandboxId" was null or undefined when calling setFilePermissions().');
|
|
4563
|
+
}
|
|
4564
|
+
if (requestParameters['filePermissionsRequest'] == null) {
|
|
4565
|
+
throw new runtime.RequiredError('filePermissionsRequest', 'Required parameter "filePermissionsRequest" was null or undefined when calling setFilePermissions().');
|
|
4566
|
+
}
|
|
4567
|
+
const queryParameters = {};
|
|
4568
|
+
const headerParameters = {};
|
|
4569
|
+
headerParameters['Content-Type'] = 'application/json';
|
|
4570
|
+
if (this.configuration && this.configuration.accessToken) {
|
|
4571
|
+
const token = this.configuration.accessToken;
|
|
4572
|
+
const tokenString = await token("BoatBearerAuth", []);
|
|
4573
|
+
if (tokenString) {
|
|
4574
|
+
headerParameters["Authorization"] = `Bearer ${tokenString}`;
|
|
4575
|
+
}
|
|
4576
|
+
}
|
|
4577
|
+
let urlPath = `/sandboxes/{sandboxId}/files/permissions`;
|
|
4578
|
+
urlPath = urlPath.replace('{sandboxId}', encodeURIComponent(String(requestParameters['sandboxId'])));
|
|
4579
|
+
return {
|
|
4580
|
+
path: urlPath,
|
|
4581
|
+
method: 'POST',
|
|
4582
|
+
headers: headerParameters,
|
|
4583
|
+
query: queryParameters,
|
|
4584
|
+
body: FilePermissionsRequestToJSON(requestParameters['filePermissionsRequest']),
|
|
4585
|
+
};
|
|
4586
|
+
}
|
|
4587
|
+
/**
|
|
4588
|
+
* Sets the permission bits. Files belong to the sandbox user; the owner and group do not change. Needs `file.write`.
|
|
4589
|
+
* Set file permissions in a sandbox
|
|
4590
|
+
*/
|
|
4591
|
+
async setFilePermissionsRaw(requestParameters, initOverrides) {
|
|
4592
|
+
const requestOptions = await this.setFilePermissionsRequestOpts(requestParameters);
|
|
4593
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
4594
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => FileInfoResponseFromJSON(jsonValue));
|
|
4595
|
+
}
|
|
4596
|
+
/**
|
|
4597
|
+
* Sets the permission bits. Files belong to the sandbox user; the owner and group do not change. Needs `file.write`.
|
|
4598
|
+
* Set file permissions in a sandbox
|
|
4599
|
+
*/
|
|
4600
|
+
async setFilePermissions(requestParameters, initOverrides) {
|
|
4601
|
+
const response = await this.setFilePermissionsRaw(requestParameters, initOverrides);
|
|
4602
|
+
return await response.value();
|
|
4603
|
+
}
|
|
4152
4604
|
/**
|
|
4153
4605
|
* Creates request options for setSandboxAiAccess without sending the request
|
|
4154
4606
|
*/
|
|
@@ -4645,7 +5097,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
4645
5097
|
};
|
|
4646
5098
|
}
|
|
4647
5099
|
/**
|
|
4648
|
-
* With the proxy on, sandboxes get placeholder keys and base URLs that point at Boat. Boat swaps in the real key on each request. Real keys never enter the sandbox. Running sandboxes switch at their next start. While on, the account pays $1
|
|
5100
|
+
* With the proxy on, sandboxes get placeholder keys and base URLs that point at Boat. Boat swaps in the real key on each request. Real keys never enter the sandbox. Running sandboxes switch at their next start. While on, the wallet of the account pays $1 for each UTC day, plus $1 per 1,000 proxied requests, charged to the wallet each sandbox bills. For an organization, only its owner can change the switch. Needs an API key with `account.admin`.
|
|
4649
5101
|
* Turn the AI credentials proxy on or off
|
|
4650
5102
|
*/
|
|
4651
5103
|
async updateAiProxyRaw(requestParameters, initOverrides) {
|
|
@@ -4654,7 +5106,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
4654
5106
|
return new runtime.JSONApiResponse(response, (jsonValue) => AiProxySettingsFromJSON(jsonValue));
|
|
4655
5107
|
}
|
|
4656
5108
|
/**
|
|
4657
|
-
* With the proxy on, sandboxes get placeholder keys and base URLs that point at Boat. Boat swaps in the real key on each request. Real keys never enter the sandbox. Running sandboxes switch at their next start. While on, the account pays $1
|
|
5109
|
+
* With the proxy on, sandboxes get placeholder keys and base URLs that point at Boat. Boat swaps in the real key on each request. Real keys never enter the sandbox. Running sandboxes switch at their next start. While on, the wallet of the account pays $1 for each UTC day, plus $1 per 1,000 proxied requests, charged to the wallet each sandbox bills. For an organization, only its owner can change the switch. Needs an API key with `account.admin`.
|
|
4658
5110
|
* Turn the AI credentials proxy on or off
|
|
4659
5111
|
*/
|
|
4660
5112
|
async updateAiProxy(requestParameters, initOverrides) {
|
|
@@ -5070,7 +5522,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
5070
5522
|
};
|
|
5071
5523
|
}
|
|
5072
5524
|
/**
|
|
5073
|
-
* Files up to 5 MiB after decoding. For a larger file, use `POST /sandboxes/{sandboxId}/files/upload-url`.
|
|
5525
|
+
* Files up to 5 MiB after decoding. For a larger file, use `POST /sandboxes/{sandboxId}/files/upload-url`. On a sandbox that is still starting, the call waits until it is ready (up to 60 s, like a command): a sandbox\'s files are in place only once it is ready, so a write any earlier would not stay. A `200` always means the file is on the sandbox\'s disk.
|
|
5074
5526
|
* Write a file in a sandbox
|
|
5075
5527
|
*/
|
|
5076
5528
|
async writeFileRaw(requestParameters, initOverrides) {
|
|
@@ -5079,7 +5531,7 @@ export class BoatApi extends runtime.BaseAPI {
|
|
|
5079
5531
|
return new runtime.JSONApiResponse(response, (jsonValue) => FileWriteResponseFromJSON(jsonValue));
|
|
5080
5532
|
}
|
|
5081
5533
|
/**
|
|
5082
|
-
* Files up to 5 MiB after decoding. For a larger file, use `POST /sandboxes/{sandboxId}/files/upload-url`.
|
|
5534
|
+
* Files up to 5 MiB after decoding. For a larger file, use `POST /sandboxes/{sandboxId}/files/upload-url`. On a sandbox that is still starting, the call waits until it is ready (up to 60 s, like a command): a sandbox\'s files are in place only once it is ready, so a write any earlier would not stay. A `200` always means the file is on the sandbox\'s disk.
|
|
5083
5535
|
* Write a file in a sandbox
|
|
5084
5536
|
*/
|
|
5085
5537
|
async writeFile(requestParameters, initOverrides) {
|