@webiny/project-aws 6.0.0 → 6.1.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_templates/appTemplates/api/graphql/package.json +3 -5
- package/_templates/appTemplates/api/graphql/src/index.ts +2 -0
- package/_templates/extensions/OpenSearch/api/graphql/src/index.ts +6 -4
- package/_templates/extensions/OpenSearch/coreDdbToEsHandler/dynamoToElastic/src/index.ts +6 -7
- package/abstractions/services/ApiStackOutputService.d.ts +0 -1
- package/abstractions/services/ApiStackOutputService.js.map +1 -1
- package/admin.d.ts +4 -16
- package/api.d.ts +4 -16
- package/apps/createApiApp.d.ts +0 -3
- package/cli.d.ts +2 -6
- package/exports/{infra/index.d.ts → infra.d.ts} +1 -1
- package/exports/{infra/index.js → infra.js} +2 -2
- package/exports/{infra/index.js.map → infra.js.map} +1 -1
- package/extensions/ApiLambdaFunction.d.ts +3 -9
- package/extensions/AwsDefaultRegion.d.ts +1 -5
- package/extensions/OpenSearch.d.ts +1 -11
- package/extensions/ProjectAws/AutoInstall/AutoInstallAfterApiDeploy.js +4 -0
- package/extensions/ProjectAws/AutoInstall/AutoInstallAfterApiDeploy.js.map +1 -1
- package/extensions/ProjectAws/AutoInstall.d.ts +2 -26
- package/extensions/ProjectAws/BuildAppWorkspace.js +1 -1
- package/extensions/ProjectAws/BuildAppWorkspace.js.map +1 -1
- package/extensions/ProjectAws/EnsureAwsCredentialsBeforeDeploy.d.ts +10 -0
- package/extensions/ProjectAws/EnsureAwsCredentialsBeforeDeploy.js +40 -0
- package/extensions/ProjectAws/EnsureAwsCredentialsBeforeDeploy.js.map +1 -0
- package/extensions/ProjectAws.js +3 -2
- package/extensions/ProjectAws.js.map +1 -1
- package/infra.d.ts +80 -348
- package/infra.js +5 -1
- package/infra.js.map +1 -1
- package/package.json +16 -18
- package/project.d.ts +10 -116
- package/pulumi/apps/api/ApiOutput.d.ts +0 -1
- package/pulumi/apps/api/ApiOutput.js +0 -1
- package/pulumi/apps/api/ApiOutput.js.map +1 -1
- package/pulumi/apps/api/createApiPulumiApp.d.ts +0 -3
- package/pulumi/apps/api/createApiPulumiApp.js +1 -4
- package/pulumi/apps/api/createApiPulumiApp.js.map +1 -1
- package/pulumi/apps/api/index.d.ts +0 -1
- package/pulumi/apps/api/index.js +0 -1
- package/pulumi/apps/api/index.js.map +1 -1
- package/pulumi/apps/extensions/getBgDeploymentsConfigFromExtension.d.ts +6 -6
- package/pulumi/extensions/AdminCustomDomains.d.ts +6 -11
- package/pulumi/extensions/AwsTags.d.ts +1 -5
- package/pulumi/extensions/AwsTags.js +1 -1
- package/pulumi/extensions/AwsTags.js.map +1 -1
- package/pulumi/extensions/BlueGreenDeployments.d.ts +17 -115
- package/pulumi/extensions/BlueGreenDeployments.js +7 -4
- package/pulumi/extensions/BlueGreenDeployments.js.map +1 -1
- package/pulumi/extensions/OpenSearch.d.ts +1 -11
- package/pulumi/extensions/Vpc.d.ts +8 -64
- package/pulumi/extensions/index.d.ts +29 -187
- package/pulumi/types.d.ts +0 -1
- package/pulumi/types.js.map +1 -1
- package/utils/getTemplatesFolderPath.js +2 -2
- package/utils/getTemplatesFolderPath.js.map +1 -1
- package/_templates/appTemplates/api/migration/src/index.ts +0 -23
- package/_templates/appTemplates/api/migration/tsconfig.json +0 -6
- package/_templates/appTemplates/api/migration/webiny.config.ts +0 -8
- package/_templates/extensions/OpenSearch/api/migration/src/index.ts +0 -33
- package/extensions/ProjectAws/ExecuteDataMigrations.d.ts +0 -16
- package/extensions/ProjectAws/ExecuteDataMigrations.js +0 -69
- package/extensions/ProjectAws/ExecuteDataMigrations.js.map +0 -1
- package/pulumi/apps/api/ApiMigration.d.ts +0 -5
- package/pulumi/apps/api/ApiMigration.js +0 -82
- package/pulumi/apps/api/ApiMigration.js.map +0 -1
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"@webiny/api-core": "latest",
|
|
12
12
|
"@webiny/api-core-ddb": "latest",
|
|
13
13
|
"@webiny/api-dynamodb-to-elasticsearch": "latest",
|
|
14
|
-
"@webiny/api-
|
|
14
|
+
"@webiny/api-opensearch": "latest",
|
|
15
15
|
"@webiny/api-file-manager": "latest",
|
|
16
16
|
"@webiny/api-file-manager-aco": "latest",
|
|
17
17
|
"@webiny/api-file-manager-s3": "latest",
|
|
@@ -27,17 +27,15 @@
|
|
|
27
27
|
"@webiny/api-record-locking": "latest",
|
|
28
28
|
"@webiny/api-scheduler": "latest",
|
|
29
29
|
"@webiny/api-website-builder": "latest",
|
|
30
|
+
"@webiny/api-website-builder-scheduler": "latest",
|
|
30
31
|
"@webiny/api-website-builder-workflows": "latest",
|
|
31
32
|
"@webiny/api-websockets": "latest",
|
|
32
33
|
"@webiny/api-workflows": "latest",
|
|
33
34
|
"@webiny/aws-sdk": "latest",
|
|
34
35
|
"@webiny/build-tools": "latest",
|
|
35
|
-
"@webiny/data-migration": "latest",
|
|
36
36
|
"@webiny/db-dynamodb": "latest",
|
|
37
37
|
"@webiny/handler-aws": "latest",
|
|
38
|
-
"@webiny/handler-client": "latest",
|
|
39
38
|
"@webiny/handler-db": "latest",
|
|
40
|
-
"@webiny/handler-graphql": "latest"
|
|
41
|
-
"@webiny/migrations": "latest"
|
|
39
|
+
"@webiny/handler-graphql": "latest"
|
|
42
40
|
}
|
|
43
41
|
}
|
|
@@ -27,6 +27,7 @@ import { createMailerContext, createMailerGraphQL } from "@webiny/api-mailer";
|
|
|
27
27
|
import { createWorkflows } from "@webiny/api-workflows";
|
|
28
28
|
import { createHeadlessCmsWorkflows } from "@webiny/api-headless-cms-workflows";
|
|
29
29
|
import { createWebsiteBuilderWorkflows } from "@webiny/api-website-builder-workflows";
|
|
30
|
+
import { createWebsiteBuilderScheduler } from "@webiny/api-website-builder-scheduler";
|
|
30
31
|
|
|
31
32
|
import { extensions } from "./extensions";
|
|
32
33
|
|
|
@@ -74,6 +75,7 @@ export const handler = createHandler({
|
|
|
74
75
|
}
|
|
75
76
|
}),
|
|
76
77
|
createHeadlessCmsScheduler(),
|
|
78
|
+
createWebsiteBuilderScheduler(),
|
|
77
79
|
extensions()
|
|
78
80
|
],
|
|
79
81
|
debug
|
|
@@ -6,7 +6,7 @@ import { createApiCoreDdb } from "@webiny/api-core-ddb";
|
|
|
6
6
|
import dbPlugins from "@webiny/handler-db";
|
|
7
7
|
import { DynamoDbDriver } from "@webiny/db-dynamodb";
|
|
8
8
|
import dynamoDbPlugins from "@webiny/db-dynamodb/plugins";
|
|
9
|
-
import
|
|
9
|
+
import { createOpenSearchContext, createOpenSearchClient } from "@webiny/api-opensearch";
|
|
10
10
|
import { createFileManagerContext, createFileManagerGraphQL } from "@webiny/api-file-manager";
|
|
11
11
|
import { createFileManagerAco } from "@webiny/api-file-manager-aco";
|
|
12
12
|
import { createAssetDelivery, createFileManagerS3 } from "@webiny/api-file-manager-s3";
|
|
@@ -28,6 +28,7 @@ import { createMailerContext, createMailerGraphQL } from "@webiny/api-mailer";
|
|
|
28
28
|
import { createWorkflows } from "@webiny/api-workflows";
|
|
29
29
|
import { createHeadlessCmsWorkflows } from "@webiny/api-headless-cms-workflows";
|
|
30
30
|
import { createWebsiteBuilderWorkflows } from "@webiny/api-website-builder-workflows";
|
|
31
|
+
import { createWebsiteBuilderScheduler } from "@webiny/api-website-builder-scheduler";
|
|
31
32
|
|
|
32
33
|
import { extensions } from "./extensions";
|
|
33
34
|
|
|
@@ -35,7 +36,7 @@ const debug = process.env.DEBUG === "true";
|
|
|
35
36
|
|
|
36
37
|
const documentClient = getDocumentClient();
|
|
37
38
|
|
|
38
|
-
const
|
|
39
|
+
const openSearchClient = createOpenSearchClient({
|
|
39
40
|
endpoint: `https://${process.env.OPENSEARCH_ENDPOINT}`
|
|
40
41
|
});
|
|
41
42
|
|
|
@@ -46,7 +47,7 @@ export const handler = createHandler({
|
|
|
46
47
|
}),
|
|
47
48
|
dynamoDbPlugins(),
|
|
48
49
|
graphqlPlugins({ debug }),
|
|
49
|
-
|
|
50
|
+
createOpenSearchContext(openSearchClient),
|
|
50
51
|
dbPlugins({
|
|
51
52
|
table: process.env.DB_TABLE,
|
|
52
53
|
driver: new DynamoDbDriver({ documentClient })
|
|
@@ -56,7 +57,7 @@ export const handler = createHandler({
|
|
|
56
57
|
createHeadlessCmsContext({
|
|
57
58
|
storageOperations: createHeadlessCmsStorageOperations({
|
|
58
59
|
documentClient,
|
|
59
|
-
elasticsearch:
|
|
60
|
+
elasticsearch: openSearchClient,
|
|
60
61
|
plugins: []
|
|
61
62
|
})
|
|
62
63
|
}),
|
|
@@ -84,6 +85,7 @@ export const handler = createHandler({
|
|
|
84
85
|
}
|
|
85
86
|
}),
|
|
86
87
|
createHeadlessCmsScheduler(),
|
|
88
|
+
createWebsiteBuilderScheduler(),
|
|
87
89
|
extensions()
|
|
88
90
|
],
|
|
89
91
|
debug
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import { createHandler } from "@webiny/handler-aws";
|
|
2
|
-
import
|
|
2
|
+
import { createOpenSearchClient, createOpenSearchContext } from "@webiny/api-opensearch";
|
|
3
3
|
import { createEventHandler } from "@webiny/api-dynamodb-to-elasticsearch";
|
|
4
4
|
|
|
5
|
+
const client = createOpenSearchClient({
|
|
6
|
+
endpoint: `https://${process.env.OPENSEARCH_ENDPOINT}`
|
|
7
|
+
});
|
|
8
|
+
|
|
5
9
|
export const handler = createHandler({
|
|
6
|
-
plugins: [
|
|
7
|
-
elasticsearchClientContextPlugin({
|
|
8
|
-
endpoint: `https://${process.env.OPENSEARCH_ENDPOINT}`
|
|
9
|
-
}),
|
|
10
|
-
createEventHandler()
|
|
11
|
-
],
|
|
10
|
+
plugins: [createOpenSearchContext(client), createEventHandler()],
|
|
12
11
|
options: {
|
|
13
12
|
bodyLimit: 536870912 // 512MB
|
|
14
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","ApiStackOutputService"],"sources":["ApiStackOutputService.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/project/abstractions/createAbstraction.js\";\n\nexport interface IApiStackOutput {\n apiDomain?: string;\n apiUrl?: string;\n graphqlLambdaRole?: string;\n graphqlLambdaRoleName?: string;\n cognitoAppClientId?: string;\n cognitoUserPoolId?: string;\n cognitoUserPoolPasswordPolicy?: string;\n dynamoDbTable?: string;\n region?: string;\n websocketApiId?: string;\n websocketApiUrl?: string;\n
|
|
1
|
+
{"version":3,"names":["createAbstraction","ApiStackOutputService"],"sources":["ApiStackOutputService.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/project/abstractions/createAbstraction.js\";\n\nexport interface IApiStackOutput {\n apiDomain?: string;\n apiUrl?: string;\n graphqlLambdaRole?: string;\n graphqlLambdaRoleName?: string;\n cognitoAppClientId?: string;\n cognitoUserPoolId?: string;\n cognitoUserPoolPasswordPolicy?: string;\n dynamoDbTable?: string;\n region?: string;\n websocketApiId?: string;\n websocketApiUrl?: string;\n graphqlLambdaName?: string;\n backgroundTaskLambdaArn?: string;\n backgroundTaskStepFunctionArn?: string;\n fileManagerManageLambdaArn?: string;\n fileManagerManageLambdaRole?: string;\n fileManagerManageLambdaRoleName?: string;\n fileManagerDownloadLambdaArn?: string;\n [key: string]: any;\n}\n\nexport interface IApiStackOutputService {\n execute<TOutput extends IApiStackOutput = IApiStackOutput>(): Promise<TOutput | null>;\n}\n\nexport const ApiStackOutputService =\n createAbstraction<IApiStackOutputService>(\"ApiStackOutputService\");\n\nexport namespace ApiStackOutputService {\n export type Interface = IApiStackOutputService;\n export type Output = IApiStackOutput;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,mDAAmD;AA4BrF,OAAO,MAAMC,qBAAqB,GAC9BD,iBAAiB,CAAyB,uBAAuB,CAAC","ignoreList":[]}
|
package/admin.d.ts
CHANGED
|
@@ -1,22 +1,10 @@
|
|
|
1
1
|
export declare const Admin: {
|
|
2
2
|
Extension: import("@webiny/project/defineExtension/defineExtension").ExtensionComponent<import("zod").ZodObject<{
|
|
3
|
-
src: import("zod").
|
|
3
|
+
src: import("zod").ZodPipe<import("zod").ZodString, import("zod").ZodTransform<string, string>>;
|
|
4
4
|
exportName: import("zod").ZodOptional<import("zod").ZodString>;
|
|
5
|
-
},
|
|
6
|
-
src: string;
|
|
7
|
-
exportName?: string | undefined;
|
|
8
|
-
}, {
|
|
9
|
-
src: string;
|
|
10
|
-
exportName?: string | undefined;
|
|
11
|
-
}>>;
|
|
5
|
+
}, import("zod/v4/core").$strip>>;
|
|
12
6
|
BuildParam: import("@webiny/project/defineExtension/defineExtension").ExtensionComponent<import("zod").ZodObject<{
|
|
13
7
|
paramName: import("zod").ZodString;
|
|
14
|
-
value: import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodAny>, import("zod").ZodArray<import("zod").ZodAny
|
|
15
|
-
},
|
|
16
|
-
value: string | number | boolean | any[] | Record<string, any>;
|
|
17
|
-
paramName: string;
|
|
18
|
-
}, {
|
|
19
|
-
value: string | number | boolean | any[] | Record<string, any>;
|
|
20
|
-
paramName: string;
|
|
21
|
-
}>>;
|
|
8
|
+
value: import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodAny>, import("zod").ZodArray<import("zod").ZodAny>, import("zod").ZodNumber, import("zod").ZodBoolean]>;
|
|
9
|
+
}, import("zod/v4/core").$strip>>;
|
|
22
10
|
};
|
package/api.d.ts
CHANGED
|
@@ -1,22 +1,10 @@
|
|
|
1
1
|
export declare const Api: {
|
|
2
2
|
Extension: import("@webiny/project/defineExtension/defineExtension").ExtensionComponent<import("zod").ZodObject<{
|
|
3
|
-
src: import("zod").
|
|
3
|
+
src: import("zod").ZodPipe<import("zod").ZodString, import("zod").ZodTransform<string, string>>;
|
|
4
4
|
exportName: import("zod").ZodOptional<import("zod").ZodString>;
|
|
5
|
-
},
|
|
6
|
-
src: string;
|
|
7
|
-
exportName?: string | undefined;
|
|
8
|
-
}, {
|
|
9
|
-
src: string;
|
|
10
|
-
exportName?: string | undefined;
|
|
11
|
-
}>>;
|
|
5
|
+
}, import("zod/v4/core").$strip>>;
|
|
12
6
|
BuildParam: import("@webiny/project/defineExtension/defineExtension").ExtensionComponent<import("zod").ZodObject<{
|
|
13
7
|
paramName: import("zod").ZodString;
|
|
14
|
-
value: import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodAny>, import("zod").ZodArray<import("zod").ZodAny
|
|
15
|
-
},
|
|
16
|
-
value: string | number | boolean | any[] | Record<string, any>;
|
|
17
|
-
paramName: string;
|
|
18
|
-
}, {
|
|
19
|
-
value: string | number | boolean | any[] | Record<string, any>;
|
|
20
|
-
paramName: string;
|
|
21
|
-
}>>;
|
|
8
|
+
value: import("zod").ZodUnion<readonly [import("zod").ZodString, import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodAny>, import("zod").ZodArray<import("zod").ZodAny>, import("zod").ZodNumber, import("zod").ZodBoolean]>;
|
|
9
|
+
}, import("zod/v4/core").$strip>>;
|
|
22
10
|
};
|
package/apps/createApiApp.d.ts
CHANGED
|
@@ -44,9 +44,6 @@ export declare function createApiApp(): {
|
|
|
44
44
|
websocketApiUrl: import("@pulumi/pulumi").Output<string>;
|
|
45
45
|
};
|
|
46
46
|
cloudfront: import("@webiny/pulumi/PulumiAppResource").PulumiAppResource<typeof import("@pulumi/aws/cloudfront/distribution").Distribution>;
|
|
47
|
-
migration: {
|
|
48
|
-
function: import("@webiny/pulumi/PulumiAppResource").PulumiAppResource<typeof import("@pulumi/aws/lambda/function").Function>;
|
|
49
|
-
};
|
|
50
47
|
backgroundTask: {
|
|
51
48
|
backgroundTask: import("@webiny/pulumi/PulumiAppResource").PulumiAppResource<typeof import("@pulumi/aws/lambda/function").Function>;
|
|
52
49
|
stepFunction: import("@webiny/pulumi/PulumiAppResource").PulumiAppResource<typeof import("@pulumi/aws/sfn/stateMachine").StateMachine>;
|
package/cli.d.ts
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
export declare const Cli: {
|
|
2
2
|
Command: import("@webiny/project/defineExtension").ExtensionComponent<import("zod").ZodObject<{
|
|
3
|
-
src: import("zod").
|
|
4
|
-
},
|
|
5
|
-
src: string;
|
|
6
|
-
}, {
|
|
7
|
-
src: string;
|
|
8
|
-
}>>;
|
|
3
|
+
src: import("zod").ZodPipe<import("zod").ZodString, import("zod").ZodTransform<string, string>>;
|
|
4
|
+
}, import("zod/v4/core").$strip>>;
|
|
9
5
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { ApiStackOutputService as ApiStackOutput, CoreStackOutputService as CoreStackOutput, ApiGqlClient, AdminStackOutputService as AdminStackOutput, InvokeLambdaFunction } from "
|
|
1
|
+
export { ApiStackOutputService as ApiStackOutput, CoreStackOutputService as CoreStackOutput, ApiGqlClient, AdminStackOutputService as AdminStackOutput, InvokeLambdaFunction } from "../abstractions/index.js";
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { ApiStackOutputService as ApiStackOutput, CoreStackOutputService as CoreStackOutput, ApiGqlClient, AdminStackOutputService as AdminStackOutput, InvokeLambdaFunction } from "
|
|
1
|
+
export { ApiStackOutputService as ApiStackOutput, CoreStackOutputService as CoreStackOutput, ApiGqlClient, AdminStackOutputService as AdminStackOutput, InvokeLambdaFunction } from "../abstractions/index.js";
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=infra.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ApiStackOutputService","ApiStackOutput","CoreStackOutputService","CoreStackOutput","ApiGqlClient","AdminStackOutputService","AdminStackOutput","InvokeLambdaFunction"],"sources":["
|
|
1
|
+
{"version":3,"names":["ApiStackOutputService","ApiStackOutput","CoreStackOutputService","CoreStackOutput","ApiGqlClient","AdminStackOutputService","AdminStackOutput","InvokeLambdaFunction"],"sources":["infra.ts"],"sourcesContent":["export {\n ApiStackOutputService as ApiStackOutput,\n CoreStackOutputService as CoreStackOutput,\n ApiGqlClient,\n AdminStackOutputService as AdminStackOutput,\n InvokeLambdaFunction\n} from \"~/abstractions/index.js\";\n"],"mappings":"AAAA,SACIA,qBAAqB,IAAIC,cAAc,EACvCC,sBAAsB,IAAIC,eAAe,EACzCC,YAAY,EACZC,uBAAuB,IAAIC,gBAAgB,EAC3CC,oBAAoB","ignoreList":[]}
|
|
@@ -1,11 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export declare const ApiLambdaFunction: import("@webiny/project/defineExtension/defineExtension").ExtensionComponent<z.ZodObject<{
|
|
3
|
-
functionSrc: z.
|
|
4
|
-
pulumiSrc: z.
|
|
5
|
-
},
|
|
6
|
-
functionSrc: string;
|
|
7
|
-
pulumiSrc: string;
|
|
8
|
-
}, {
|
|
9
|
-
functionSrc: string;
|
|
10
|
-
pulumiSrc: string;
|
|
11
|
-
}>>;
|
|
3
|
+
functionSrc: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
4
|
+
pulumiSrc: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
|
|
5
|
+
}, z.core.$strip>>;
|
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export declare const AwsDefaultRegion: import("@webiny/project/defineExtension/defineExtension").ExtensionComponent<z.ZodObject<{
|
|
3
3
|
name: z.ZodString;
|
|
4
|
-
},
|
|
5
|
-
name: string;
|
|
6
|
-
}, {
|
|
7
|
-
name: string;
|
|
8
|
-
}>>;
|
|
4
|
+
}, z.core.$strip>>;
|
|
@@ -4,14 +4,4 @@ export declare const OpenSearch: import("@webiny/project/defineExtension/defineE
|
|
|
4
4
|
domainName: z.ZodOptional<z.ZodString>;
|
|
5
5
|
indexPrefix: z.ZodOptional<z.ZodString>;
|
|
6
6
|
sharedIndexes: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
7
|
-
},
|
|
8
|
-
enabled?: boolean | undefined;
|
|
9
|
-
domainName?: string | undefined;
|
|
10
|
-
indexPrefix?: string | undefined;
|
|
11
|
-
sharedIndexes?: boolean | undefined;
|
|
12
|
-
}, {
|
|
13
|
-
enabled?: boolean | undefined;
|
|
14
|
-
domainName?: string | undefined;
|
|
15
|
-
indexPrefix?: string | undefined;
|
|
16
|
-
sharedIndexes?: boolean | undefined;
|
|
17
|
-
}>>;
|
|
7
|
+
}, z.core.$strip>>;
|
|
@@ -66,6 +66,10 @@ class AutoInstallAfterApiDeployImpl {
|
|
|
66
66
|
return;
|
|
67
67
|
}
|
|
68
68
|
this.ui.info("Auto-installing...");
|
|
69
|
+
/**
|
|
70
|
+
* Type Error introduced with Zod v4. V3 had any type.
|
|
71
|
+
*/
|
|
72
|
+
// @ts-expect-error
|
|
69
73
|
const adminUser = config.adminUser || {
|
|
70
74
|
firstName: "John",
|
|
71
75
|
lastName: "Smith",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ApiAfterDeploy","UiService","LoggerService","GetProjectConfigService","ApiGqlClient","IS_INSTALLED_QUERY","INSTALL_MUTATION","AutoInstallAfterApiDeployImpl","constructor","apiGqlClient","ui","getProjectConfig","logger","execute","params","preview","projectConfig","adminAutoInstallExtensions","extensionsByType","length","config","info","isInstalledResponse","query","data","system","isSystemInstalled","error","warning","message","adminUser","firstName","lastName","email","password","variables","installationInput","app","installResponse","mutation","installSystem","code","Error","success","AutoInstallAfterApiDeploy","createImplementation","implementation","dependencies"],"sources":["AutoInstallAfterApiDeploy.ts"],"sourcesContent":["import { ApiAfterDeploy } from \"@webiny/project/abstractions/index.js\";\nimport { UiService } from \"@webiny/project/abstractions/services/UiService.js\";\nimport { LoggerService } from \"@webiny/project/abstractions/services/LoggerService.js\";\nimport { GetProjectConfigService } from \"@webiny/project/abstractions\";\nimport { ApiGqlClient } from \"~/abstractions/ApiGqlClient.js\";\n\nconst IS_INSTALLED_QUERY = `\n query IsSystemInstalled {\n system {\n isSystemInstalled {\n data\n error {\n message\n code\n }\n }\n }\n }\n`;\n\nconst INSTALL_MUTATION = `\n mutation InstallSystem($installationInput: JSON!) {\n system {\n installSystem(installationInput: $installationInput) {\n data\n error {\n message\n code\n }\n }\n }\n }\n`;\n\ninterface IsInstalledResponse {\n system: {\n isSystemInstalled: {\n data: boolean;\n error?: {\n message: string;\n code: string;\n };\n };\n };\n}\n\ninterface InstallResponse {\n system: {\n installSystem: {\n data: boolean;\n error?: {\n message: string;\n code: string;\n };\n };\n };\n}\n\nclass AutoInstallAfterApiDeployImpl implements ApiAfterDeploy.Interface {\n constructor(\n private apiGqlClient: ApiGqlClient.Interface,\n private ui: UiService.Interface,\n private getProjectConfig: GetProjectConfigService.Interface,\n private logger: LoggerService.Interface\n ) {}\n\n async execute(params: ApiAfterDeploy.Params): Promise<void> {\n if (params.preview) {\n // Skip auto-install on preview deployments\n return;\n }\n\n const projectConfig = await this.getProjectConfig.execute();\n const adminAutoInstallExtensions = projectConfig.extensionsByType(\"Project/AutoInstall\");\n\n if (adminAutoInstallExtensions.length === 0) {\n return;\n }\n\n const config = adminAutoInstallExtensions[0].params;\n\n // Check if system is already installed\n this.ui.info(\"Checking if system is already installed...\");\n\n try {\n const isInstalledResponse = await this.apiGqlClient.query<IsInstalledResponse>({\n query: IS_INSTALLED_QUERY\n });\n\n if (isInstalledResponse.data?.system.isSystemInstalled.data === true) {\n this.ui.info(\"System is already installed, skipping auto-install.\");\n return;\n }\n } catch (error: any) {\n this.logger.error(\"Failed to check installation status\", { error });\n this.ui.warning(`Could not check installation status: ${error.message}`);\n return;\n }\n\n this.ui.info(\"Auto-installing...\");\n\n const adminUser = config.adminUser || {\n firstName: \"John\",\n lastName: \"Smith\",\n email: \"admin@webiny.com\",\n password: \"12345678\"\n };\n\n const variables = {\n installationInput: [\n {\n app: \"Cognito\",\n data: adminUser\n }\n ]\n };\n\n const installResponse = await this.apiGqlClient.mutation<InstallResponse>({\n mutation: INSTALL_MUTATION,\n variables\n });\n\n if (installResponse.data?.system.installSystem.error) {\n const { message, code } = installResponse.data.system.installSystem.error;\n this.logger.error(\"Installation failed\", { message, code });\n this.ui.error(`Installation failed: ${message} (${code})`);\n throw new Error(message);\n }\n\n this.ui.success(\"System installed successfully!\");\n this.ui.info(\"Admin credentials:\");\n this.ui.info(` Email: ${adminUser.email}`);\n this.ui.info(` Password: ${adminUser.password}`);\n }\n}\n\nexport const AutoInstallAfterApiDeploy = ApiAfterDeploy.createImplementation({\n implementation: AutoInstallAfterApiDeployImpl,\n dependencies: [ApiGqlClient, UiService, GetProjectConfigService, LoggerService]\n});\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,uCAAuC;AACtE,SAASC,SAAS,QAAQ,oDAAoD;AAC9E,SAASC,aAAa,QAAQ,wDAAwD;AACtF,SAASC,uBAAuB,QAAQ,8BAA8B;AACtE,SAASC,YAAY;AAErB,MAAMC,kBAAkB,GAAG;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,MAAMC,gBAAgB,GAAG;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AA0BD,MAAMC,6BAA6B,CAAqC;EACpEC,WAAWA,CACCC,YAAoC,EACpCC,EAAuB,EACvBC,gBAAmD,EACnDC,MAA+B,EACzC;IAAA,KAJUH,YAAoC,GAApCA,YAAoC;IAAA,KACpCC,EAAuB,GAAvBA,EAAuB;IAAA,KACvBC,gBAAmD,GAAnDA,gBAAmD;IAAA,KACnDC,MAA+B,GAA/BA,MAA+B;EACxC;EAEH,MAAMC,OAAOA,CAACC,MAA6B,EAAiB;IACxD,IAAIA,MAAM,CAACC,OAAO,EAAE;MAChB;MACA;IACJ;IAEA,MAAMC,aAAa,GAAG,MAAM,IAAI,CAACL,gBAAgB,CAACE,OAAO,CAAC,CAAC;IAC3D,MAAMI,0BAA0B,GAAGD,aAAa,CAACE,gBAAgB,CAAC,qBAAqB,CAAC;IAExF,IAAID,0BAA0B,CAACE,MAAM,KAAK,CAAC,EAAE;MACzC;IACJ;IAEA,MAAMC,MAAM,GAAGH,0BAA0B,CAAC,CAAC,CAAC,CAACH,MAAM;;IAEnD;IACA,IAAI,CAACJ,EAAE,CAACW,IAAI,CAAC,4CAA4C,CAAC;IAE1D,IAAI;MACA,MAAMC,mBAAmB,GAAG,MAAM,IAAI,CAACb,YAAY,CAACc,KAAK,CAAsB;QAC3EA,KAAK,EAAElB;MACX,CAAC,CAAC;MAEF,IAAIiB,mBAAmB,CAACE,IAAI,EAAEC,MAAM,CAACC,iBAAiB,CAACF,IAAI,KAAK,IAAI,EAAE;QAClE,IAAI,CAACd,EAAE,CAACW,IAAI,CAAC,qDAAqD,CAAC;QACnE;MACJ;IACJ,CAAC,CAAC,OAAOM,KAAU,EAAE;MACjB,IAAI,CAACf,MAAM,CAACe,KAAK,CAAC,qCAAqC,EAAE;QAAEA;MAAM,CAAC,CAAC;MACnE,IAAI,CAACjB,EAAE,CAACkB,OAAO,CAAC,wCAAwCD,KAAK,CAACE,OAAO,EAAE,CAAC;MACxE;IACJ;IAEA,IAAI,CAACnB,EAAE,CAACW,IAAI,CAAC,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"names":["ApiAfterDeploy","UiService","LoggerService","GetProjectConfigService","ApiGqlClient","IS_INSTALLED_QUERY","INSTALL_MUTATION","AutoInstallAfterApiDeployImpl","constructor","apiGqlClient","ui","getProjectConfig","logger","execute","params","preview","projectConfig","adminAutoInstallExtensions","extensionsByType","length","config","info","isInstalledResponse","query","data","system","isSystemInstalled","error","warning","message","adminUser","firstName","lastName","email","password","variables","installationInput","app","installResponse","mutation","installSystem","code","Error","success","AutoInstallAfterApiDeploy","createImplementation","implementation","dependencies"],"sources":["AutoInstallAfterApiDeploy.ts"],"sourcesContent":["import { ApiAfterDeploy } from \"@webiny/project/abstractions/index.js\";\nimport { UiService } from \"@webiny/project/abstractions/services/UiService.js\";\nimport { LoggerService } from \"@webiny/project/abstractions/services/LoggerService.js\";\nimport { GetProjectConfigService } from \"@webiny/project/abstractions\";\nimport { ApiGqlClient } from \"~/abstractions/ApiGqlClient.js\";\n\nconst IS_INSTALLED_QUERY = `\n query IsSystemInstalled {\n system {\n isSystemInstalled {\n data\n error {\n message\n code\n }\n }\n }\n }\n`;\n\nconst INSTALL_MUTATION = `\n mutation InstallSystem($installationInput: JSON!) {\n system {\n installSystem(installationInput: $installationInput) {\n data\n error {\n message\n code\n }\n }\n }\n }\n`;\n\ninterface IsInstalledResponse {\n system: {\n isSystemInstalled: {\n data: boolean;\n error?: {\n message: string;\n code: string;\n };\n };\n };\n}\n\ninterface InstallResponse {\n system: {\n installSystem: {\n data: boolean;\n error?: {\n message: string;\n code: string;\n };\n };\n };\n}\n\nclass AutoInstallAfterApiDeployImpl implements ApiAfterDeploy.Interface {\n constructor(\n private apiGqlClient: ApiGqlClient.Interface,\n private ui: UiService.Interface,\n private getProjectConfig: GetProjectConfigService.Interface,\n private logger: LoggerService.Interface\n ) {}\n\n async execute(params: ApiAfterDeploy.Params): Promise<void> {\n if (params.preview) {\n // Skip auto-install on preview deployments\n return;\n }\n\n const projectConfig = await this.getProjectConfig.execute();\n const adminAutoInstallExtensions = projectConfig.extensionsByType(\"Project/AutoInstall\");\n\n if (adminAutoInstallExtensions.length === 0) {\n return;\n }\n\n const config = adminAutoInstallExtensions[0].params;\n\n // Check if system is already installed\n this.ui.info(\"Checking if system is already installed...\");\n\n try {\n const isInstalledResponse = await this.apiGqlClient.query<IsInstalledResponse>({\n query: IS_INSTALLED_QUERY\n });\n\n if (isInstalledResponse.data?.system.isSystemInstalled.data === true) {\n this.ui.info(\"System is already installed, skipping auto-install.\");\n return;\n }\n } catch (error: any) {\n this.logger.error(\"Failed to check installation status\", { error });\n this.ui.warning(`Could not check installation status: ${error.message}`);\n return;\n }\n\n this.ui.info(\"Auto-installing...\");\n /**\n * Type Error introduced with Zod v4. V3 had any type.\n */\n // @ts-expect-error\n const adminUser = config.adminUser || {\n firstName: \"John\",\n lastName: \"Smith\",\n email: \"admin@webiny.com\",\n password: \"12345678\"\n };\n\n const variables = {\n installationInput: [\n {\n app: \"Cognito\",\n data: adminUser\n }\n ]\n };\n\n const installResponse = await this.apiGqlClient.mutation<InstallResponse>({\n mutation: INSTALL_MUTATION,\n variables\n });\n\n if (installResponse.data?.system.installSystem.error) {\n const { message, code } = installResponse.data.system.installSystem.error;\n this.logger.error(\"Installation failed\", { message, code });\n this.ui.error(`Installation failed: ${message} (${code})`);\n throw new Error(message);\n }\n\n this.ui.success(\"System installed successfully!\");\n this.ui.info(\"Admin credentials:\");\n this.ui.info(` Email: ${adminUser.email}`);\n this.ui.info(` Password: ${adminUser.password}`);\n }\n}\n\nexport const AutoInstallAfterApiDeploy = ApiAfterDeploy.createImplementation({\n implementation: AutoInstallAfterApiDeployImpl,\n dependencies: [ApiGqlClient, UiService, GetProjectConfigService, LoggerService]\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,29 +5,5 @@ export declare const AutoInstall: import("@webiny/project/defineExtension/define
|
|
|
5
5
|
lastName: z.ZodString;
|
|
6
6
|
email: z.ZodString;
|
|
7
7
|
password: z.ZodString;
|
|
8
|
-
},
|
|
9
|
-
|
|
10
|
-
lastName: string;
|
|
11
|
-
email: string;
|
|
12
|
-
password: string;
|
|
13
|
-
}, {
|
|
14
|
-
firstName: string;
|
|
15
|
-
lastName: string;
|
|
16
|
-
email: string;
|
|
17
|
-
password: string;
|
|
18
|
-
}>;
|
|
19
|
-
}, "strip", z.ZodTypeAny, {
|
|
20
|
-
adminUser: {
|
|
21
|
-
firstName: string;
|
|
22
|
-
lastName: string;
|
|
23
|
-
email: string;
|
|
24
|
-
password: string;
|
|
25
|
-
};
|
|
26
|
-
}, {
|
|
27
|
-
adminUser: {
|
|
28
|
-
firstName: string;
|
|
29
|
-
lastName: string;
|
|
30
|
-
email: string;
|
|
31
|
-
password: string;
|
|
32
|
-
};
|
|
33
|
-
}>>;
|
|
8
|
+
}, z.core.$strip>;
|
|
9
|
+
}, z.core.$strip>>;
|
|
@@ -45,7 +45,7 @@ class BuildAppWorkspaceImpl {
|
|
|
45
45
|
const globalCssPath = path.join(publicFolder, "global.css");
|
|
46
46
|
let globalCss = "";
|
|
47
47
|
if (fs.existsSync(globalCssPath)) {
|
|
48
|
-
const relativePath = path.relative(path.dirname(indexTsx), globalCssPath);
|
|
48
|
+
const relativePath = path.relative(path.dirname(indexTsx), globalCssPath).replace(/\\/g, "/");
|
|
49
49
|
globalCss = `import "${relativePath}";`;
|
|
50
50
|
} else {
|
|
51
51
|
console.log("globalCssPath does not exist");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["path","fs","replaceInPath","BuildAppWorkspaceService","GetApp","LoggerService","getTemplatesFolderPath","wait","Promise","resolve","setTimeout","BuildAppWorkspaceImpl","constructor","getApp","logger","decoratee","execute","appName","options","app","paths","workspaceFolder","existsSync","forceRebuild","debug","info","templatesFolderPath","appWorkspaceFolderPath","toString","appTemplateFolderPath","join","name","cpSync","recursive","publicFolder","process","cwd","indexTsx","globalCssPath","globalCss","relativePath","relative","dirname","console","log","find","replaceWith","BuildAppWorkspace","createDecorator","decorator","dependencies"],"sources":["BuildAppWorkspace.ts"],"sourcesContent":["import path from \"path\";\nimport fs from \"fs\";\nimport { replaceInPath } from \"replace-in-path\";\nimport {\n BuildAppWorkspaceService,\n GetApp,\n LoggerService\n} from \"@webiny/project/abstractions/index.js\";\nimport { getTemplatesFolderPath } from \"~/utils/index.js\";\n\nconst wait = () => new Promise(resolve => setTimeout(resolve, 10));\n\nclass BuildAppWorkspaceImpl implements BuildAppWorkspaceService.Interface {\n constructor(\n private getApp: GetApp.Interface,\n private logger: LoggerService.Interface,\n private decoratee: BuildAppWorkspaceService.Interface\n ) {}\n\n async execute(appName: GetApp.AppName, options: BuildAppWorkspaceService.Options = {}) {\n await this.decoratee.execute(appName, options);\n\n const app = this.getApp.execute(appName);\n\n if (app.paths.workspaceFolder.existsSync()) {\n if (options.forceRebuild !== true) {\n this.logger.debug(\n { appName },\n \"App workspace already exists, skipping rebuild (project-aws).\"\n );\n return;\n }\n }\n\n this.logger.info({ appName, options }, \"Building app workspace (project-aws)...\");\n\n const templatesFolderPath = getTemplatesFolderPath();\n const appWorkspaceFolderPath = app.paths.workspaceFolder.toString();\n const appTemplateFolderPath = path.join(templatesFolderPath, \"appTemplates\", app.name);\n\n // Create app.\n fs.cpSync(appTemplateFolderPath, appWorkspaceFolderPath, { recursive: true });\n\n // Copy `public` folder into `admin` app workspace folder.\n if (appName === \"admin\") {\n const publicFolder = path.join(process.cwd(), \"public\");\n fs.cpSync(publicFolder, path.join(appWorkspaceFolderPath, \"public\"), {\n recursive: true\n });\n\n await wait();\n\n const indexTsx = app.paths.workspaceFolder.join(\"src\", \"index.tsx\").toString();\n const globalCssPath = path.join(publicFolder, \"global.css\");\n\n let globalCss = \"\";\n\n if (fs.existsSync(globalCssPath)) {\n const relativePath = path.relative(path.dirname(indexTsx), globalCssPath);\n globalCss = `import \"${relativePath}\";`;\n } else {\n console.log(\"globalCssPath does not exist\");\n }\n\n replaceInPath(indexTsx, {\n find: \"{GLOBAL_CSS}\",\n replaceWith: globalCss\n });\n }\n\n this.logger.info(\"App workspace built successfully (project-aws).\");\n }\n}\n\nexport const BuildAppWorkspace = BuildAppWorkspaceService.createDecorator({\n decorator: BuildAppWorkspaceImpl,\n dependencies: [GetApp, LoggerService]\n});\n"],"mappings":"AAAA,OAAOA,IAAI,MAAM,MAAM;AACvB,OAAOC,EAAE,MAAM,IAAI;AACnB,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SACIC,wBAAwB,EACxBC,MAAM,EACNC,aAAa,QACV,uCAAuC;AAC9C,SAASC,sBAAsB;AAE/B,MAAMC,IAAI,GAAGA,CAAA,KAAM,IAAIC,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,EAAE,CAAC,CAAC;AAElE,MAAME,qBAAqB,CAA+C;EACtEC,WAAWA,CACCC,MAAwB,EACxBC,MAA+B,EAC/BC,SAA6C,EACvD;IAAA,KAHUF,MAAwB,GAAxBA,MAAwB;IAAA,KACxBC,MAA+B,GAA/BA,MAA+B;IAAA,KAC/BC,SAA6C,GAA7CA,SAA6C;EACtD;EAEH,MAAMC,OAAOA,CAACC,OAAuB,EAAEC,OAAyC,GAAG,CAAC,CAAC,EAAE;IACnF,MAAM,IAAI,CAACH,SAAS,CAACC,OAAO,CAACC,OAAO,EAAEC,OAAO,CAAC;IAE9C,MAAMC,GAAG,GAAG,IAAI,CAACN,MAAM,CAACG,OAAO,CAACC,OAAO,CAAC;IAExC,IAAIE,GAAG,CAACC,KAAK,CAACC,eAAe,CAACC,UAAU,CAAC,CAAC,EAAE;MACxC,IAAIJ,OAAO,CAACK,YAAY,KAAK,IAAI,EAAE;QAC/B,IAAI,CAACT,MAAM,CAACU,KAAK,CACb;UAAEP;QAAQ,CAAC,EACX,+DACJ,CAAC;QACD;MACJ;IACJ;IAEA,IAAI,CAACH,MAAM,CAACW,IAAI,CAAC;MAAER,OAAO;MAAEC;IAAQ,CAAC,EAAE,yCAAyC,CAAC;IAEjF,MAAMQ,mBAAmB,GAAGpB,sBAAsB,CAAC,CAAC;IACpD,MAAMqB,sBAAsB,GAAGR,GAAG,CAACC,KAAK,CAACC,eAAe,CAACO,QAAQ,CAAC,CAAC;IACnE,MAAMC,qBAAqB,GAAG7B,IAAI,CAAC8B,IAAI,CAACJ,mBAAmB,EAAE,cAAc,EAAEP,GAAG,CAACY,IAAI,CAAC;;IAEtF;IACA9B,EAAE,CAAC+B,MAAM,CAACH,qBAAqB,EAAEF,sBAAsB,EAAE;MAAEM,SAAS,EAAE;IAAK,CAAC,CAAC;;IAE7E;IACA,IAAIhB,OAAO,KAAK,OAAO,EAAE;MACrB,MAAMiB,YAAY,GAAGlC,IAAI,CAAC8B,IAAI,CAACK,OAAO,CAACC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC;MACvDnC,EAAE,CAAC+B,MAAM,CAACE,YAAY,EAAElC,IAAI,CAAC8B,IAAI,CAACH,sBAAsB,EAAE,QAAQ,CAAC,EAAE;QACjEM,SAAS,EAAE;MACf,CAAC,CAAC;MAEF,MAAM1B,IAAI,CAAC,CAAC;MAEZ,MAAM8B,QAAQ,GAAGlB,GAAG,CAACC,KAAK,CAACC,eAAe,CAACS,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAACF,QAAQ,CAAC,CAAC;MAC9E,MAAMU,aAAa,GAAGtC,IAAI,CAAC8B,IAAI,CAACI,YAAY,EAAE,YAAY,CAAC;MAE3D,IAAIK,SAAS,GAAG,EAAE;MAElB,IAAItC,EAAE,CAACqB,UAAU,CAACgB,aAAa,CAAC,EAAE;QAC9B,MAAME,YAAY,GAAGxC,IAAI,
|
|
1
|
+
{"version":3,"names":["path","fs","replaceInPath","BuildAppWorkspaceService","GetApp","LoggerService","getTemplatesFolderPath","wait","Promise","resolve","setTimeout","BuildAppWorkspaceImpl","constructor","getApp","logger","decoratee","execute","appName","options","app","paths","workspaceFolder","existsSync","forceRebuild","debug","info","templatesFolderPath","appWorkspaceFolderPath","toString","appTemplateFolderPath","join","name","cpSync","recursive","publicFolder","process","cwd","indexTsx","globalCssPath","globalCss","relativePath","relative","dirname","replace","console","log","find","replaceWith","BuildAppWorkspace","createDecorator","decorator","dependencies"],"sources":["BuildAppWorkspace.ts"],"sourcesContent":["import path from \"path\";\nimport fs from \"fs\";\nimport { replaceInPath } from \"replace-in-path\";\nimport {\n BuildAppWorkspaceService,\n GetApp,\n LoggerService\n} from \"@webiny/project/abstractions/index.js\";\nimport { getTemplatesFolderPath } from \"~/utils/index.js\";\n\nconst wait = () => new Promise(resolve => setTimeout(resolve, 10));\n\nclass BuildAppWorkspaceImpl implements BuildAppWorkspaceService.Interface {\n constructor(\n private getApp: GetApp.Interface,\n private logger: LoggerService.Interface,\n private decoratee: BuildAppWorkspaceService.Interface\n ) {}\n\n async execute(appName: GetApp.AppName, options: BuildAppWorkspaceService.Options = {}) {\n await this.decoratee.execute(appName, options);\n\n const app = this.getApp.execute(appName);\n\n if (app.paths.workspaceFolder.existsSync()) {\n if (options.forceRebuild !== true) {\n this.logger.debug(\n { appName },\n \"App workspace already exists, skipping rebuild (project-aws).\"\n );\n return;\n }\n }\n\n this.logger.info({ appName, options }, \"Building app workspace (project-aws)...\");\n\n const templatesFolderPath = getTemplatesFolderPath();\n const appWorkspaceFolderPath = app.paths.workspaceFolder.toString();\n const appTemplateFolderPath = path.join(templatesFolderPath, \"appTemplates\", app.name);\n\n // Create app.\n fs.cpSync(appTemplateFolderPath, appWorkspaceFolderPath, { recursive: true });\n\n // Copy `public` folder into `admin` app workspace folder.\n if (appName === \"admin\") {\n const publicFolder = path.join(process.cwd(), \"public\");\n fs.cpSync(publicFolder, path.join(appWorkspaceFolderPath, \"public\"), {\n recursive: true\n });\n\n await wait();\n\n const indexTsx = app.paths.workspaceFolder.join(\"src\", \"index.tsx\").toString();\n const globalCssPath = path.join(publicFolder, \"global.css\");\n\n let globalCss = \"\";\n\n if (fs.existsSync(globalCssPath)) {\n const relativePath = path\n .relative(path.dirname(indexTsx), globalCssPath)\n .replace(/\\\\/g, \"/\");\n globalCss = `import \"${relativePath}\";`;\n } else {\n console.log(\"globalCssPath does not exist\");\n }\n\n replaceInPath(indexTsx, {\n find: \"{GLOBAL_CSS}\",\n replaceWith: globalCss\n });\n }\n\n this.logger.info(\"App workspace built successfully (project-aws).\");\n }\n}\n\nexport const BuildAppWorkspace = BuildAppWorkspaceService.createDecorator({\n decorator: BuildAppWorkspaceImpl,\n dependencies: [GetApp, LoggerService]\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { BeforeDeploy, LoggerService } from "@webiny/project/abstractions/index.js";
|
|
2
|
+
declare class EnsureAwsCredentialsBeforeDeployImpl implements BeforeDeploy.Interface {
|
|
3
|
+
private loggerService;
|
|
4
|
+
constructor(loggerService: LoggerService.Interface);
|
|
5
|
+
execute(): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
export declare const EnsureAwsCredentialsBeforeDeploy: typeof EnsureAwsCredentialsBeforeDeployImpl & {
|
|
8
|
+
__abstraction: import("@webiny/di").Abstraction<import("@webiny/project/abstractions/index.js").IBeforeDeploy>;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { BeforeDeploy, LoggerService } from "@webiny/project/abstractions/index.js";
|
|
2
|
+
import { GracefulError } from "@webiny/project";
|
|
3
|
+
import { STS } from "@webiny/aws-sdk/client-sts";
|
|
4
|
+
class EnsureAwsCredentialsBeforeDeployImpl {
|
|
5
|
+
constructor(loggerService) {
|
|
6
|
+
this.loggerService = loggerService;
|
|
7
|
+
}
|
|
8
|
+
async execute() {
|
|
9
|
+
process.env.AWS_SDK_LOAD_CONFIG = "true";
|
|
10
|
+
const sts = new STS({});
|
|
11
|
+
try {
|
|
12
|
+
await sts.getCallerIdentity({});
|
|
13
|
+
} catch (err) {
|
|
14
|
+
this.loggerService.debug({
|
|
15
|
+
err
|
|
16
|
+
}, "AWS credentials error.");
|
|
17
|
+
throw GracefulError.from(new Error("AWS credentials are not configured correctly."), 'No valid AWS credentials were found. Run "aws configure" or set the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables before deploying. Learn more: https://webiny.link/aws-credentials');
|
|
18
|
+
}
|
|
19
|
+
const region = await sts.config.region();
|
|
20
|
+
if (!region) {
|
|
21
|
+
throw GracefulError.from(new Error("AWS region is not defined."), "No AWS region is set. Define the AWS_REGION environment variable or set a default region in your AWS profile. Learn more: https://webiny.link/aws-region");
|
|
22
|
+
}
|
|
23
|
+
process.env.AWS_REGION = region;
|
|
24
|
+
const {
|
|
25
|
+
accessKeyId
|
|
26
|
+
} = await sts.config.credentials();
|
|
27
|
+
const profile = process.env.AWS_PROFILE;
|
|
28
|
+
if (profile) {
|
|
29
|
+
this.loggerService.info(`Using profile "${profile}" in "${region}" region.`);
|
|
30
|
+
} else {
|
|
31
|
+
this.loggerService.info(`Using access key ID "${accessKeyId}" in "${region}" region.`);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export const EnsureAwsCredentialsBeforeDeploy = BeforeDeploy.createImplementation({
|
|
36
|
+
implementation: EnsureAwsCredentialsBeforeDeployImpl,
|
|
37
|
+
dependencies: [LoggerService]
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
//# sourceMappingURL=EnsureAwsCredentialsBeforeDeploy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["BeforeDeploy","LoggerService","GracefulError","STS","EnsureAwsCredentialsBeforeDeployImpl","constructor","loggerService","execute","process","env","AWS_SDK_LOAD_CONFIG","sts","getCallerIdentity","err","debug","from","Error","region","config","AWS_REGION","accessKeyId","credentials","profile","AWS_PROFILE","info","EnsureAwsCredentialsBeforeDeploy","createImplementation","implementation","dependencies"],"sources":["EnsureAwsCredentialsBeforeDeploy.ts"],"sourcesContent":["import { BeforeDeploy, LoggerService } from \"@webiny/project/abstractions/index.js\";\nimport { GracefulError } from \"@webiny/project\";\nimport { STS } from \"@webiny/aws-sdk/client-sts\";\n\nclass EnsureAwsCredentialsBeforeDeployImpl implements BeforeDeploy.Interface {\n constructor(private loggerService: LoggerService.Interface) {}\n\n async execute() {\n process.env.AWS_SDK_LOAD_CONFIG = \"true\";\n const sts = new STS({});\n\n try {\n await sts.getCallerIdentity({});\n } catch (err) {\n this.loggerService.debug({ err }, \"AWS credentials error.\");\n throw GracefulError.from(\n new Error(\"AWS credentials are not configured correctly.\"),\n 'No valid AWS credentials were found. Run \"aws configure\" or set the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables before deploying. Learn more: https://webiny.link/aws-credentials'\n );\n }\n\n const region = await sts.config.region();\n if (!region) {\n throw GracefulError.from(\n new Error(\"AWS region is not defined.\"),\n \"No AWS region is set. Define the AWS_REGION environment variable or set a default region in your AWS profile. Learn more: https://webiny.link/aws-region\"\n );\n }\n\n process.env.AWS_REGION = region;\n\n const { accessKeyId } = await sts.config.credentials();\n const profile = process.env.AWS_PROFILE;\n\n if (profile) {\n this.loggerService.info(`Using profile \"${profile}\" in \"${region}\" region.`);\n } else {\n this.loggerService.info(`Using access key ID \"${accessKeyId}\" in \"${region}\" region.`);\n }\n }\n}\n\nexport const EnsureAwsCredentialsBeforeDeploy = BeforeDeploy.createImplementation({\n implementation: EnsureAwsCredentialsBeforeDeployImpl,\n dependencies: [LoggerService]\n});\n"],"mappings":"AAAA,SAASA,YAAY,EAAEC,aAAa,QAAQ,uCAAuC;AACnF,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,GAAG,QAAQ,4BAA4B;AAEhD,MAAMC,oCAAoC,CAAmC;EACzEC,WAAWA,CAASC,aAAsC,EAAE;IAAA,KAAxCA,aAAsC,GAAtCA,aAAsC;EAAG;EAE7D,MAAMC,OAAOA,CAAA,EAAG;IACZC,OAAO,CAACC,GAAG,CAACC,mBAAmB,GAAG,MAAM;IACxC,MAAMC,GAAG,GAAG,IAAIR,GAAG,CAAC,CAAC,CAAC,CAAC;IAEvB,IAAI;MACA,MAAMQ,GAAG,CAACC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC,CAAC,OAAOC,GAAG,EAAE;MACV,IAAI,CAACP,aAAa,CAACQ,KAAK,CAAC;QAAED;MAAI,CAAC,EAAE,wBAAwB,CAAC;MAC3D,MAAMX,aAAa,CAACa,IAAI,CACpB,IAAIC,KAAK,CAAC,+CAA+C,CAAC,EAC1D,yMACJ,CAAC;IACL;IAEA,MAAMC,MAAM,GAAG,MAAMN,GAAG,CAACO,MAAM,CAACD,MAAM,CAAC,CAAC;IACxC,IAAI,CAACA,MAAM,EAAE;MACT,MAAMf,aAAa,CAACa,IAAI,CACpB,IAAIC,KAAK,CAAC,4BAA4B,CAAC,EACvC,0JACJ,CAAC;IACL;IAEAR,OAAO,CAACC,GAAG,CAACU,UAAU,GAAGF,MAAM;IAE/B,MAAM;MAAEG;IAAY,CAAC,GAAG,MAAMT,GAAG,CAACO,MAAM,CAACG,WAAW,CAAC,CAAC;IACtD,MAAMC,OAAO,GAAGd,OAAO,CAACC,GAAG,CAACc,WAAW;IAEvC,IAAID,OAAO,EAAE;MACT,IAAI,CAAChB,aAAa,CAACkB,IAAI,CAAC,kBAAkBF,OAAO,SAASL,MAAM,WAAW,CAAC;IAChF,CAAC,MAAM;MACH,IAAI,CAACX,aAAa,CAACkB,IAAI,CAAC,wBAAwBJ,WAAW,SAASH,MAAM,WAAW,CAAC;IAC1F;EACJ;AACJ;AAEA,OAAO,MAAMQ,gCAAgC,GAAGzB,YAAY,CAAC0B,oBAAoB,CAAC;EAC9EC,cAAc,EAAEvB,oCAAoC;EACpDwB,YAAY,EAAE,CAAC3B,aAAa;AAChC,CAAC,CAAC","ignoreList":[]}
|
package/extensions/ProjectAws.js
CHANGED
|
@@ -3,7 +3,6 @@ import { AdminAfterDeploy, AdminBeforeBuild, AdminBeforeWatch, AfterDeploy, ApiA
|
|
|
3
3
|
import { createPathResolver } from "@webiny/project";
|
|
4
4
|
import { CliCommand } from "@webiny/cli-core/extensions/index.js";
|
|
5
5
|
import { CorePulumi } from "@webiny/project/extensions/index.js";
|
|
6
|
-
import { McpExtension } from "@webiny/mcp";
|
|
7
6
|
const p = createPathResolver(import.meta.dirname);
|
|
8
7
|
export const ProjectAws = () => {
|
|
9
8
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Project, null), /*#__PURE__*/React.createElement(ProjectDecorator, {
|
|
@@ -39,13 +38,15 @@ export const ProjectAws = () => {
|
|
|
39
38
|
src: p("ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeBuild.js")
|
|
40
39
|
}), /*#__PURE__*/React.createElement(AdminBeforeWatch, {
|
|
41
40
|
src: p("ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeWatch.js")
|
|
41
|
+
}), /*#__PURE__*/React.createElement(BeforeDeploy, {
|
|
42
|
+
src: p("ProjectAws/EnsureAwsCredentialsBeforeDeploy.js")
|
|
42
43
|
}), /*#__PURE__*/React.createElement(CliCommand, {
|
|
43
44
|
src: p("ProjectAws/BlueGreenDeployments/SetPrimaryVariantCliCommand.js")
|
|
44
45
|
}), /*#__PURE__*/React.createElement(BeforeDeploy, {
|
|
45
46
|
src: p("ProjectAws/BlueGreenDeployments/EnsureVariantBeforeDeploy.js")
|
|
46
47
|
}), /*#__PURE__*/React.createElement(AfterDeploy, {
|
|
47
48
|
src: p("ProjectAws/BlueGreenDeployments/PrintDeploymentInfoAfterDeploy.js")
|
|
48
|
-
})
|
|
49
|
+
}));
|
|
49
50
|
};
|
|
50
51
|
|
|
51
52
|
//# sourceMappingURL=ProjectAws.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","AdminAfterDeploy","AdminBeforeBuild","AdminBeforeWatch","AfterDeploy","ApiAfterDeploy","BeforeDeploy","DatabaseSetup","ExtensionDefinitions","Project","ProjectDecorator","ProjectImplementation","createPathResolver","CliCommand","CorePulumi","
|
|
1
|
+
{"version":3,"names":["React","AdminAfterDeploy","AdminBeforeBuild","AdminBeforeWatch","AfterDeploy","ApiAfterDeploy","BeforeDeploy","DatabaseSetup","ExtensionDefinitions","Project","ProjectDecorator","ProjectImplementation","createPathResolver","CliCommand","CorePulumi","p","import","meta","dirname","ProjectAws","createElement","Fragment","src","setupName","singleton"],"sources":["ProjectAws.tsx"],"sourcesContent":["import React from \"react\";\nimport {\n AdminAfterDeploy,\n AdminBeforeBuild,\n AdminBeforeWatch,\n AfterDeploy,\n ApiAfterDeploy,\n BeforeDeploy,\n DatabaseSetup,\n ExtensionDefinitions,\n Project,\n ProjectDecorator,\n ProjectImplementation\n} from \"@webiny/project/extensions/index.js\";\nimport { createPathResolver } from \"@webiny/project\";\nimport { CliCommand } from \"@webiny/cli-core/extensions/index.js\";\nimport { CorePulumi } from \"@webiny/project/extensions/index.js\";\n\nconst p = createPathResolver(import.meta.dirname);\n\nexport const ProjectAws = () => {\n return (\n <>\n <Project />\n <ProjectDecorator src={p(\"ProjectAws/BuildAppWorkspace.js\")} />\n\n {/* Database Setup - default to DynamoDB only */}\n <DatabaseSetup setupName=\"ddb\" />\n\n {/* Set database setup output value in Core stack */}\n <CorePulumi src={p(\"ProjectAws/SetDatabaseSetupOutput.js\")} />\n\n {/* Stack Output Services */}\n <ProjectImplementation src={p(\"ProjectAws/CoreStackOutputService.js\")} singleton />\n <ProjectImplementation src={p(\"ProjectAws/ApiStackOutputService.js\")} singleton />\n <ProjectImplementation src={p(\"ProjectAws/AdminStackOutputService.js\")} singleton />\n\n <ProjectImplementation src={p(\"../features/InvokeLambdaFunction.js\")} singleton />\n <ProjectImplementation src={p(\"../features/ApiGqlClient.js\")} singleton />\n\n <AdminAfterDeploy src={p(\"ProjectAws/UploadAdminAppToS3.js\")} />\n\n <ApiAfterDeploy src={p(\"ProjectAws/AutoInstall/AutoInstallAfterApiDeploy.js\")} />\n <ExtensionDefinitions src={p(\"definitions.js\")} />\n <ExtensionDefinitions src={p(\"ProjectAws/definitions.js\")} />\n\n {/* Admin env vars */}\n <AdminBeforeBuild src={p(\"ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeBuild.js\")} />\n <AdminBeforeWatch src={p(\"ProjectAws/SetAdminEnvVars/SetAdminEnvVarsBeforeWatch.js\")} />\n\n {/* AWS credentials check */}\n <BeforeDeploy src={p(\"ProjectAws/EnsureAwsCredentialsBeforeDeploy.js\")} />\n\n {/* Blue-green */}\n <CliCommand src={p(\"ProjectAws/BlueGreenDeployments/SetPrimaryVariantCliCommand.js\")} />\n <BeforeDeploy src={p(\"ProjectAws/BlueGreenDeployments/EnsureVariantBeforeDeploy.js\")} />\n <AfterDeploy\n src={p(\"ProjectAws/BlueGreenDeployments/PrintDeploymentInfoAfterDeploy.js\")}\n />\n </>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|