@astrale-domains/services 0.4.8 → 0.5.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.
- package/README.md +153 -816
- package/dist/schema/index.d.ts +4 -5
- package/dist/schema/index.js +2 -3
- package/dist/schema/modules/deployment/classes/cloudflare-deployment.d.ts +4 -321
- package/dist/schema/modules/deployment/classes/cloudflare-deployment.js +1 -19
- package/dist/schema/modules/deployment/classes/current-deployment.d.ts +20 -0
- package/dist/schema/modules/deployment/classes/current-deployment.js +13 -0
- package/dist/schema/modules/deployment/classes/{deployment-on-line.d.ts → deployment-of.d.ts} +3 -3
- package/dist/schema/modules/deployment/classes/deployment-of.js +11 -0
- package/dist/schema/modules/deployment/classes/deployment.d.ts +9 -57
- package/dist/schema/modules/deployment/classes/deployment.js +9 -23
- package/dist/schema/modules/deployment/classes/index.d.ts +2 -3
- package/dist/schema/modules/deployment/classes/index.js +2 -3
- package/dist/schema/modules/deployment/errors/deployment-not-found.d.ts +2 -5
- package/dist/schema/modules/deployment/errors/deployment-not-found.js +2 -5
- package/dist/schema/modules/deployment/errors/index.d.ts +0 -2
- package/dist/schema/modules/deployment/errors/index.js +0 -2
- package/dist/schema/modules/deployment/functions/index.d.ts +0 -10
- package/dist/schema/modules/deployment/functions/index.js +0 -10
- package/dist/schema/modules/deployment/functions/retire-deployment.d.ts +8 -7
- package/dist/schema/modules/deployment/functions/retire-deployment.js +8 -7
- package/dist/schema/modules/deployment/index.d.ts +6 -6
- package/dist/schema/modules/deployment/index.js +7 -5
- package/dist/schema/modules/deployment/policies/index.d.ts +1 -4
- package/dist/schema/modules/deployment/policies/index.js +1 -4
- package/dist/schema/modules/deployment/policies/own-deployment.d.ts +1 -1
- package/dist/schema/modules/deployment/policies/own-deployment.js +6 -7
- package/dist/schema/modules/deployment/policies/traverse-owned-service-deployment.d.ts +2 -0
- package/dist/schema/modules/deployment/policies/traverse-owned-service-deployment.js +7 -0
- package/dist/schema/modules/deployment/states/deployment-lifecycle.d.ts +6 -9
- package/dist/schema/modules/deployment/states/deployment-lifecycle.js +6 -7
- package/dist/schema/modules/deployment/types/deployment-hosting.d.ts +9 -28
- package/dist/schema/modules/deployment/types/deployment-hosting.js +3 -3
- package/dist/schema/modules/deployment/types/deployment-request.d.ts +12 -40
- package/dist/schema/modules/deployment/types/deployment-request.js +17 -9
- package/dist/schema/modules/deployment/types/deployment-response.d.ts +7 -15
- package/dist/schema/modules/deployment/types/deployment-response.js +2 -2
- package/dist/schema/modules/deployment/types/deployment-retire.d.ts +1 -1
- package/dist/schema/modules/deployment/types/deployment-secret.d.ts +0 -39
- package/dist/schema/modules/deployment/types/deployment-secret.js +0 -34
- package/dist/schema/modules/deployment/types/deployment-summary.d.ts +14 -45
- package/dist/schema/modules/deployment/types/deployment-summary.js +9 -8
- package/dist/schema/modules/deployment/types/index.d.ts +7 -3
- package/dist/schema/modules/deployment/types/index.js +4 -2
- package/dist/schema/modules/{service → deployment}/types/service-deployment-artifact-module.d.ts +2 -20
- package/dist/schema/modules/deployment/types/service-deployment-artifact-module.js +10 -0
- package/dist/schema/modules/{service → deployment}/types/service-deployment-assets.d.ts +4 -20
- package/dist/schema/modules/{service → deployment}/types/service-deployment-assets.js +4 -7
- package/dist/schema/modules/service/classes/cloudflare-service.d.ts +321 -0
- package/dist/schema/modules/service/classes/cloudflare-service.js +35 -0
- package/dist/schema/modules/service/classes/index.d.ts +1 -1
- package/dist/schema/modules/service/classes/index.js +1 -1
- package/dist/schema/modules/service/classes/service.d.ts +18 -107
- package/dist/schema/modules/service/classes/service.js +16 -27
- package/dist/schema/modules/service/errors/index.d.ts +1 -0
- package/dist/schema/modules/service/errors/index.js +1 -0
- package/dist/schema/modules/service/errors/service-not-found.d.ts +7 -0
- package/dist/schema/modules/service/errors/service-not-found.js +8 -0
- package/dist/schema/modules/service/functions/delete-service.d.ts +1 -1
- package/dist/schema/modules/service/functions/delete-service.js +1 -1
- package/dist/schema/modules/{deployment/functions/deploy-cloudflare-deployment.d.ts → service/functions/deploy-service.d.ts} +20 -35
- package/dist/schema/modules/service/functions/deploy-service.js +15 -0
- package/dist/schema/modules/service/functions/describe-hosting.d.ts +8 -0
- package/dist/schema/modules/service/functions/describe-hosting.js +11 -0
- package/dist/schema/modules/service/functions/index.d.ts +5 -10
- package/dist/schema/modules/service/functions/index.js +5 -10
- package/dist/schema/modules/{deployment/functions/list-cloudflare-deployments.d.ts → service/functions/list-service-deployments.d.ts} +8 -12
- package/dist/schema/modules/service/functions/list-service-deployments.js +10 -0
- package/dist/schema/modules/service/functions/list-service-logs.d.ts +2 -1
- package/dist/schema/modules/service/functions/list-service-logs.js +1 -1
- package/dist/schema/modules/service/functions/list-service-schedules.d.ts +1 -1
- package/dist/schema/modules/service/functions/list-service-schedules.js +1 -1
- package/dist/schema/modules/service/functions/list-service-secret-names.d.ts +1 -1
- package/dist/schema/modules/service/functions/list-service-secret-names.js +1 -1
- package/dist/schema/modules/service/functions/promote-service.d.ts +14 -0
- package/dist/schema/modules/service/functions/promote-service.js +4 -0
- package/dist/schema/modules/service/functions/replace-service-schedules.d.ts +1 -1
- package/dist/schema/modules/service/functions/replace-service-schedules.js +1 -4
- package/dist/schema/modules/service/functions/set-service-secret.d.ts +4 -2
- package/dist/schema/modules/service/functions/set-service-secret.js +1 -1
- package/dist/schema/modules/service/functions/transfer-service.d.ts +14 -0
- package/dist/schema/modules/service/functions/transfer-service.js +4 -0
- package/dist/schema/modules/service/index.d.ts +5 -5
- package/dist/schema/modules/service/index.js +5 -4
- package/dist/schema/modules/service/policies/act-as.d.ts +6 -0
- package/dist/schema/modules/service/policies/act-as.js +10 -0
- package/dist/schema/modules/service/policies/index.d.ts +1 -0
- package/dist/schema/modules/service/policies/index.js +1 -0
- package/dist/schema/modules/service/states/service-lifecycle.d.ts +7 -20
- package/dist/schema/modules/service/states/service-lifecycle.js +6 -21
- package/dist/schema/modules/service/types/index.d.ts +1 -13
- package/dist/schema/modules/service/types/index.js +1 -8
- package/dist/schema/modules/service/types/service-management.d.ts +65 -24
- package/dist/schema/modules/service/types/service-management.js +46 -21
- package/dist/schema/schema.d.ts +252 -758
- package/dist/schema/schema.js +7 -11
- package/package.json +4 -11
- package/dist/scaffold/create-service.mjs +0 -77
- package/dist/scaffold/template/.env.example +0 -2
- package/dist/scaffold/template/README.md +0 -37
- package/dist/scaffold/template/gitignore +0 -6
- package/dist/scaffold/template/scripts/build.mjs +0 -10
- package/dist/scaffold/template/scripts/deploy.mjs +0 -50
- package/dist/scaffold/template/src/account.js +0 -26
- package/dist/scaffold/template/src/index.js +0 -32
- package/dist/scaffold/template/src/job.js +0 -19
- package/dist/schema/modules/deployment/classes/deployment-line.d.ts +0 -23
- package/dist/schema/modules/deployment/classes/deployment-line.js +0 -24
- package/dist/schema/modules/deployment/classes/deployment-on-line.js +0 -11
- package/dist/schema/modules/deployment/classes/line-owned-by.d.ts +0 -26
- package/dist/schema/modules/deployment/classes/line-owned-by.js +0 -19
- package/dist/schema/modules/deployment/errors/deployment-label-not-found.d.ts +0 -12
- package/dist/schema/modules/deployment/errors/deployment-label-not-found.js +0 -11
- package/dist/schema/modules/deployment/errors/deployment-registry-only.d.ts +0 -11
- package/dist/schema/modules/deployment/errors/deployment-registry-only.js +0 -12
- package/dist/schema/modules/deployment/functions/deploy-cloudflare-deployment.js +0 -14
- package/dist/schema/modules/deployment/functions/describe-deployment-hosting.d.ts +0 -8
- package/dist/schema/modules/deployment/functions/describe-deployment-hosting.js +0 -11
- package/dist/schema/modules/deployment/functions/expire-deployment-previews.d.ts +0 -16
- package/dist/schema/modules/deployment/functions/expire-deployment-previews.js +0 -14
- package/dist/schema/modules/deployment/functions/list-cloudflare-deployment-secret-names.d.ts +0 -5
- package/dist/schema/modules/deployment/functions/list-cloudflare-deployment-secret-names.js +0 -4
- package/dist/schema/modules/deployment/functions/list-cloudflare-deployments.js +0 -10
- package/dist/schema/modules/deployment/functions/list-deployment-secret-names.d.ts +0 -4
- package/dist/schema/modules/deployment/functions/list-deployment-secret-names.js +0 -6
- package/dist/schema/modules/deployment/functions/read-deployment-last-calls.d.ts +0 -10
- package/dist/schema/modules/deployment/functions/read-deployment-last-calls.js +0 -13
- package/dist/schema/modules/deployment/functions/retain-deployment.d.ts +0 -12
- package/dist/schema/modules/deployment/functions/retain-deployment.js +0 -13
- package/dist/schema/modules/deployment/functions/set-cloudflare-deployment-secret.d.ts +0 -18
- package/dist/schema/modules/deployment/functions/set-cloudflare-deployment-secret.js +0 -7
- package/dist/schema/modules/deployment/functions/set-deployment-secret.d.ts +0 -14
- package/dist/schema/modules/deployment/functions/set-deployment-secret.js +0 -3
- package/dist/schema/modules/deployment/policies/act-for-organization.d.ts +0 -6
- package/dist/schema/modules/deployment/policies/act-for-organization.js +0 -10
- package/dist/schema/modules/deployment/policies/own-line.d.ts +0 -5
- package/dist/schema/modules/deployment/policies/own-line.js +0 -10
- package/dist/schema/modules/deployment/policies/traverse-owned-line-deployment.d.ts +0 -2
- package/dist/schema/modules/deployment/policies/traverse-owned-line-deployment.js +0 -7
- package/dist/schema/modules/deployment/policies/traverse-owned-line.d.ts +0 -2
- package/dist/schema/modules/deployment/policies/traverse-owned-line.js +0 -7
- package/dist/schema/modules/deployment/types/deployment-retention.d.ts +0 -49
- package/dist/schema/modules/deployment/types/deployment-retention.js +0 -45
- package/dist/schema/modules/service/classes/cloudflare-worker.d.ts +0 -352
- package/dist/schema/modules/service/classes/cloudflare-worker.js +0 -41
- package/dist/schema/modules/service/functions/delete-service-secret.d.ts +0 -11
- package/dist/schema/modules/service/functions/delete-service-secret.js +0 -3
- package/dist/schema/modules/service/functions/delete-worker-secret.d.ts +0 -11
- package/dist/schema/modules/service/functions/delete-worker-secret.js +0 -7
- package/dist/schema/modules/service/functions/delete-worker.d.ts +0 -9
- package/dist/schema/modules/service/functions/delete-worker.js +0 -7
- package/dist/schema/modules/service/functions/deploy-cloudflare-worker.d.ts +0 -109
- package/dist/schema/modules/service/functions/deploy-cloudflare-worker.js +0 -9
- package/dist/schema/modules/service/functions/list-worker-logs.d.ts +0 -12
- package/dist/schema/modules/service/functions/list-worker-logs.js +0 -7
- package/dist/schema/modules/service/functions/list-worker-schedules.d.ts +0 -4
- package/dist/schema/modules/service/functions/list-worker-schedules.js +0 -7
- package/dist/schema/modules/service/functions/list-worker-secret-names.d.ts +0 -4
- package/dist/schema/modules/service/functions/list-worker-secret-names.js +0 -7
- package/dist/schema/modules/service/functions/migrate-worker-ingress.d.ts +0 -24
- package/dist/schema/modules/service/functions/migrate-worker-ingress.js +0 -26
- package/dist/schema/modules/service/functions/replace-worker-schedules.d.ts +0 -11
- package/dist/schema/modules/service/functions/replace-worker-schedules.js +0 -7
- package/dist/schema/modules/service/functions/set-worker-secret.d.ts +0 -12
- package/dist/schema/modules/service/functions/set-worker-secret.js +0 -7
- package/dist/schema/modules/service/types/deploy-cloudflare-worker.d.ts +0 -286
- package/dist/schema/modules/service/types/deploy-cloudflare-worker.js +0 -51
- package/dist/schema/modules/service/types/legacy/service-deployment-content.js +0 -22
- package/dist/schema/modules/service/types/service-deployment-artifact-module.js +0 -13
- package/dist/schema/modules/service/types/service-deployment-resource-limits.d.ts +0 -6
- package/dist/schema/modules/service/types/service-deployment-resource-limits.js +0 -7
- package/dist/schema/modules/service/types/service-readiness.d.ts +0 -6
- package/dist/schema/modules/service/types/service-readiness.js +0 -6
- package/dist/schema/modules/service/types/service-secret-operation-rejection.d.ts +0 -9
- package/dist/schema/modules/service/types/service-secret-operation-rejection.js +0 -5
- /package/dist/schema/modules/{service → deployment}/types/content/index.d.ts +0 -0
- /package/dist/schema/modules/{service → deployment}/types/content/index.js +0 -0
- /package/dist/schema/modules/{service → deployment}/types/content/limits.d.ts +0 -0
- /package/dist/schema/modules/{service → deployment}/types/content/limits.js +0 -0
- /package/dist/schema/modules/{service → deployment}/types/service-deployment-content.d.ts +0 -0
- /package/dist/schema/modules/{service → deployment}/types/service-deployment-content.js +0 -0
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Host one release as an immutable deployment
|
|
3
|
-
*
|
|
2
|
+
* Host one release as an immutable deployment of the Service of its origin and environment,
|
|
3
|
+
* creating that Service on its first deploy, and by default make it the one the Service serves.
|
|
4
|
+
* Any authenticated identity may ask; the handler proves that the caller owns the Service, or for
|
|
5
|
+
* a new one that it is or acts as the owner it names, before any write.
|
|
4
6
|
*/
|
|
5
|
-
export declare const
|
|
7
|
+
export declare const deployService: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
6
8
|
format: "astrale.services.deployment-request";
|
|
7
9
|
version: 1;
|
|
8
|
-
|
|
10
|
+
owner?: string | undefined;
|
|
9
11
|
origin: string;
|
|
10
12
|
environment: string;
|
|
11
|
-
addressing: "opaque"
|
|
13
|
+
addressing: "opaque";
|
|
12
14
|
label: string;
|
|
13
15
|
buildDigest: string;
|
|
14
16
|
configuration: {
|
|
@@ -67,7 +69,7 @@ export declare const deployCloudflareDeployment: import("@astrale-os/sdk/schema"
|
|
|
67
69
|
};
|
|
68
70
|
bundle: {
|
|
69
71
|
entrypoint: string;
|
|
70
|
-
modules:
|
|
72
|
+
modules: {
|
|
71
73
|
name: string;
|
|
72
74
|
kind?: "data" | "esm" | "text" | "wasm" | undefined;
|
|
73
75
|
content: {
|
|
@@ -79,17 +81,9 @@ export declare const deployCloudflareDeployment: import("@astrale-os/sdk/schema"
|
|
|
79
81
|
decodedSize: number;
|
|
80
82
|
contentBase64Chunks: string[];
|
|
81
83
|
};
|
|
82
|
-
}
|
|
83
|
-
contentBase64: string;
|
|
84
|
-
name: string;
|
|
85
|
-
kind?: "data" | "esm" | "text" | "wasm" | undefined;
|
|
86
|
-
} | {
|
|
87
|
-
contentBase64Chunks: string[];
|
|
88
|
-
name: string;
|
|
89
|
-
kind?: "data" | "esm" | "text" | "wasm" | undefined;
|
|
90
|
-
})[];
|
|
84
|
+
}[];
|
|
91
85
|
assets?: {
|
|
92
|
-
files:
|
|
86
|
+
files: {
|
|
93
87
|
path: string;
|
|
94
88
|
contentType?: string | undefined;
|
|
95
89
|
content: {
|
|
@@ -101,27 +95,25 @@ export declare const deployCloudflareDeployment: import("@astrale-os/sdk/schema"
|
|
|
101
95
|
decodedSize: number;
|
|
102
96
|
contentBase64Chunks: string[];
|
|
103
97
|
};
|
|
104
|
-
}
|
|
105
|
-
contentBase64: string;
|
|
106
|
-
path: string;
|
|
107
|
-
contentType?: string | undefined;
|
|
108
|
-
} | {
|
|
109
|
-
contentBase64Chunks: string[];
|
|
110
|
-
path: string;
|
|
111
|
-
contentType?: string | undefined;
|
|
112
|
-
})[];
|
|
98
|
+
}[];
|
|
113
99
|
notFound?: "404-page" | "none" | "single-page-application" | undefined;
|
|
114
100
|
runWorkerFirst?: boolean | undefined;
|
|
115
101
|
htmlHandling?: "none" | undefined;
|
|
116
102
|
} | undefined;
|
|
117
103
|
};
|
|
118
104
|
secrets: Record<string, string>;
|
|
105
|
+
promote?: boolean | undefined;
|
|
119
106
|
readiness?: {
|
|
120
107
|
paths: string[];
|
|
121
108
|
} | undefined;
|
|
122
109
|
}, {
|
|
123
110
|
readonly mode: 'value';
|
|
124
111
|
readonly value: {
|
|
112
|
+
kind: "rejected";
|
|
113
|
+
reason: "address-mismatch" | "build-mismatch" | "deployment-conflict" | "deployment-retired" | "hosting-unavailable" | "invalid-deployment" | "service-owned-elsewhere" | "service-unavailable";
|
|
114
|
+
message: string;
|
|
115
|
+
retryAfter?: string | undefined;
|
|
116
|
+
} | {
|
|
125
117
|
kind: "deployed";
|
|
126
118
|
state: "created" | "reused";
|
|
127
119
|
secrets: {
|
|
@@ -131,15 +123,13 @@ export declare const deployCloudflareDeployment: import("@astrale-os/sdk/schema"
|
|
|
131
123
|
id: string;
|
|
132
124
|
url: string;
|
|
133
125
|
label: string;
|
|
134
|
-
|
|
126
|
+
serviceId: string;
|
|
127
|
+
service: string;
|
|
135
128
|
owner: string;
|
|
136
129
|
state: "active" | "deploying" | "failed" | "retired" | "retiring";
|
|
137
|
-
|
|
130
|
+
current: boolean;
|
|
138
131
|
createdAt: string;
|
|
139
|
-
lastCallAt?: string | undefined;
|
|
140
|
-
expiresAt?: string | undefined;
|
|
141
132
|
retiredAt?: string | undefined;
|
|
142
|
-
retirement?: "expired" | "withdrawn" | undefined;
|
|
143
133
|
signingKeyId: string;
|
|
144
134
|
record: {
|
|
145
135
|
format: "astrale.deployment-record";
|
|
@@ -161,10 +151,5 @@ export declare const deployCloudflareDeployment: import("@astrale-os/sdk/schema"
|
|
|
161
151
|
} | null;
|
|
162
152
|
};
|
|
163
153
|
};
|
|
164
|
-
} | {
|
|
165
|
-
kind: "rejected";
|
|
166
|
-
reason: "address-mismatch" | "build-mismatch" | "deployment-conflict" | "deployment-retired" | "hosting-unavailable" | "invalid-deployment" | "line-owned-elsewhere" | "service-unavailable";
|
|
167
|
-
message: string;
|
|
168
|
-
retryAfter?: string | undefined;
|
|
169
154
|
};
|
|
170
155
|
}, "authenticated", true, false, undefined>>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { method } from '@astrale-os/sdk/schema';
|
|
2
|
+
import { deploymentRequest, deploymentResponse } from '../../deployment/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* Host one release as an immutable deployment of the Service of its origin and environment,
|
|
5
|
+
* creating that Service on its first deploy, and by default make it the one the Service serves.
|
|
6
|
+
* Any authenticated identity may ask; the handler proves that the caller owns the Service, or for
|
|
7
|
+
* a new one that it is or acts as the owner it names, before any write.
|
|
8
|
+
*/
|
|
9
|
+
export const deployService = method({
|
|
10
|
+
description: 'Host one release as an immutable deployment of its Service.',
|
|
11
|
+
auth: 'authenticated',
|
|
12
|
+
static: true,
|
|
13
|
+
input: deploymentRequest,
|
|
14
|
+
output: deploymentResponse,
|
|
15
|
+
});
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Where this Services runtime addresses Services and their deployments. */
|
|
2
|
+
export declare const describeHosting: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<Record<string, never>, {
|
|
3
|
+
readonly mode: 'value';
|
|
4
|
+
readonly value: {
|
|
5
|
+
routingDomain: string;
|
|
6
|
+
addressing: "opaque";
|
|
7
|
+
};
|
|
8
|
+
}, "authenticated", true, false, undefined>>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { method } from '@astrale-os/sdk/schema';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { deploymentHosting } from '../../deployment/index.js';
|
|
4
|
+
/** Where this Services runtime addresses Services and their deployments. */
|
|
5
|
+
export const describeHosting = method({
|
|
6
|
+
description: 'Describe where this Services runtime addresses Services and deployments.',
|
|
7
|
+
auth: 'authenticated',
|
|
8
|
+
static: true,
|
|
9
|
+
input: z.strictObject({}),
|
|
10
|
+
output: deploymentHosting,
|
|
11
|
+
});
|
|
@@ -1,16 +1,11 @@
|
|
|
1
|
-
export { migrateWorkerIngress } from './migrate-worker-ingress.js';
|
|
2
|
-
export { deleteServiceSecret } from './delete-service-secret.js';
|
|
3
1
|
export { deleteService } from './delete-service.js';
|
|
4
|
-
export {
|
|
2
|
+
export { deployService } from './deploy-service.js';
|
|
3
|
+
export { describeHosting } from './describe-hosting.js';
|
|
4
|
+
export { listServiceDeployments } from './list-service-deployments.js';
|
|
5
5
|
export { listServiceLogs } from './list-service-logs.js';
|
|
6
6
|
export { listServiceSchedules } from './list-service-schedules.js';
|
|
7
7
|
export { listServiceSecretNames } from './list-service-secret-names.js';
|
|
8
|
+
export { promoteService } from './promote-service.js';
|
|
8
9
|
export { replaceServiceSchedules } from './replace-service-schedules.js';
|
|
9
10
|
export { setServiceSecret } from './set-service-secret.js';
|
|
10
|
-
export {
|
|
11
|
-
export { deleteWorker } from './delete-worker.js';
|
|
12
|
-
export { listWorkerLogs } from './list-worker-logs.js';
|
|
13
|
-
export { listWorkerSchedules } from './list-worker-schedules.js';
|
|
14
|
-
export { listWorkerSecretNames } from './list-worker-secret-names.js';
|
|
15
|
-
export { replaceWorkerSchedules } from './replace-worker-schedules.js';
|
|
16
|
-
export { setWorkerSecret } from './set-worker-secret.js';
|
|
11
|
+
export { transferService } from './transfer-service.js';
|
|
@@ -1,16 +1,11 @@
|
|
|
1
|
-
export { migrateWorkerIngress } from './migrate-worker-ingress.js';
|
|
2
|
-
export { deleteServiceSecret } from './delete-service-secret.js';
|
|
3
1
|
export { deleteService } from './delete-service.js';
|
|
4
|
-
export {
|
|
2
|
+
export { deployService } from './deploy-service.js';
|
|
3
|
+
export { describeHosting } from './describe-hosting.js';
|
|
4
|
+
export { listServiceDeployments } from './list-service-deployments.js';
|
|
5
5
|
export { listServiceLogs } from './list-service-logs.js';
|
|
6
6
|
export { listServiceSchedules } from './list-service-schedules.js';
|
|
7
7
|
export { listServiceSecretNames } from './list-service-secret-names.js';
|
|
8
|
+
export { promoteService } from './promote-service.js';
|
|
8
9
|
export { replaceServiceSchedules } from './replace-service-schedules.js';
|
|
9
10
|
export { setServiceSecret } from './set-service-secret.js';
|
|
10
|
-
export {
|
|
11
|
-
export { deleteWorker } from './delete-worker.js';
|
|
12
|
-
export { listWorkerLogs } from './list-worker-logs.js';
|
|
13
|
-
export { listWorkerSchedules } from './list-worker-schedules.js';
|
|
14
|
-
export { listWorkerSecretNames } from './list-worker-secret-names.js';
|
|
15
|
-
export { replaceWorkerSchedules } from './replace-worker-schedules.js';
|
|
16
|
-
export { setWorkerSecret } from './set-worker-secret.js';
|
|
11
|
+
export { transferService } from './transfer-service.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/** The deployments of the
|
|
2
|
-
export declare const
|
|
1
|
+
/** The deployments of the Services the caller owns, or acts as the owner of. */
|
|
2
|
+
export declare const listServiceDeployments: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
3
3
|
origin?: string | undefined;
|
|
4
4
|
environment?: string | undefined;
|
|
5
5
|
}, {
|
|
@@ -9,15 +9,13 @@ export declare const listCloudflareDeployments: import("@astrale-os/sdk/schema")
|
|
|
9
9
|
id: string;
|
|
10
10
|
url: string;
|
|
11
11
|
label: string;
|
|
12
|
-
|
|
12
|
+
serviceId: string;
|
|
13
|
+
service: string;
|
|
13
14
|
owner: string;
|
|
14
15
|
state: "active" | "deploying" | "failed" | "retired" | "retiring";
|
|
15
|
-
|
|
16
|
+
current: boolean;
|
|
16
17
|
createdAt: string;
|
|
17
|
-
lastCallAt?: string | undefined;
|
|
18
|
-
expiresAt?: string | undefined;
|
|
19
18
|
retiredAt?: string | undefined;
|
|
20
|
-
retirement?: "expired" | "withdrawn" | undefined;
|
|
21
19
|
signingKeyId: string;
|
|
22
20
|
record: {
|
|
23
21
|
format: "astrale.deployment-record";
|
|
@@ -42,15 +40,13 @@ export declare const listCloudflareDeployments: import("@astrale-os/sdk/schema")
|
|
|
42
40
|
id: string;
|
|
43
41
|
url: string;
|
|
44
42
|
label: string;
|
|
45
|
-
|
|
43
|
+
serviceId: string;
|
|
44
|
+
service: string;
|
|
46
45
|
owner: string;
|
|
47
46
|
state: "active" | "deploying" | "failed" | "retired" | "retiring";
|
|
48
|
-
|
|
47
|
+
current: boolean;
|
|
49
48
|
createdAt: string;
|
|
50
|
-
lastCallAt?: string | undefined;
|
|
51
|
-
expiresAt?: string | undefined;
|
|
52
49
|
retiredAt?: string | undefined;
|
|
53
|
-
retirement?: "expired" | "withdrawn" | undefined;
|
|
54
50
|
signingKeyId: string;
|
|
55
51
|
record: unknown;
|
|
56
52
|
})[];
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { method } from '@astrale-os/sdk/schema';
|
|
2
|
+
import { listDeploymentsInput, listDeploymentsOutput } from '../../deployment/index.js';
|
|
3
|
+
/** The deployments of the Services the caller owns, or acts as the owner of. */
|
|
4
|
+
export const listServiceDeployments = method({
|
|
5
|
+
description: 'List the deployments of the Services the caller owns.',
|
|
6
|
+
auth: 'authenticated',
|
|
7
|
+
static: true,
|
|
8
|
+
input: listDeploymentsInput,
|
|
9
|
+
output: listDeploymentsOutput,
|
|
10
|
+
});
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export declare const listServiceLogs: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
2
|
+
label?: string | undefined;
|
|
2
3
|
tail?: number | undefined;
|
|
3
4
|
since?: number | undefined;
|
|
4
5
|
}, {
|
|
@@ -9,4 +10,4 @@ export declare const listServiceLogs: import("@astrale-os/sdk/schema").Method<im
|
|
|
9
10
|
level: string;
|
|
10
11
|
line: string;
|
|
11
12
|
}[];
|
|
12
|
-
}, "
|
|
13
|
+
}, "authenticated", false, false, undefined>>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { method } from '@astrale-os/sdk/schema';
|
|
2
2
|
import { listServiceLogsContract } from '../types/service-management.js';
|
|
3
|
-
export const listServiceLogs = method(
|
|
3
|
+
export const listServiceLogs = method(listServiceLogsContract);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export declare const listServiceSchedules: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<Record<string, never>, {
|
|
2
2
|
readonly mode: 'value';
|
|
3
3
|
readonly value: string[];
|
|
4
|
-
}, "
|
|
4
|
+
}, "authenticated", false, false, undefined>>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { method } from '@astrale-os/sdk/schema';
|
|
2
2
|
import { listServiceSchedulesContract } from '../types/service-management.js';
|
|
3
|
-
export const listServiceSchedules = method(
|
|
3
|
+
export const listServiceSchedules = method(listServiceSchedulesContract);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export declare const listServiceSecretNames: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<Record<string, never>, {
|
|
2
2
|
readonly mode: 'value';
|
|
3
3
|
readonly value: string[];
|
|
4
|
-
}, "
|
|
4
|
+
}, "authenticated", false, false, undefined>>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { method } from '@astrale-os/sdk/schema';
|
|
2
2
|
import { listServiceSecretNamesContract } from '../types/service-management.js';
|
|
3
|
-
export const listServiceSecretNames = method(
|
|
3
|
+
export const listServiceSecretNames = method(listServiceSecretNamesContract);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Point this Service at one of its active deployments; a rollback promotes an older one. */
|
|
2
|
+
export declare const promoteService: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
3
|
+
label: string;
|
|
4
|
+
}, {
|
|
5
|
+
readonly mode: 'value';
|
|
6
|
+
readonly value: {
|
|
7
|
+
kind: "rejected";
|
|
8
|
+
reason: "address-mismatch" | "build-mismatch" | "deployment-conflict" | "deployment-retired" | "hosting-unavailable" | "invalid-deployment" | "service-owned-elsewhere" | "service-unavailable";
|
|
9
|
+
message: string;
|
|
10
|
+
retryAfter?: string | undefined;
|
|
11
|
+
} | {
|
|
12
|
+
current: string;
|
|
13
|
+
};
|
|
14
|
+
}, "authenticated", false, false, undefined>>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { method } from '@astrale-os/sdk/schema';
|
|
2
|
+
import { promoteServiceContract } from '../types/service-management.js';
|
|
3
|
+
/** Point this Service at one of its active deployments; a rollback promotes an older one. */
|
|
4
|
+
export const promoteService = method(promoteServiceContract);
|
|
@@ -1,6 +1,3 @@
|
|
|
1
1
|
import { method } from '@astrale-os/sdk/schema';
|
|
2
2
|
import { replaceServiceSchedulesContract } from '../types/service-management.js';
|
|
3
|
-
export const replaceServiceSchedules = method(
|
|
4
|
-
...replaceServiceSchedulesContract,
|
|
5
|
-
abstract: true,
|
|
6
|
-
});
|
|
3
|
+
export const replaceServiceSchedules = method(replaceServiceSchedulesContract);
|
|
@@ -5,8 +5,10 @@ export declare const setServiceSecret: import("@astrale-os/sdk/schema").Method<i
|
|
|
5
5
|
readonly mode: 'value';
|
|
6
6
|
readonly value: {
|
|
7
7
|
kind: "rejected";
|
|
8
|
-
reason: "
|
|
8
|
+
reason: "secret-undeclared" | "service-unavailable";
|
|
9
|
+
message: string;
|
|
10
|
+
retryAfter?: string | undefined;
|
|
9
11
|
} | {
|
|
10
12
|
name: string;
|
|
11
13
|
};
|
|
12
|
-
}, "
|
|
14
|
+
}, "authenticated", false, false, undefined>>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { method } from '@astrale-os/sdk/schema';
|
|
2
2
|
import { setServiceSecretContract } from '../types/service-management.js';
|
|
3
|
-
export const setServiceSecret = method(
|
|
3
|
+
export const setServiceSecret = method(setServiceSecretContract);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Give this Service, and with it every deployment of it, to another owner. */
|
|
2
|
+
export declare const transferService: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
|
|
3
|
+
owner: string;
|
|
4
|
+
}, {
|
|
5
|
+
readonly mode: 'value';
|
|
6
|
+
readonly value: {
|
|
7
|
+
owner: string;
|
|
8
|
+
} | {
|
|
9
|
+
kind: "rejected";
|
|
10
|
+
reason: "address-mismatch" | "build-mismatch" | "deployment-conflict" | "deployment-retired" | "hosting-unavailable" | "invalid-deployment" | "service-owned-elsewhere" | "service-unavailable";
|
|
11
|
+
message: string;
|
|
12
|
+
retryAfter?: string | undefined;
|
|
13
|
+
};
|
|
14
|
+
}, "authenticated", false, false, undefined>>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export { deleteService,
|
|
3
|
-
export {
|
|
1
|
+
export { CloudflareService, Service, service_owned_by } from './classes/index.js';
|
|
2
|
+
export { deleteService, deployService, describeHosting, listServiceDeployments, listServiceLogs, listServiceSchedules, listServiceSecretNames, promoteService, replaceServiceSchedules, setServiceSecret, transferService, } from './functions/index.js';
|
|
3
|
+
export { serviceNotFound } from './errors/index.js';
|
|
4
|
+
export { ActAs, OwnService, TraverseOwnedService } from './policies/index.js';
|
|
4
5
|
export { serviceLifecycle } from './states/index.js';
|
|
5
6
|
export type { ServiceLifecycle, ServiceLifecycleEvent } from './states/index.js';
|
|
6
|
-
export {
|
|
7
|
-
export type { ArtifactModule, AssetBundle, DeployServiceInput, DeployServiceOutput, ResourceLimits, ServiceDeploymentContent, } from './types/index.js';
|
|
7
|
+
export { deleteServiceContract, listServiceLogsContract, listServiceSchedulesContract, listServiceSecretNamesContract, promoteServiceContract, replaceServiceSchedulesContract, secretName, setServiceSecretContract, transferServiceContract, } from './types/index.js';
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export { deleteService,
|
|
3
|
-
export {
|
|
1
|
+
export { CloudflareService, Service, service_owned_by } from './classes/index.js';
|
|
2
|
+
export { deleteService, deployService, describeHosting, listServiceDeployments, listServiceLogs, listServiceSchedules, listServiceSecretNames, promoteService, replaceServiceSchedules, setServiceSecret, transferService, } from './functions/index.js';
|
|
3
|
+
export { serviceNotFound } from './errors/index.js';
|
|
4
|
+
export { ActAs, OwnService, TraverseOwnedService } from './policies/index.js';
|
|
4
5
|
export { serviceLifecycle } from './states/index.js';
|
|
5
|
-
export {
|
|
6
|
+
export { deleteServiceContract, listServiceLogsContract, listServiceSchedulesContract, listServiceSecretNamesContract, promoteServiceContract, replaceServiceSchedulesContract, secretName, setServiceSecretContract, transferServiceContract, } from './types/index.js';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The subject is this Identity, or acts as it through `extends_with`, which the Kernel expands for
|
|
3
|
+
* the subject: a member of a group, or a CI identity composed with its owner. A deploy that names
|
|
4
|
+
* an owner other than its caller, and a transfer, ask it of the caller on that Identity.
|
|
5
|
+
*/
|
|
6
|
+
export declare const ActAs: import("@astrale-os/sdk/schema").Policy;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { policy } from '@astrale-os/sdk/schema';
|
|
2
|
+
/**
|
|
3
|
+
* The subject is this Identity, or acts as it through `extends_with`, which the Kernel expands for
|
|
4
|
+
* the subject: a member of a group, or a CI identity composed with its owner. A deploy that names
|
|
5
|
+
* an owner other than its caller, and a transfer, ask it of the caller on that Identity.
|
|
6
|
+
*/
|
|
7
|
+
export const ActAs = policy({
|
|
8
|
+
description: 'The subject is this Identity or acts as it through extends_with.',
|
|
9
|
+
match: ({ sameNode, subject, object }) => sameNode(subject, object),
|
|
10
|
+
});
|
|
@@ -1,26 +1,13 @@
|
|
|
1
1
|
import { type EventOf, type StateOf } from '@astrale-os/sdk/state';
|
|
2
|
-
/**
|
|
2
|
+
/**
|
|
3
|
+
* Lifecycle of one Service. It is `active` from its first deploy; `delete` retires every
|
|
4
|
+
* deployment of it, and the Service node goes once the last one is retired, freeing its name.
|
|
5
|
+
*/
|
|
3
6
|
export declare const serviceLifecycle: import("@astrale-os/sdk/schema").StateMachine<{
|
|
4
|
-
readonly
|
|
5
|
-
readonly
|
|
6
|
-
readonly failDeployment: "failed";
|
|
7
|
-
readonly rejectDeployment: "ready";
|
|
8
|
-
readonly deleteService: "deleting";
|
|
9
|
-
};
|
|
10
|
-
readonly reconciling: {
|
|
11
|
-
readonly retryDeployment: "deploying";
|
|
12
|
-
readonly completeDeployment: "ready";
|
|
13
|
-
readonly deleteService: "deleting";
|
|
14
|
-
};
|
|
15
|
-
readonly ready: {
|
|
16
|
-
readonly redeploy: "deploying";
|
|
17
|
-
readonly deleteService: "deleting";
|
|
18
|
-
};
|
|
19
|
-
readonly failed: {
|
|
20
|
-
readonly retryDeployment: "deploying";
|
|
21
|
-
readonly deleteService: "deleting";
|
|
7
|
+
readonly active: {
|
|
8
|
+
readonly delete: "deleting";
|
|
22
9
|
};
|
|
23
10
|
readonly deleting: {};
|
|
24
|
-
}, "
|
|
11
|
+
}, "active">;
|
|
25
12
|
export type ServiceLifecycle = StateOf<typeof serviceLifecycle>;
|
|
26
13
|
export type ServiceLifecycleEvent = EventOf<typeof serviceLifecycle>;
|
|
@@ -1,27 +1,12 @@
|
|
|
1
1
|
import { stateMachine } from '@astrale-os/sdk/state';
|
|
2
|
-
/**
|
|
2
|
+
/**
|
|
3
|
+
* Lifecycle of one Service. It is `active` from its first deploy; `delete` retires every
|
|
4
|
+
* deployment of it, and the Service node goes once the last one is retired, freeing its name.
|
|
5
|
+
*/
|
|
3
6
|
export const serviceLifecycle = stateMachine({
|
|
4
|
-
initial: '
|
|
7
|
+
initial: 'active',
|
|
5
8
|
transitions: {
|
|
6
|
-
|
|
7
|
-
recordProviderDeployment: 'reconciling',
|
|
8
|
-
failDeployment: 'failed',
|
|
9
|
-
rejectDeployment: 'ready',
|
|
10
|
-
deleteService: 'deleting',
|
|
11
|
-
},
|
|
12
|
-
reconciling: {
|
|
13
|
-
retryDeployment: 'deploying',
|
|
14
|
-
completeDeployment: 'ready',
|
|
15
|
-
deleteService: 'deleting',
|
|
16
|
-
},
|
|
17
|
-
ready: {
|
|
18
|
-
redeploy: 'deploying',
|
|
19
|
-
deleteService: 'deleting',
|
|
20
|
-
},
|
|
21
|
-
failed: {
|
|
22
|
-
retryDeployment: 'deploying',
|
|
23
|
-
deleteService: 'deleting',
|
|
24
|
-
},
|
|
9
|
+
active: { delete: 'deleting' },
|
|
25
10
|
deleting: {},
|
|
26
11
|
},
|
|
27
12
|
});
|
|
@@ -1,14 +1,2 @@
|
|
|
1
|
-
export { artifact, deployedService, deploymentRejection, deployServiceInput, deployServiceOutput, revisionedDeployment, } from './deploy-cloudflare-worker.js';
|
|
2
|
-
export type { DeployServiceInput, DeployServiceOutput } from './deploy-cloudflare-worker.js';
|
|
3
|
-
export { artifactModule } from './service-deployment-artifact-module.js';
|
|
4
|
-
export type { ArtifactModule } from './service-deployment-artifact-module.js';
|
|
5
|
-
export { assetBundle, assetFile } from './service-deployment-assets.js';
|
|
6
|
-
export type { AssetBundle } from './service-deployment-assets.js';
|
|
7
|
-
export { MAX_ASSET_DECODED_SIZE, MAX_DEPLOYMENT_DECODED_SIZE, MAX_MODULE_DECODED_SIZE, MAX_ASSET_BASE64_SIZE, MAX_MODULE_BASE64_SIZE, PORTABLE_BASE64_CHUNK_SIZE, } from './service-deployment-content.js';
|
|
8
|
-
export { resourceLimits } from './service-deployment-resource-limits.js';
|
|
9
|
-
export type { ResourceLimits } from './service-deployment-resource-limits.js';
|
|
10
1
|
export { secretName } from './service-secret-name.js';
|
|
11
|
-
export {
|
|
12
|
-
export { serviceReadiness } from './service-readiness.js';
|
|
13
|
-
export { setServiceSecretContract, deleteServiceSecretContract, listServiceSecretNamesContract, replaceServiceSchedulesContract, listServiceSchedulesContract, listServiceLogsContract, deleteServiceContract, } from './service-management.js';
|
|
14
|
-
export type { ServiceDeploymentContent } from './service-deployment-content.js';
|
|
2
|
+
export { deleteServiceContract, listServiceLogsContract, listServiceSchedulesContract, listServiceSecretNamesContract, promoteServiceContract, replaceServiceSchedulesContract, setServiceSecretContract, transferServiceContract, } from './service-management.js';
|
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
export { artifact, deployedService, deploymentRejection, deployServiceInput, deployServiceOutput, revisionedDeployment, } from './deploy-cloudflare-worker.js';
|
|
2
|
-
export { artifactModule } from './service-deployment-artifact-module.js';
|
|
3
|
-
export { assetBundle, assetFile } from './service-deployment-assets.js';
|
|
4
|
-
export { MAX_ASSET_DECODED_SIZE, MAX_DEPLOYMENT_DECODED_SIZE, MAX_MODULE_DECODED_SIZE, MAX_ASSET_BASE64_SIZE, MAX_MODULE_BASE64_SIZE, PORTABLE_BASE64_CHUNK_SIZE, } from './service-deployment-content.js';
|
|
5
|
-
export { resourceLimits } from './service-deployment-resource-limits.js';
|
|
6
1
|
export { secretName } from './service-secret-name.js';
|
|
7
|
-
export {
|
|
8
|
-
export { serviceReadiness } from './service-readiness.js';
|
|
9
|
-
export { setServiceSecretContract, deleteServiceSecretContract, listServiceSecretNamesContract, replaceServiceSchedulesContract, listServiceSchedulesContract, listServiceLogsContract, deleteServiceContract, } from './service-management.js';
|
|
2
|
+
export { deleteServiceContract, listServiceLogsContract, listServiceSchedulesContract, listServiceSecretNamesContract, promoteServiceContract, replaceServiceSchedulesContract, setServiceSecretContract, transferServiceContract, } from './service-management.js';
|