@supacloud/cli 0.80.0 → 0.82.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 +17 -0
- package/dist/index.js +1201 -325
- package/dist/shared/mutation-protocol.d.ts +1 -0
- package/dist/shared/tools/app-tools.d.ts +20 -8
- package/dist/shared/tools/application-promotion-help.test.d.ts +1 -0
- package/dist/shared/tools/application-promotion.test.d.ts +1 -0
- package/dist/shared/tools/application-release-transfer.d.ts +8 -0
- package/dist/shared/tools/application-schemas.d.ts +62 -0
- package/dist/shared/tools/application-tools.d.ts +68 -1
- package/dist/shared/tools/application-workflow-schemas.d.ts +236 -0
- package/dist/shared/tools/release-backup-http-status.test.d.ts +1 -0
- package/package.json +3 -3
|
@@ -40,6 +40,7 @@ export type MutationStatusReadback = {
|
|
|
40
40
|
};
|
|
41
41
|
export declare function isMutationId(candidate: unknown): candidate is string;
|
|
42
42
|
export declare function mutationRequestFingerprint(normalizedRequest: unknown): string;
|
|
43
|
+
export declare function safeMutationStatus(candidate: unknown): SafeMutationStatus | null;
|
|
43
44
|
export declare function mutationStatusPath(ref: string, mutationId: string): string;
|
|
44
45
|
export declare function fetchMutationStatus(http: HttpTransport, ref: string, mutationId: string): Promise<MutationStatusReadback>;
|
|
45
46
|
export declare function verifiedMutationReadback(http: HttpTransport, expectation: MutationExpectation): Promise<MutationStatusReadback>;
|
|
@@ -2,6 +2,16 @@ import { type ToolServer } from "../tool-server";
|
|
|
2
2
|
import { type AppManifest } from "./app-tool-export";
|
|
3
3
|
declare const REMOTE_APP_ACTIONS: {
|
|
4
4
|
readonly upload: "upload_release";
|
|
5
|
+
readonly "transfer-plan": "get_release_transfer_plan";
|
|
6
|
+
readonly "promote-plan": "get_promotion_plan";
|
|
7
|
+
readonly "promote-status": "get_promotion_status";
|
|
8
|
+
readonly "promote-reconcile": "reconcile_promotion";
|
|
9
|
+
readonly "preview-plan": "get_preview_plan";
|
|
10
|
+
readonly "preview-list": "list_previews";
|
|
11
|
+
readonly "preview-create": "create_preview";
|
|
12
|
+
readonly "preview-status": "get_preview";
|
|
13
|
+
readonly "preview-cleanup": "cleanup_preview";
|
|
14
|
+
readonly transfer: "transfer_release";
|
|
5
15
|
readonly configure: "put_configuration";
|
|
6
16
|
readonly deploy: "deploy_release";
|
|
7
17
|
readonly "deploy-plan": "get_deploy_plan";
|
|
@@ -13,11 +23,8 @@ declare const REMOTE_APP_ACTIONS: {
|
|
|
13
23
|
readonly reconcile: "reconcile_activation";
|
|
14
24
|
readonly retire: "retire_activation";
|
|
15
25
|
readonly logs: "logs";
|
|
16
|
-
readonly "preview-plan": "get_preview_plan";
|
|
17
26
|
readonly preview: "create_preview";
|
|
18
27
|
readonly previews: "list_previews";
|
|
19
|
-
readonly "preview-status": "get_preview";
|
|
20
|
-
readonly "preview-cleanup": "cleanup_preview";
|
|
21
28
|
};
|
|
22
29
|
export interface AppToolOptions {
|
|
23
30
|
getApplications?: () => ((args: Record<string, unknown>) => Promise<ToolResult>) | undefined;
|
|
@@ -28,7 +35,7 @@ export interface AppToolOptions {
|
|
|
28
35
|
onDevProgress?: (result: ToolResult) => void;
|
|
29
36
|
}
|
|
30
37
|
export interface AppToolArguments {
|
|
31
|
-
action: "init" | "generate" | "dev" | "watch" | "verify-plan" | "compile" | "check" | "graph" | "explain" | "export-tools" | "context" | "doctor" | "fix" | "plan" | "build" | keyof typeof REMOTE_APP_ACTIONS;
|
|
38
|
+
action: "init" | "generate" | "dev" | "watch" | "verify-plan" | "compile" | "check" | "graph" | "explain" | "export-tools" | "context" | "doctor" | "fix" | "plan" | "build" | "promote" | keyof typeof REMOTE_APP_ACTIONS;
|
|
32
39
|
ref?: string;
|
|
33
40
|
id?: string;
|
|
34
41
|
environment_id?: string;
|
|
@@ -38,12 +45,17 @@ export interface AppToolArguments {
|
|
|
38
45
|
configuration_path?: string;
|
|
39
46
|
manifest_path?: string;
|
|
40
47
|
release_id?: string;
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
48
|
+
source_ref?: string;
|
|
49
|
+
source_release_id?: string;
|
|
50
|
+
source_environment_id?: string;
|
|
51
|
+
mutation_id?: string;
|
|
52
|
+
approved_migration_digest?: string;
|
|
44
53
|
branch_ref?: string;
|
|
45
54
|
branch_name?: string;
|
|
46
55
|
data_mode?: "schema_only" | "full_clone";
|
|
56
|
+
preview_id?: string;
|
|
57
|
+
cursor?: string;
|
|
58
|
+
limit?: number;
|
|
47
59
|
ttl_seconds?: number;
|
|
48
60
|
wait?: boolean;
|
|
49
61
|
timeout_seconds?: number;
|
|
@@ -62,7 +74,7 @@ export interface AppToolArguments {
|
|
|
62
74
|
out_dir?: string;
|
|
63
75
|
strict?: boolean;
|
|
64
76
|
format?: "text" | "json";
|
|
65
|
-
json?:
|
|
77
|
+
json?: boolean;
|
|
66
78
|
target?: string;
|
|
67
79
|
fix?: string;
|
|
68
80
|
write?: boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { HttpTransport } from "../transports/http";
|
|
2
|
+
export declare function applicationReleaseTransfer(http: HttpTransport, input: {
|
|
3
|
+
action: "get_release_transfer_plan" | "transfer_release";
|
|
4
|
+
ref: string;
|
|
5
|
+
id: string;
|
|
6
|
+
sourceRef: string;
|
|
7
|
+
sourceReleaseId: string;
|
|
8
|
+
}, project: string): Promise<import("./release-control-response").ReleaseControlToolResponse>;
|
|
@@ -90,3 +90,65 @@ export declare const ApplicationRollbackSnapshotSchema: import("typebox").TObjec
|
|
|
90
90
|
}>, import("typebox").TNull]>;
|
|
91
91
|
}>;
|
|
92
92
|
export declare const ApplicationActivationHistoryCursorSchema: import("typebox").TString;
|
|
93
|
+
export declare const ApplicationPromotionPlanSchema: import("typebox").TObject<{
|
|
94
|
+
schema: import("typebox").TLiteral<"supacloud.application-promotion-plan.v1">;
|
|
95
|
+
project_ref: import("typebox").TString;
|
|
96
|
+
application_id: import("typebox").TString;
|
|
97
|
+
environment_id: import("typebox").TString;
|
|
98
|
+
manifest_sha256: import("typebox").TString;
|
|
99
|
+
plan_sha256: import("typebox").TString;
|
|
100
|
+
source: import("typebox").TObject<{
|
|
101
|
+
activation_id: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
102
|
+
receipt_confirmed: import("typebox").TBoolean;
|
|
103
|
+
ready: import("typebox").TBoolean;
|
|
104
|
+
smoke_verified: import("typebox").TBoolean;
|
|
105
|
+
evidence_sha256: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
106
|
+
migration_ledger_digest: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
107
|
+
project_ref: import("typebox").TString;
|
|
108
|
+
environment_id: import("typebox").TString;
|
|
109
|
+
release_id: import("typebox").TString;
|
|
110
|
+
}>;
|
|
111
|
+
target: import("typebox").TObject<{
|
|
112
|
+
activation_id: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
113
|
+
receipt_confirmed: import("typebox").TBoolean;
|
|
114
|
+
ready: import("typebox").TBoolean;
|
|
115
|
+
smoke_verified: import("typebox").TBoolean;
|
|
116
|
+
evidence_sha256: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
117
|
+
migration_ledger_digest: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
118
|
+
candidate_release_id: import("typebox").TString;
|
|
119
|
+
current_release_id: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
120
|
+
artifact_action: import("typebox").TUnion<[import("typebox").TLiteral<"materialize">, import("typebox").TLiteral<"reuse">]>;
|
|
121
|
+
configuration_id: import("typebox").TUnion<[import("typebox").TString, import("typebox").TNull]>;
|
|
122
|
+
configuration: import("typebox").TUnion<[import("typebox").TObject<{
|
|
123
|
+
schema: import("typebox").TLiteral<"supacloud.application-configuration.v1">;
|
|
124
|
+
project_ref: import("typebox").TString;
|
|
125
|
+
application_id: import("typebox").TString;
|
|
126
|
+
environment_id: import("typebox").TString;
|
|
127
|
+
configuration_id: import("typebox").TString;
|
|
128
|
+
created_at: import("typebox").TString;
|
|
129
|
+
bun_version: import("typebox").TString;
|
|
130
|
+
targets: import("typebox").TArray<import("typebox").TObject<{
|
|
131
|
+
name: import("typebox").TString;
|
|
132
|
+
kind: import("typebox").TUnion<[import("typebox").TLiteral<"http">, import("typebox").TLiteral<"worker">]>;
|
|
133
|
+
hosts: import("typebox").TArray<import("typebox").TString>;
|
|
134
|
+
environment_names: import("typebox").TArray<import("typebox").TString>;
|
|
135
|
+
}>>;
|
|
136
|
+
}>, import("typebox").TNull]>;
|
|
137
|
+
}>;
|
|
138
|
+
migrations: import("typebox").TObject<{
|
|
139
|
+
ledger_digest: import("typebox").TString;
|
|
140
|
+
ledger_compatible: import("typebox").TBoolean;
|
|
141
|
+
project_migrations_applied: import("typebox").TBoolean;
|
|
142
|
+
pending_versions: import("typebox").TArray<import("typebox").TString>;
|
|
143
|
+
operator_provisioning_required: import("typebox").TBoolean;
|
|
144
|
+
}>;
|
|
145
|
+
backup: import("typebox").TObject<{
|
|
146
|
+
required: import("typebox").TBoolean;
|
|
147
|
+
confirmed: import("typebox").TLiteral<false>;
|
|
148
|
+
}>;
|
|
149
|
+
action: import("typebox").TUnion<[import("typebox").TLiteral<"promote">, import("typebox").TLiteral<"no-op">, import("typebox").TLiteral<"blocked">]>;
|
|
150
|
+
blockers: import("typebox").TArray<import("typebox").TEnum<("SOURCE_NOT_ACTIVE" | "SOURCE_RECEIPT_UNCONFIRMED" | "SOURCE_NOT_READY" | "SOURCE_SMOKE_UNVERIFIED" | "TARGET_CONFIGURATION_MISSING" | "TARGET_CONFIGURATION_MISMATCH" | "MIGRATION_PENDING" | "MIGRATION_CONFLICT" | "OPERATOR_PROVISIONING_REQUIRED" | "BACKUP_REQUIRED")[]>>;
|
|
151
|
+
steps: import("typebox").TArray<import("typebox").TString>;
|
|
152
|
+
execution_performed: import("typebox").TLiteral<false>;
|
|
153
|
+
data_recovery: import("typebox").TLiteral<"separate-required">;
|
|
154
|
+
}>;
|
|
@@ -9,7 +9,7 @@ export declare const APPLICATION_TOOL_SCHEMA: {
|
|
|
9
9
|
ttl_seconds: Type.TOptional<Type.TInteger>;
|
|
10
10
|
wait: Type.TOptional<Type.TBoolean>;
|
|
11
11
|
timeout_seconds: Type.TOptional<Type.TInteger>;
|
|
12
|
-
action: Type.TEnum<("list_releases" | "get_release" | "upload_release" | "activate_release" | "logs" | "get_runtime" | "get_deployment_evidence" | "get_configuration" | "get_rollback_snapshot" | "get_history" | "get_deploy_plan" | "
|
|
12
|
+
action: Type.TEnum<("list_releases" | "get_release" | "upload_release" | "activate_release" | "logs" | "get_runtime" | "get_deployment_evidence" | "get_configuration" | "get_release_transfer_plan" | "get_promotion_plan" | "get_rollback_snapshot" | "get_history" | "get_deploy_plan" | "get_promotion_status" | "get_preview_plan" | "put_configuration" | "transfer_release" | "promote_application" | "reconcile_promotion" | "create_preview" | "list_previews" | "get_preview" | "cleanup_preview" | "deploy_release" | "rollback_release" | "reconcile_activation" | "retire_activation")[]>;
|
|
13
13
|
ref: Type.TString;
|
|
14
14
|
id: Type.TString;
|
|
15
15
|
environment_id: Type.TOptional<Type.TString>;
|
|
@@ -19,6 +19,73 @@ export declare const APPLICATION_TOOL_SCHEMA: {
|
|
|
19
19
|
configuration_path: Type.TOptional<Type.TString>;
|
|
20
20
|
manifest_path: Type.TOptional<Type.TString>;
|
|
21
21
|
release_id: Type.TOptional<Type.TString>;
|
|
22
|
+
source_ref: Type.TOptional<Type.TString>;
|
|
23
|
+
source_release_id: Type.TOptional<Type.TString>;
|
|
24
|
+
source_environment_id: Type.TOptional<Type.TString>;
|
|
25
|
+
mutation_id: Type.TOptional<Type.TString>;
|
|
26
|
+
approved_migration_digest: Type.TOptional<Type.TString>;
|
|
27
|
+
plan: Type.TOptional<Type.TObject<{
|
|
28
|
+
schema: Type.TLiteral<"supacloud.application-promotion-plan.v1">;
|
|
29
|
+
project_ref: Type.TString;
|
|
30
|
+
application_id: Type.TString;
|
|
31
|
+
environment_id: Type.TString;
|
|
32
|
+
manifest_sha256: Type.TString;
|
|
33
|
+
plan_sha256: Type.TString;
|
|
34
|
+
source: Type.TObject<{
|
|
35
|
+
activation_id: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
36
|
+
receipt_confirmed: Type.TBoolean;
|
|
37
|
+
ready: Type.TBoolean;
|
|
38
|
+
smoke_verified: Type.TBoolean;
|
|
39
|
+
evidence_sha256: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
40
|
+
migration_ledger_digest: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
41
|
+
project_ref: Type.TString;
|
|
42
|
+
environment_id: Type.TString;
|
|
43
|
+
release_id: Type.TString;
|
|
44
|
+
}>;
|
|
45
|
+
target: Type.TObject<{
|
|
46
|
+
activation_id: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
47
|
+
receipt_confirmed: Type.TBoolean;
|
|
48
|
+
ready: Type.TBoolean;
|
|
49
|
+
smoke_verified: Type.TBoolean;
|
|
50
|
+
evidence_sha256: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
51
|
+
migration_ledger_digest: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
52
|
+
candidate_release_id: Type.TString;
|
|
53
|
+
current_release_id: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
54
|
+
artifact_action: Type.TUnion<[Type.TLiteral<"materialize">, Type.TLiteral<"reuse">]>;
|
|
55
|
+
configuration_id: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
56
|
+
configuration: Type.TUnion<[Type.TObject<{
|
|
57
|
+
schema: Type.TLiteral<"supacloud.application-configuration.v1">;
|
|
58
|
+
project_ref: Type.TString;
|
|
59
|
+
application_id: Type.TString;
|
|
60
|
+
environment_id: Type.TString;
|
|
61
|
+
configuration_id: Type.TString;
|
|
62
|
+
created_at: Type.TString;
|
|
63
|
+
bun_version: Type.TString;
|
|
64
|
+
targets: Type.TArray<Type.TObject<{
|
|
65
|
+
name: Type.TString;
|
|
66
|
+
kind: Type.TUnion<[Type.TLiteral<"http">, Type.TLiteral<"worker">]>;
|
|
67
|
+
hosts: Type.TArray<Type.TString>;
|
|
68
|
+
environment_names: Type.TArray<Type.TString>;
|
|
69
|
+
}>>;
|
|
70
|
+
}>, Type.TNull]>;
|
|
71
|
+
}>;
|
|
72
|
+
migrations: Type.TObject<{
|
|
73
|
+
ledger_digest: Type.TString;
|
|
74
|
+
ledger_compatible: Type.TBoolean;
|
|
75
|
+
project_migrations_applied: Type.TBoolean;
|
|
76
|
+
pending_versions: Type.TArray<Type.TString>;
|
|
77
|
+
operator_provisioning_required: Type.TBoolean;
|
|
78
|
+
}>;
|
|
79
|
+
backup: Type.TObject<{
|
|
80
|
+
required: Type.TBoolean;
|
|
81
|
+
confirmed: Type.TLiteral<false>;
|
|
82
|
+
}>;
|
|
83
|
+
action: Type.TUnion<[Type.TLiteral<"promote">, Type.TLiteral<"no-op">, Type.TLiteral<"blocked">]>;
|
|
84
|
+
blockers: Type.TArray<Type.TEnum<("SOURCE_NOT_ACTIVE" | "SOURCE_RECEIPT_UNCONFIRMED" | "SOURCE_NOT_READY" | "SOURCE_SMOKE_UNVERIFIED" | "TARGET_CONFIGURATION_MISSING" | "TARGET_CONFIGURATION_MISMATCH" | "MIGRATION_PENDING" | "MIGRATION_CONFLICT" | "OPERATOR_PROVISIONING_REQUIRED" | "BACKUP_REQUIRED")[]>>;
|
|
85
|
+
steps: Type.TArray<Type.TString>;
|
|
86
|
+
execution_performed: Type.TLiteral<false>;
|
|
87
|
+
data_recovery: Type.TLiteral<"separate-required">;
|
|
88
|
+
}>>;
|
|
22
89
|
cursor: Type.TOptional<Type.TUnion<[Type.TString, Type.TString]>>;
|
|
23
90
|
limit: Type.TOptional<Type.TInteger>;
|
|
24
91
|
offset: Type.TOptional<Type.TInteger>;
|
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
import { Type } from "typebox";
|
|
2
|
+
export declare const ApplicationPromotionResultSchema: Type.TObject<{
|
|
3
|
+
mutation_id: Type.TString;
|
|
4
|
+
activation_id: Type.TString;
|
|
5
|
+
plan_sha256: Type.TString;
|
|
6
|
+
action: Type.TLiteral<"promote">;
|
|
7
|
+
replayed: Type.TBoolean;
|
|
8
|
+
project_ref: Type.TString;
|
|
9
|
+
application_id: Type.TString;
|
|
10
|
+
environment_id: Type.TString;
|
|
11
|
+
}>;
|
|
12
|
+
export declare const ApplicationPromotionStatusSchema: Type.TObject<{
|
|
13
|
+
mutation: Type.TUnknown;
|
|
14
|
+
promotion: Type.TObject<{
|
|
15
|
+
phase: Type.TUnion<[Type.TLiteral<"prepared">, Type.TLiteral<"transferring">, Type.TLiteral<"migrating">, Type.TLiteral<"activating">, Type.TLiteral<"verifying">, Type.TNull]>;
|
|
16
|
+
plan_sha256: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
17
|
+
activation_id: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
18
|
+
release_id: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
19
|
+
configuration_id: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
20
|
+
backup_id: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
21
|
+
data_recovery: Type.TLiteral<"separate-required">;
|
|
22
|
+
}>;
|
|
23
|
+
project_ref: Type.TString;
|
|
24
|
+
application_id: Type.TString;
|
|
25
|
+
environment_id: Type.TString;
|
|
26
|
+
}>;
|
|
27
|
+
export declare const ApplicationPreviewReceiptSchema: Type.TObject<{
|
|
28
|
+
preview_id: Type.TString;
|
|
29
|
+
release_id: Type.TString;
|
|
30
|
+
expires_at: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
31
|
+
status: Type.TUnion<[Type.TLiteral<"planned">, Type.TLiteral<"provisioning">, Type.TLiteral<"ready">, Type.TLiteral<"failed">, Type.TLiteral<"cleaned">]>;
|
|
32
|
+
resources: Type.TObject<{
|
|
33
|
+
build_artifact: Type.TObject<{
|
|
34
|
+
status: Type.TUnion<[Type.TLiteral<"pending">, Type.TLiteral<"ready">, Type.TLiteral<"failed">, Type.TLiteral<"cleaned">]>;
|
|
35
|
+
release_id: Type.TString;
|
|
36
|
+
}>;
|
|
37
|
+
database_branch: Type.TObject<{
|
|
38
|
+
status: Type.TUnion<[Type.TLiteral<"pending">, Type.TLiteral<"ready">, Type.TLiteral<"failed">, Type.TLiteral<"cleaned">]>;
|
|
39
|
+
branch_ref: Type.TString;
|
|
40
|
+
data_mode: Type.TUnion<[Type.TLiteral<"schema_only">, Type.TLiteral<"full_clone">]>;
|
|
41
|
+
}>;
|
|
42
|
+
queue_namespace: Type.TObject<{
|
|
43
|
+
status: Type.TUnion<[Type.TLiteral<"pending">, Type.TLiteral<"ready">, Type.TLiteral<"failed">, Type.TLiteral<"cleaned">]>;
|
|
44
|
+
namespace: Type.TString;
|
|
45
|
+
}>;
|
|
46
|
+
storage_namespace: Type.TObject<{
|
|
47
|
+
status: Type.TUnion<[Type.TLiteral<"pending">, Type.TLiteral<"ready">, Type.TLiteral<"failed">, Type.TLiteral<"cleaned">]>;
|
|
48
|
+
namespace: Type.TString;
|
|
49
|
+
}>;
|
|
50
|
+
test_secret: Type.TObject<{
|
|
51
|
+
status: Type.TUnion<[Type.TLiteral<"pending">, Type.TLiteral<"ready">, Type.TLiteral<"failed">, Type.TLiteral<"cleaned">]>;
|
|
52
|
+
name: Type.TString;
|
|
53
|
+
value_issued: Type.TLiteral<false>;
|
|
54
|
+
}>;
|
|
55
|
+
configuration_revision: Type.TObject<{
|
|
56
|
+
status: Type.TUnion<[Type.TLiteral<"pending">, Type.TLiteral<"ready">, Type.TLiteral<"failed">, Type.TLiteral<"cleaned">]>;
|
|
57
|
+
configuration_id: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
58
|
+
}>;
|
|
59
|
+
application_activation: Type.TObject<{
|
|
60
|
+
status: Type.TUnion<[Type.TLiteral<"pending">, Type.TLiteral<"ready">, Type.TLiteral<"failed">, Type.TLiteral<"cleaned">]>;
|
|
61
|
+
activation_id: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
62
|
+
}>;
|
|
63
|
+
smoke_test: Type.TObject<{
|
|
64
|
+
status: Type.TUnion<[Type.TLiteral<"pending">, Type.TLiteral<"ready">, Type.TLiteral<"failed">, Type.TLiteral<"cleaned">]>;
|
|
65
|
+
checks: Type.TArray<Type.TString>;
|
|
66
|
+
passed: Type.TArray<Type.TString>;
|
|
67
|
+
failed: Type.TArray<Type.TString>;
|
|
68
|
+
}>;
|
|
69
|
+
}>;
|
|
70
|
+
cleanup: Type.TObject<{
|
|
71
|
+
required: Type.TBoolean;
|
|
72
|
+
completed: Type.TBoolean;
|
|
73
|
+
error: Type.TUnion<[Type.TString, Type.TNull]>;
|
|
74
|
+
}>;
|
|
75
|
+
branch_name: Type.TOptional<Type.TString>;
|
|
76
|
+
queue_name: Type.TOptional<Type.TString>;
|
|
77
|
+
test_secret_name: Type.TOptional<Type.TString>;
|
|
78
|
+
source_configuration_id: Type.TOptional<Type.TUnion<[Type.TString, Type.TNull]>>;
|
|
79
|
+
created_at: Type.TOptional<Type.TString>;
|
|
80
|
+
updated_at: Type.TOptional<Type.TString>;
|
|
81
|
+
project_ref: Type.TString;
|
|
82
|
+
application_id: Type.TString;
|
|
83
|
+
environment_id: Type.TString;
|
|
84
|
+
schema: Type.TLiteral<"supacloud.application-preview.v1">;
|
|
85
|
+
}>;
|
|
86
|
+
export interface ApplicationWorkflowScope {
|
|
87
|
+
project_ref: string;
|
|
88
|
+
application_id: string;
|
|
89
|
+
environment_id: string;
|
|
90
|
+
}
|
|
91
|
+
export declare function parsePromotionStatus(value: unknown, identity: ApplicationWorkflowScope & {
|
|
92
|
+
mutation_id: string;
|
|
93
|
+
}): {
|
|
94
|
+
mutation: import("../mutation-protocol").SafeMutationStatus;
|
|
95
|
+
project_ref: string;
|
|
96
|
+
application_id: string;
|
|
97
|
+
environment_id: string;
|
|
98
|
+
promotion: {
|
|
99
|
+
backup_id: string | null;
|
|
100
|
+
activation_id: string | null;
|
|
101
|
+
release_id: string | null;
|
|
102
|
+
configuration_id: string | null;
|
|
103
|
+
plan_sha256: string | null;
|
|
104
|
+
data_recovery: "separate-required";
|
|
105
|
+
phase: "prepared" | "transferring" | "migrating" | "activating" | "verifying" | null;
|
|
106
|
+
};
|
|
107
|
+
};
|
|
108
|
+
export declare function parsePreviewReceipt(value: unknown, identity: ApplicationWorkflowScope & {
|
|
109
|
+
preview_id?: string;
|
|
110
|
+
release_id?: string;
|
|
111
|
+
branch_ref?: string;
|
|
112
|
+
data_mode?: string;
|
|
113
|
+
configuration_id?: string;
|
|
114
|
+
}): {
|
|
115
|
+
created_at?: string | undefined;
|
|
116
|
+
updated_at?: string | undefined;
|
|
117
|
+
branch_name?: string | undefined;
|
|
118
|
+
queue_name?: string | undefined;
|
|
119
|
+
test_secret_name?: string | undefined;
|
|
120
|
+
source_configuration_id?: string | null | undefined;
|
|
121
|
+
project_ref: string;
|
|
122
|
+
application_id: string;
|
|
123
|
+
environment_id: string;
|
|
124
|
+
status: "failed" | "ready" | "planned" | "cleaned" | "provisioning";
|
|
125
|
+
schema: "supacloud.application-preview.v1";
|
|
126
|
+
resources: {
|
|
127
|
+
build_artifact: {
|
|
128
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
129
|
+
release_id: string;
|
|
130
|
+
};
|
|
131
|
+
database_branch: {
|
|
132
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
133
|
+
branch_ref: string;
|
|
134
|
+
data_mode: "schema_only" | "full_clone";
|
|
135
|
+
};
|
|
136
|
+
queue_namespace: {
|
|
137
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
138
|
+
namespace: string;
|
|
139
|
+
};
|
|
140
|
+
storage_namespace: {
|
|
141
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
142
|
+
namespace: string;
|
|
143
|
+
};
|
|
144
|
+
test_secret: {
|
|
145
|
+
name: string;
|
|
146
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
147
|
+
value_issued: false;
|
|
148
|
+
};
|
|
149
|
+
configuration_revision: {
|
|
150
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
151
|
+
configuration_id: string | null;
|
|
152
|
+
};
|
|
153
|
+
application_activation: {
|
|
154
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
155
|
+
activation_id: string | null;
|
|
156
|
+
};
|
|
157
|
+
smoke_test: {
|
|
158
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
159
|
+
checks: string[];
|
|
160
|
+
failed: string[];
|
|
161
|
+
passed: string[];
|
|
162
|
+
};
|
|
163
|
+
};
|
|
164
|
+
release_id: string;
|
|
165
|
+
expires_at: string | null;
|
|
166
|
+
preview_id: string;
|
|
167
|
+
cleanup: {
|
|
168
|
+
required: boolean;
|
|
169
|
+
error: string | null;
|
|
170
|
+
completed: boolean;
|
|
171
|
+
};
|
|
172
|
+
};
|
|
173
|
+
export declare function parsePreviewList(value: unknown, identity: ApplicationWorkflowScope): {
|
|
174
|
+
project_ref: string;
|
|
175
|
+
application_id: string;
|
|
176
|
+
environment_id: string;
|
|
177
|
+
previews: {
|
|
178
|
+
created_at?: string | undefined;
|
|
179
|
+
updated_at?: string | undefined;
|
|
180
|
+
branch_name?: string | undefined;
|
|
181
|
+
queue_name?: string | undefined;
|
|
182
|
+
test_secret_name?: string | undefined;
|
|
183
|
+
source_configuration_id?: string | null | undefined;
|
|
184
|
+
project_ref: string;
|
|
185
|
+
application_id: string;
|
|
186
|
+
environment_id: string;
|
|
187
|
+
status: "failed" | "ready" | "planned" | "cleaned" | "provisioning";
|
|
188
|
+
schema: "supacloud.application-preview.v1";
|
|
189
|
+
resources: {
|
|
190
|
+
build_artifact: {
|
|
191
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
192
|
+
release_id: string;
|
|
193
|
+
};
|
|
194
|
+
database_branch: {
|
|
195
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
196
|
+
branch_ref: string;
|
|
197
|
+
data_mode: "schema_only" | "full_clone";
|
|
198
|
+
};
|
|
199
|
+
queue_namespace: {
|
|
200
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
201
|
+
namespace: string;
|
|
202
|
+
};
|
|
203
|
+
storage_namespace: {
|
|
204
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
205
|
+
namespace: string;
|
|
206
|
+
};
|
|
207
|
+
test_secret: {
|
|
208
|
+
name: string;
|
|
209
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
210
|
+
value_issued: false;
|
|
211
|
+
};
|
|
212
|
+
configuration_revision: {
|
|
213
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
214
|
+
configuration_id: string | null;
|
|
215
|
+
};
|
|
216
|
+
application_activation: {
|
|
217
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
218
|
+
activation_id: string | null;
|
|
219
|
+
};
|
|
220
|
+
smoke_test: {
|
|
221
|
+
status: "pending" | "failed" | "ready" | "cleaned";
|
|
222
|
+
checks: string[];
|
|
223
|
+
failed: string[];
|
|
224
|
+
passed: string[];
|
|
225
|
+
};
|
|
226
|
+
};
|
|
227
|
+
release_id: string;
|
|
228
|
+
expires_at: string | null;
|
|
229
|
+
preview_id: string;
|
|
230
|
+
cleanup: {
|
|
231
|
+
required: boolean;
|
|
232
|
+
error: string | null;
|
|
233
|
+
completed: boolean;
|
|
234
|
+
};
|
|
235
|
+
}[];
|
|
236
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@supacloud/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.82.0",
|
|
4
4
|
"description": "Project-scoped CLI for SupaCloud users",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -52,14 +52,14 @@
|
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
54
|
"@supacloud/compiler": "^0.43.0",
|
|
55
|
-
"@supacloud/delivery": "0.
|
|
55
|
+
"@supacloud/delivery": "0.11.0",
|
|
56
56
|
"@supacloud/db": "0.16.0",
|
|
57
57
|
"fflate": "^0.8.3",
|
|
58
58
|
"typebox": "1.3.34"
|
|
59
59
|
},
|
|
60
60
|
"overrides": {
|
|
61
61
|
"@supacloud/contracts": "0.8.0",
|
|
62
|
-
"@supacloud/delivery": "0.
|
|
62
|
+
"@supacloud/delivery": "0.11.0",
|
|
63
63
|
"@graphql-tools/utils": "^12.0.3"
|
|
64
64
|
},
|
|
65
65
|
"devDependencies": {
|