@fly.io/sdk 0.1.0

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.
Files changed (50) hide show
  1. package/LICENSE +21 -0
  2. package/dist/app.d.ts +181 -0
  3. package/dist/app.d.ts.map +1 -0
  4. package/dist/app.js +212 -0
  5. package/dist/client.d.ts +42 -0
  6. package/dist/client.d.ts.map +1 -0
  7. package/dist/client.js +200 -0
  8. package/dist/errors.d.ts +48 -0
  9. package/dist/errors.d.ts.map +1 -0
  10. package/dist/errors.js +85 -0
  11. package/dist/index.d.ts +28 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +18 -0
  14. package/dist/machine.d.ts +319 -0
  15. package/dist/machine.d.ts.map +1 -0
  16. package/dist/machine.js +249 -0
  17. package/dist/network.d.ts +45 -0
  18. package/dist/network.d.ts.map +1 -0
  19. package/dist/network.js +44 -0
  20. package/dist/organization.d.ts +20 -0
  21. package/dist/organization.d.ts.map +1 -0
  22. package/dist/organization.js +22 -0
  23. package/dist/regions.d.ts +35 -0
  24. package/dist/regions.d.ts.map +1 -0
  25. package/dist/regions.js +53 -0
  26. package/dist/secret.d.ts +55 -0
  27. package/dist/secret.d.ts.map +1 -0
  28. package/dist/secret.js +53 -0
  29. package/dist/token.d.ts +14 -0
  30. package/dist/token.d.ts.map +1 -0
  31. package/dist/token.js +16 -0
  32. package/dist/types.d.ts +937 -0
  33. package/dist/types.d.ts.map +1 -0
  34. package/dist/types.js +40 -0
  35. package/dist/volume.d.ts +72 -0
  36. package/dist/volume.d.ts.map +1 -0
  37. package/dist/volume.js +45 -0
  38. package/package.json +54 -0
  39. package/src/app.ts +462 -0
  40. package/src/client.ts +262 -0
  41. package/src/errors.ts +135 -0
  42. package/src/index.ts +141 -0
  43. package/src/machine.ts +644 -0
  44. package/src/network.ts +87 -0
  45. package/src/organization.ts +43 -0
  46. package/src/regions.ts +94 -0
  47. package/src/secret.ts +101 -0
  48. package/src/token.ts +29 -0
  49. package/src/types.ts +1072 -0
  50. package/src/volume.ts +124 -0
@@ -0,0 +1,48 @@
1
+ import * as errore from 'errore';
2
+ import type { MainStatusCode } from './types.ts';
3
+ declare const FlyApiError_base: errore.FactoryTaggedErrorClass<"FlyApiError", "Fly API request failed for $method $path with status $httpStatus", Error>;
4
+ export declare class FlyApiError extends FlyApiError_base {
5
+ }
6
+ declare const FlyBadRequestError_base: errore.FactoryTaggedErrorClass<"FlyBadRequestError", "Fly API returned 400 for $method $path", Error>;
7
+ export declare class FlyBadRequestError extends FlyBadRequestError_base {
8
+ }
9
+ declare const FlyUnauthorizedError_base: errore.FactoryTaggedErrorClass<"FlyUnauthorizedError", "Fly API returned 401 for $method $path", Error>;
10
+ export declare class FlyUnauthorizedError extends FlyUnauthorizedError_base {
11
+ }
12
+ declare const FlyNotFoundError_base: errore.FactoryTaggedErrorClass<"FlyNotFoundError", "Fly API returned 404 for $method $path", Error>;
13
+ export declare class FlyNotFoundError extends FlyNotFoundError_base {
14
+ }
15
+ declare const FlyPreconditionFailedError_base: errore.FactoryTaggedErrorClass<"FlyPreconditionFailedError", "Fly API returned 412 for $method $path", Error>;
16
+ export declare class FlyPreconditionFailedError extends FlyPreconditionFailedError_base {
17
+ }
18
+ declare const FlyUnprocessableEntityError_base: errore.FactoryTaggedErrorClass<"FlyUnprocessableEntityError", "Fly API returned 422 for $method $path", Error>;
19
+ export declare class FlyUnprocessableEntityError extends FlyUnprocessableEntityError_base {
20
+ }
21
+ declare const FlyInternalServerError_base: errore.FactoryTaggedErrorClass<"FlyInternalServerError", "Fly API returned 500 for $method $path", Error>;
22
+ export declare class FlyInternalServerError extends FlyInternalServerError_base {
23
+ }
24
+ declare const FlyGraphQLError_base: errore.FactoryTaggedErrorClass<"FlyGraphQLError", "Fly GraphQL request failed for $path: $messages", Error>;
25
+ export declare class FlyGraphQLError extends FlyGraphQLError_base {
26
+ }
27
+ export type FlyClientError = FlyApiError | FlyBadRequestError | FlyUnauthorizedError | FlyNotFoundError | FlyPreconditionFailedError | FlyUnprocessableEntityError | FlyInternalServerError | FlyGraphQLError;
28
+ export type FlyResult<T> = FlyClientError | T;
29
+ type ErrorResponsePayload = {
30
+ details?: Record<string, unknown>;
31
+ error?: string;
32
+ status?: MainStatusCode;
33
+ };
34
+ export declare function parseErrorResponsePayload({ payload, }: {
35
+ payload: unknown;
36
+ }): ErrorResponsePayload | null;
37
+ export declare function createFlyHttpError({ method, path, httpStatus, payload, }: {
38
+ method: 'GET' | 'POST' | 'PUT' | 'DELETE';
39
+ path: string;
40
+ httpStatus: number;
41
+ payload: unknown;
42
+ }): FlyClientError;
43
+ export declare function createFlyGraphQLError({ path, messages, }: {
44
+ path: string;
45
+ messages: string[];
46
+ }): FlyGraphQLError;
47
+ export {};
48
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAA;AAEhC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;;AAEhD,qBAAa,WAAY,SAAQ,gBAG/B;CAAG;;AAEL,qBAAa,kBAAmB,SAAQ,uBAGtC;CAAG;;AAEL,qBAAa,oBAAqB,SAAQ,yBAGxC;CAAG;;AAEL,qBAAa,gBAAiB,SAAQ,qBAGpC;CAAG;;AAEL,qBAAa,0BAA2B,SAAQ,+BAG9C;CAAG;;AAEL,qBAAa,2BAA4B,SAAQ,gCAG/C;CAAG;;AAEL,qBAAa,sBAAuB,SAAQ,2BAG1C;CAAG;;AAEL,qBAAa,eAAgB,SAAQ,oBAGnC;CAAG;AAEL,MAAM,MAAM,cAAc,GACtB,WAAW,GACX,kBAAkB,GAClB,oBAAoB,GACpB,gBAAgB,GAChB,0BAA0B,GAC1B,2BAA2B,GAC3B,sBAAsB,GACtB,eAAe,CAAA;AAEnB,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,cAAc,GAAG,CAAC,CAAA;AAE7C,KAAK,oBAAoB,GAAG;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,cAAc,CAAA;CACxB,CAAA;AAED,wBAAgB,yBAAyB,CAAC,EACxC,OAAO,GACR,EAAE;IACD,OAAO,EAAE,OAAO,CAAA;CACjB,GAAG,oBAAoB,GAAG,IAAI,CAU9B;AAED,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,IAAI,EACJ,UAAU,EACV,OAAO,GACR,EAAE;IACD,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAA;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;CACjB,GAAG,cAAc,CAuBjB;AAED,wBAAgB,qBAAqB,CAAC,EACpC,IAAI,EACJ,QAAQ,GACT,EAAE;IACD,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB,GAAG,eAAe,CAKlB"}
package/dist/errors.js ADDED
@@ -0,0 +1,85 @@
1
+ // Typed Fly API error classes and HTTP/GraphQL error mapping helpers.
2
+ import * as errore from 'errore';
3
+ export class FlyApiError extends errore.createTaggedError({
4
+ name: 'FlyApiError',
5
+ message: 'Fly API request failed for $method $path with status $httpStatus',
6
+ }) {
7
+ }
8
+ export class FlyBadRequestError extends errore.createTaggedError({
9
+ name: 'FlyBadRequestError',
10
+ message: 'Fly API returned 400 for $method $path',
11
+ }) {
12
+ }
13
+ export class FlyUnauthorizedError extends errore.createTaggedError({
14
+ name: 'FlyUnauthorizedError',
15
+ message: 'Fly API returned 401 for $method $path',
16
+ }) {
17
+ }
18
+ export class FlyNotFoundError extends errore.createTaggedError({
19
+ name: 'FlyNotFoundError',
20
+ message: 'Fly API returned 404 for $method $path',
21
+ }) {
22
+ }
23
+ export class FlyPreconditionFailedError extends errore.createTaggedError({
24
+ name: 'FlyPreconditionFailedError',
25
+ message: 'Fly API returned 412 for $method $path',
26
+ }) {
27
+ }
28
+ export class FlyUnprocessableEntityError extends errore.createTaggedError({
29
+ name: 'FlyUnprocessableEntityError',
30
+ message: 'Fly API returned 422 for $method $path',
31
+ }) {
32
+ }
33
+ export class FlyInternalServerError extends errore.createTaggedError({
34
+ name: 'FlyInternalServerError',
35
+ message: 'Fly API returned 500 for $method $path',
36
+ }) {
37
+ }
38
+ export class FlyGraphQLError extends errore.createTaggedError({
39
+ name: 'FlyGraphQLError',
40
+ message: 'Fly GraphQL request failed for $path: $messages',
41
+ }) {
42
+ }
43
+ export function parseErrorResponsePayload({ payload, }) {
44
+ if (!isObject(payload)) {
45
+ return null;
46
+ }
47
+ const details = isObject(payload.details) ? payload.details : undefined;
48
+ const error = typeof payload.error === 'string' ? payload.error : undefined;
49
+ const status = isMainStatusCode(payload.status) ? payload.status : undefined;
50
+ return { details, error, status };
51
+ }
52
+ export function createFlyHttpError({ method, path, httpStatus, payload, }) {
53
+ parseErrorResponsePayload({ payload });
54
+ if (httpStatus === 400) {
55
+ return new FlyBadRequestError({ method, path });
56
+ }
57
+ if (httpStatus === 401) {
58
+ return new FlyUnauthorizedError({ method, path });
59
+ }
60
+ if (httpStatus === 404) {
61
+ return new FlyNotFoundError({ method, path });
62
+ }
63
+ if (httpStatus === 412) {
64
+ return new FlyPreconditionFailedError({ method, path });
65
+ }
66
+ if (httpStatus === 422) {
67
+ return new FlyUnprocessableEntityError({ method, path });
68
+ }
69
+ if (httpStatus === 500) {
70
+ return new FlyInternalServerError({ method, path });
71
+ }
72
+ return new FlyApiError({ method, path, httpStatus });
73
+ }
74
+ export function createFlyGraphQLError({ path, messages, }) {
75
+ return new FlyGraphQLError({
76
+ path,
77
+ messages: messages.join('; '),
78
+ });
79
+ }
80
+ function isObject(value) {
81
+ return typeof value === 'object' && value !== null;
82
+ }
83
+ function isMainStatusCode(value) {
84
+ return value === 'unknown' || value === 'insufficient_capacity';
85
+ }
@@ -0,0 +1,28 @@
1
+ export { Client, FLY_API_GRAPHQL, FLY_API_HOSTNAME } from './client.ts';
2
+ export type { ClientConfig } from './client.ts';
3
+ export { FlyApiError, FlyBadRequestError, FlyUnauthorizedError, FlyNotFoundError, FlyPreconditionFailedError, FlyUnprocessableEntityError, FlyInternalServerError, FlyGraphQLError, } from './errors.ts';
4
+ export type { FlyClientError, FlyResult } from './errors.ts';
5
+ export { App, AppStatus } from './app.ts';
6
+ export type { ListAppRequest, ListAppResponse, ListAppsParams, GetAppRequest, AppOrganizationInfo, AppInfo, AppResponse, IPAddress, CreateAppRequest, DeleteAppRequest, ListCertificatesRequest, RequestAcmeCertificateRequest, RequestCustomCertificateRequest, CertificateRequest, CreateDeployTokenRequest, ListSecretKeysRequest, SecretKeyRequest, SetSecretKeyRequest, SecretKeyDecryptRequest, SecretKeyEncryptRequest, SecretKeySignRequest, SecretKeyVerifyRequest, ListSecretsRequest, UpdateSecretsRequest, SecretRequest, SetSecretRequest, AssignIPAddressRequest, DeleteIPAddressRequest, } from './app.ts';
7
+ export { Machine, MachineState, ConnectionHandler } from './machine.ts';
8
+ export type { MachineConfig, ListMachineRequest, CreateMachineRequest, MachineEvent, MachineResponse, GetMachineRequest, DeleteMachineRequest, RestartMachineRequest, SignalMachineRequest, StopMachineRequest, StartMachineRequest, UpdateMachineRequest, ListEventsRequest, ListVersionsRequest, ListProcessesRequest, ProcessResponse, WaitMachineRequest, WaitMachineStopRequest, MachineVersionResponse, GetLeaseRequest, LeaseResponse, AcquireLeaseRequest, ReleaseLeaseRequest, CordonMachineRequest, UncordonMachineRequest, ExecMachineRequest, ExecMachineResponse, GetMetadataRequest, UpdateMetadataRequest, GetMetadataPropertyRequest, SetMetadataPropertyRequest, DeleteMetadataPropertyRequest, MachineMemoryResponse, UpdateMemoryRequest, ReclaimMemoryMachineRequest, ReclaimMemoryResponse, ListOrgMachinesRequest, OrgMachinesResponse, ListEventsOptions, } from './machine.ts';
9
+ export { Network, AddressType } from './network.ts';
10
+ export type { AllocateIPAddressInput, AllocateIPAddressOutput, ReleaseIPAddressInput, ReleaseIPAddressOutput, } from './network.ts';
11
+ export { Organization } from './organization.ts';
12
+ export type { GetOrganizationInput, GetOrganizationOutput } from './organization.ts';
13
+ export { Regions } from './regions.ts';
14
+ export type { GetRegionsOutput, GetPlatformRegionsRequest } from './regions.ts';
15
+ export { Token } from './token.ts';
16
+ export type { RequestOIDCTokenRequest } from './token.ts';
17
+ export { Secret } from './secret.ts';
18
+ export type { SetSecretsInput, SetSecretsOutput, UnsetSecretsInput, UnsetSecretsOutput, } from './secret.ts';
19
+ export { Volume } from './volume.ts';
20
+ export type { ListVolumesRequest, CreateVolumeRequest, VolumeResponse, GetVolumeRequest, UpdateVolumeRequest, DeleteVolumeRequest, ExtendVolumeRequest, ExtendVolumeResponse, ListSnapshotsRequest, SnapshotResponse, } from './volume.ts';
21
+ export type * from './types.ts';
22
+ export declare function createClient(apiKey: string, config?: {
23
+ graphqlUrl?: string;
24
+ apiUrl?: string;
25
+ }): Client;
26
+ import { Client } from './client.ts';
27
+ export default Client;
28
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1,18 @@
1
+ // fly-admin — TypeScript client for Fly Machines REST and GraphQL APIs.
2
+ // Vendored fork of supabase/fly-admin. Uses native fetch, adds exec/releaseLease/metadata.
3
+ export { Client, FLY_API_GRAPHQL, FLY_API_HOSTNAME } from "./client.js";
4
+ export { FlyApiError, FlyBadRequestError, FlyUnauthorizedError, FlyNotFoundError, FlyPreconditionFailedError, FlyUnprocessableEntityError, FlyInternalServerError, FlyGraphQLError, } from "./errors.js";
5
+ export { App, AppStatus } from "./app.js";
6
+ export { Machine, MachineState, ConnectionHandler } from "./machine.js";
7
+ export { Network, AddressType } from "./network.js";
8
+ export { Organization } from "./organization.js";
9
+ export { Regions } from "./regions.js";
10
+ export { Token } from "./token.js";
11
+ export { Secret } from "./secret.js";
12
+ export { Volume } from "./volume.js";
13
+ export function createClient(apiKey, config) {
14
+ return new Client(apiKey, config);
15
+ }
16
+ // Re-export Client as default for backwards compat with supabase/fly-admin
17
+ import { Client } from "./client.js";
18
+ export default Client;
@@ -0,0 +1,319 @@
1
+ import { Client } from './client.ts';
2
+ import type { FlyResult } from './errors.ts';
3
+ import { ApiMachineConfig, ApiMachineInit, ApiMachineService, ApiMachineMount, ApiMachinePort, ApiMachineCheck, ApiMachineRestart, ApiMachineGuest, CheckStatus as ApiCheckStatus, CreateMachineRequest as ApiCreateMachineRequest, ImageRef as ApiImageRef, Machine as ApiMachine, StateEnum as ApiMachineState, SignalRequestSignalEnum as ApiMachineSignal, OrgMachine, OrgMachinesResponse as ApiOrgMachinesResponse, WaitMachineResponse as ApiWaitMachineResponse, MemoryResponse as ApiMemoryResponse, ReclaimMemoryResponse as ApiReclaimMemoryResponse, Lease as ApiLease, ApiDuration, MetadataValueResponse, UpdateMetadataRequestBody, UpsertMetadataKeyRequest } from './types.ts';
4
+ export interface MachineConfig extends ApiMachineConfig {
5
+ image: string;
6
+ schedule?: 'hourly' | 'daily' | 'weekly' | 'monthly';
7
+ }
8
+ export type ListMachineRequest = string | {
9
+ app_name: string;
10
+ include_deleted?: boolean;
11
+ region?: string;
12
+ state?: string;
13
+ summary?: boolean;
14
+ };
15
+ export interface CreateMachineRequest extends ApiCreateMachineRequest {
16
+ app_name: string;
17
+ config: MachineConfig;
18
+ }
19
+ interface BaseEvent {
20
+ id: string;
21
+ type: string;
22
+ status: string;
23
+ source: 'flyd' | 'user';
24
+ timestamp: number;
25
+ }
26
+ interface StartEvent extends BaseEvent {
27
+ type: 'start';
28
+ status: 'started' | 'starting';
29
+ }
30
+ interface LaunchEvent extends BaseEvent {
31
+ type: 'launch';
32
+ status: 'created';
33
+ source: 'user';
34
+ }
35
+ interface RestartEvent extends BaseEvent {
36
+ type: 'restart';
37
+ status: 'starting' | 'stopping';
38
+ source: 'flyd' | 'user';
39
+ }
40
+ interface ExitEvent extends BaseEvent {
41
+ type: 'exit';
42
+ status: 'stopped';
43
+ source: 'flyd';
44
+ request: {
45
+ exit_event: {
46
+ requested_stop: boolean;
47
+ restarting: boolean;
48
+ guest_exit_code: number;
49
+ guest_signal: number;
50
+ guest_error: string;
51
+ exit_code: number;
52
+ signal: number;
53
+ error: string;
54
+ oom_killed: boolean;
55
+ exited_at: string;
56
+ };
57
+ restart_count: number;
58
+ };
59
+ }
60
+ export type MachineEvent = LaunchEvent | StartEvent | RestartEvent | ExitEvent;
61
+ export declare enum MachineState {
62
+ Created = "created",
63
+ Starting = "starting",
64
+ Started = "started",
65
+ Stopping = "stopping",
66
+ Stopped = "stopped",
67
+ Suspended = "suspended",
68
+ Replacing = "replacing",
69
+ Destroying = "destroying",
70
+ Destroyed = "destroyed",
71
+ Failed = "failed"
72
+ }
73
+ interface MachineMount extends ApiMachineMount {
74
+ encrypted: boolean;
75
+ path: string;
76
+ size_gb: number;
77
+ volume: string;
78
+ name: string;
79
+ }
80
+ export declare enum ConnectionHandler {
81
+ TLS = "tls",
82
+ PG_TLS = "pg_tls",
83
+ HTTP = "http",
84
+ PROXY_PROTO = "proxy_proto"
85
+ }
86
+ interface MachinePort extends ApiMachinePort {
87
+ port: number;
88
+ handlers?: ConnectionHandler[];
89
+ }
90
+ interface MachineService extends ApiMachineService {
91
+ protocol: 'tcp' | 'udp';
92
+ internal_port: number;
93
+ ports: MachinePort[];
94
+ concurrency?: {
95
+ type: 'connections' | 'requests';
96
+ soft_limit: number;
97
+ hard_limit: number;
98
+ };
99
+ }
100
+ interface MachineCheck extends ApiMachineCheck {
101
+ type: 'tcp' | 'http';
102
+ port: number;
103
+ interval: string;
104
+ timeout: string;
105
+ }
106
+ interface MachineGuest extends ApiMachineGuest {
107
+ cpu_kind: 'shared' | 'performance';
108
+ cpus: number;
109
+ memory_mb: number;
110
+ }
111
+ interface CheckStatus extends ApiCheckStatus {
112
+ name: string;
113
+ status: 'passing' | 'warning' | 'critical';
114
+ output: string;
115
+ updated_at: string;
116
+ }
117
+ interface MachineImageRef extends Omit<ApiImageRef, 'labels'> {
118
+ registry: string;
119
+ repository: string;
120
+ tag: string;
121
+ digest: string;
122
+ labels: Record<string, string> | null;
123
+ }
124
+ export interface MachineResponse extends Omit<ApiMachine, 'image_ref'> {
125
+ id: string;
126
+ name: string;
127
+ state: MachineState;
128
+ region: string;
129
+ instance_id: string;
130
+ private_ip: string;
131
+ host_status?: 'ok' | 'unknown' | 'unreachable';
132
+ incomplete_config?: ApiMachineConfig;
133
+ nonce?: string;
134
+ config: {
135
+ env: Record<string, string>;
136
+ init: ApiMachineInit;
137
+ mounts: MachineMount[];
138
+ services: MachineService[];
139
+ checks: Record<string, MachineCheck>;
140
+ restart: ApiMachineRestart;
141
+ guest: MachineGuest;
142
+ size: 'shared-cpu-1x' | 'shared-cpu-2x' | 'shared-cpu-4x';
143
+ } & MachineConfig;
144
+ image_ref: MachineImageRef;
145
+ created_at: string;
146
+ updated_at: string;
147
+ events: MachineEvent[];
148
+ checks: CheckStatus[];
149
+ }
150
+ export interface GetMachineRequest {
151
+ app_name: string;
152
+ machine_id: string;
153
+ }
154
+ interface OkResponse {
155
+ ok: boolean;
156
+ }
157
+ export interface DeleteMachineRequest extends GetMachineRequest {
158
+ force?: boolean;
159
+ }
160
+ export interface RestartMachineRequest extends GetMachineRequest {
161
+ timeout?: string;
162
+ signal?: string;
163
+ }
164
+ export interface SignalMachineRequest extends GetMachineRequest {
165
+ signal: ApiMachineSignal;
166
+ }
167
+ export interface StopMachineRequest extends GetMachineRequest {
168
+ signal?: ApiMachineSignal;
169
+ timeout?: ApiDuration;
170
+ }
171
+ export type StartMachineRequest = GetMachineRequest;
172
+ export interface UpdateMachineRequest extends GetMachineRequest {
173
+ config: MachineConfig;
174
+ }
175
+ export type ListEventsRequest = GetMachineRequest;
176
+ export type ListVersionsRequest = GetMachineRequest;
177
+ export interface ListProcessesRequest extends GetMachineRequest {
178
+ sort_by?: string;
179
+ order?: string;
180
+ }
181
+ export interface ProcessResponse {
182
+ command: string;
183
+ cpu: number;
184
+ directory: string;
185
+ listen_sockets: {
186
+ address: string;
187
+ proto: string;
188
+ }[];
189
+ pid: number;
190
+ rss: number;
191
+ rtime: number;
192
+ stime: number;
193
+ }
194
+ export interface WaitMachineRequest extends GetMachineRequest {
195
+ instance_id?: string;
196
+ timeout?: number;
197
+ state?: ApiMachineState;
198
+ version?: string;
199
+ from_event_id?: string;
200
+ }
201
+ export interface WaitMachineStopRequest extends WaitMachineRequest {
202
+ instance_id: string;
203
+ state?: typeof ApiMachineState.Stopped | typeof ApiMachineState.Suspended;
204
+ }
205
+ export interface MachineVersionResponse {
206
+ user_config: MachineResponse;
207
+ version: string;
208
+ }
209
+ export type GetLeaseRequest = GetMachineRequest;
210
+ export interface LeaseResponse extends ApiLease {
211
+ description: string;
212
+ expires_at: number;
213
+ nonce: string;
214
+ owner: string;
215
+ version?: string;
216
+ }
217
+ export interface AcquireLeaseRequest extends GetLeaseRequest {
218
+ description?: string;
219
+ ttl?: number;
220
+ }
221
+ export interface ReleaseLeaseRequest extends GetLeaseRequest {
222
+ nonce: string;
223
+ }
224
+ export type CordonMachineRequest = GetMachineRequest;
225
+ export type UncordonMachineRequest = GetMachineRequest;
226
+ export interface ExecMachineRequest extends GetMachineRequest {
227
+ command: string[];
228
+ stdin?: string;
229
+ timeout?: number;
230
+ container?: string;
231
+ }
232
+ export interface ExecMachineResponse {
233
+ exit_code: number;
234
+ exit_signal: number;
235
+ stderr: string;
236
+ stdout: string;
237
+ }
238
+ export type GetMetadataRequest = GetMachineRequest;
239
+ export interface UpdateMetadataRequest extends GetMachineRequest {
240
+ request: UpdateMetadataRequestBody;
241
+ }
242
+ export interface GetMetadataPropertyRequest extends GetMachineRequest {
243
+ key: string;
244
+ }
245
+ export interface SetMetadataPropertyRequest extends GetMachineRequest {
246
+ key: string;
247
+ request: UpsertMetadataKeyRequest;
248
+ }
249
+ export interface DeleteMetadataPropertyRequest extends GetMachineRequest {
250
+ key: string;
251
+ }
252
+ export interface MachineMemoryResponse extends ApiMemoryResponse {
253
+ available_mb: number;
254
+ limit_mb: number;
255
+ }
256
+ export interface UpdateMemoryRequest extends GetMachineRequest {
257
+ limit_mb: number;
258
+ }
259
+ export interface ReclaimMemoryMachineRequest extends GetMachineRequest {
260
+ amount_mb?: number;
261
+ }
262
+ export interface ReclaimMemoryResponse extends ApiReclaimMemoryResponse {
263
+ actual_mb: number;
264
+ }
265
+ export interface ListOrgMachinesRequest {
266
+ org_slug: string;
267
+ include_deleted?: boolean;
268
+ region?: string;
269
+ state?: string;
270
+ updated_after?: string;
271
+ cursor?: string;
272
+ limit?: number;
273
+ }
274
+ export interface OrgMachinesResponse extends ApiOrgMachinesResponse {
275
+ machines: OrgMachine[];
276
+ last_machine_id?: string;
277
+ last_updated_at?: string;
278
+ next_cursor?: string;
279
+ }
280
+ export interface ListEventsOptions extends GetMachineRequest {
281
+ limit?: number;
282
+ }
283
+ export declare class Machine {
284
+ private client;
285
+ constructor(client: Client);
286
+ listMachines(app_name: ListMachineRequest): Promise<FlyResult<MachineResponse[]>>;
287
+ getMachine(payload: GetMachineRequest): Promise<FlyResult<MachineResponse>>;
288
+ createMachine(payload: CreateMachineRequest): Promise<FlyResult<MachineResponse>>;
289
+ updateMachine(payload: UpdateMachineRequest): Promise<FlyResult<MachineResponse>>;
290
+ deleteMachine(payload: DeleteMachineRequest): Promise<FlyResult<OkResponse>>;
291
+ startMachine(payload: StartMachineRequest): Promise<FlyResult<OkResponse>>;
292
+ stopMachine(payload: StopMachineRequest): Promise<FlyResult<OkResponse>>;
293
+ restartMachine(payload: RestartMachineRequest): Promise<FlyResult<OkResponse>>;
294
+ signalMachine(payload: SignalMachineRequest): Promise<FlyResult<OkResponse>>;
295
+ suspendMachine(payload: GetMachineRequest): Promise<FlyResult<OkResponse>>;
296
+ getMemory(payload: GetMachineRequest): Promise<FlyResult<MachineMemoryResponse>>;
297
+ setMemoryLimit(payload: UpdateMemoryRequest): Promise<FlyResult<MachineMemoryResponse>>;
298
+ /** @deprecated use setMemoryLimit instead */
299
+ updateMemory(payload: UpdateMemoryRequest): Promise<FlyResult<MachineMemoryResponse>>;
300
+ reclaimMemory(payload: ReclaimMemoryMachineRequest): Promise<FlyResult<ReclaimMemoryResponse>>;
301
+ listEvents(payload: ListEventsOptions): Promise<FlyResult<MachineResponse['events']>>;
302
+ listVersions(payload: ListVersionsRequest): Promise<FlyResult<MachineVersionResponse[]>>;
303
+ listProcesses(payload: ListProcessesRequest): Promise<FlyResult<ProcessResponse[]>>;
304
+ waitMachine(payload: WaitMachineRequest): Promise<FlyResult<ApiWaitMachineResponse>>;
305
+ cordonMachine(payload: CordonMachineRequest): Promise<FlyResult<OkResponse>>;
306
+ uncordonMachine(payload: UncordonMachineRequest): Promise<FlyResult<OkResponse>>;
307
+ getLease(payload: GetLeaseRequest): Promise<FlyResult<LeaseResponse>>;
308
+ acquireLease(payload: AcquireLeaseRequest): Promise<FlyResult<LeaseResponse>>;
309
+ releaseLease(payload: ReleaseLeaseRequest): Promise<FlyResult<void>>;
310
+ execMachine(payload: ExecMachineRequest): Promise<FlyResult<ExecMachineResponse>>;
311
+ getMetadata(payload: GetMetadataRequest): Promise<FlyResult<Record<string, string>>>;
312
+ updateMetadata(payload: UpdateMetadataRequest): Promise<FlyResult<void>>;
313
+ getMetadataProperty(payload: GetMetadataPropertyRequest): Promise<FlyResult<MetadataValueResponse>>;
314
+ setMetadataProperty(payload: SetMetadataPropertyRequest): Promise<FlyResult<void>>;
315
+ deleteMetadataProperty(payload: DeleteMetadataPropertyRequest): Promise<FlyResult<void>>;
316
+ listOrgMachines(payload: ListOrgMachinesRequest): Promise<FlyResult<OrgMachinesResponse>>;
317
+ }
318
+ export {};
319
+ //# sourceMappingURL=machine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"machine.d.ts","sourceRoot":"","sources":["../src/machine.ts"],"names":[],"mappings":"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"}