From be209c48d27f9d4baec3b6173d7dc23f9ce3fdf2 Mon Sep 17 00:00:00 2001 From: seven Date: Tue, 22 Oct 2024 21:07:42 +0800 Subject: [PATCH] feat: fc3 as defult fc runtime Signed-off-by: seven --- package-lock.json | 117 ++++++++++++-------------- package.json | 10 +-- src/stack/iacStack.ts | 2 +- tests/fixtures/deployFixture.ts | 22 +---- tests/fixtures/serverless-insight.yml | 32 +++---- 5 files changed, 80 insertions(+), 103 deletions(-) diff --git a/package-lock.json b/package-lock.json index 23f9be1..a9d9d55 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,10 +10,10 @@ "license": "Apache-2.0", "dependencies": { "@alicloud/openapi-client": "^0.4.12", - "@alicloud/ros-cdk-apigateway": "^1.3.0", - "@alicloud/ros-cdk-core": "^1.3.0", - "@alicloud/ros-cdk-fc3": "^1.3.0", - "@alicloud/ros-cdk-ram": "^1.3.0", + "@alicloud/ros-cdk-apigateway": "^1.4.0", + "@alicloud/ros-cdk-core": "^1.4.0", + "@alicloud/ros-cdk-fc3": "^1.4.0", + "@alicloud/ros-cdk-ram": "^1.4.0", "@alicloud/ros20190910": "^3.5.0", "ajv": "^8.17.1", "chalk": "^5.3.0", @@ -107,9 +107,9 @@ } }, "node_modules/@alicloud/ros-cdk-apigateway": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-apigateway/-/ros-cdk-apigateway-1.3.0.tgz", - "integrity": "sha512-s5jO7j1gkTEQY2RrqcZobfKfDIbbdimu62Hqq1HEZsm6sXa5CG9Lw27i0AiuCLvDz7ipmHIBZoPdcCOy+zTf5w==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-apigateway/-/ros-cdk-apigateway-1.4.0.tgz", + "integrity": "sha512-R1WC/F950LhQkRwJ1mf+PoP2Rjyp32uJXA8QdbdhaVam+ODccNgVNFDxQS9ovJTTggKoRbjOBjuhFrwd8uWV3g==", "dependencies": { "@alicloud/ros-cdk-core": "^1.0.27", "constructs": "^3.0.4" @@ -120,9 +120,9 @@ } }, "node_modules/@alicloud/ros-cdk-assembly-schema": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-assembly-schema/-/ros-cdk-assembly-schema-1.3.0.tgz", - "integrity": "sha512-AgQ0HvFGf0FFQl0enfhjoj5+7mvP07kLkFJqxZ0VP8jyPs0tSKW+Au99G5I9UXXCsVTD2VlyHeQpXu3IxTs8nw==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-assembly-schema/-/ros-cdk-assembly-schema-1.4.0.tgz", + "integrity": "sha512-gyKEZar+5xidWwlgKnf6Jwemk88IrwAHBlLizuKeRW5lYsJtSExpK8oylls79kJrSFxDr610FYbMGFJAGoO2CQ==", "bundleDependencies": [ "jsonschema", "semver" @@ -152,9 +152,9 @@ } }, "node_modules/@alicloud/ros-cdk-core": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-core/-/ros-cdk-core-1.3.0.tgz", - "integrity": "sha512-VeOjD70Mf9IDJ4lJUdklPsEkQDRT4x+Zj0amfn2mofz8exsnqj8qWqJ77lEgqM0USek05tHZ6bSjrzhegPP+fw==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-core/-/ros-cdk-core-1.4.0.tgz", + "integrity": "sha512-Sg/Uj1pIj4hvikcgIFYr4cvG08/BLtGgGDyZFUHT7kBlY3bxdyGb7kEbQE+5wmYK24llavWzbquJIb3BPyIrRw==", "bundleDependencies": [ "fs-extra", "@balena/dockerignore", @@ -162,8 +162,8 @@ "minimatch" ], "dependencies": { - "@alicloud/ros-cdk-assembly-schema": "^1.3.0", - "@alicloud/ros-cdk-cxapi": "^1.3.0", + "@alicloud/ros-cdk-assembly-schema": "^1.4.0", + "@alicloud/ros-cdk-cxapi": "^1.4.0", "@balena/dockerignore": "^1.0.2", "constructs": "^3.0.4", "fs-extra": "^9.0.1", @@ -171,8 +171,8 @@ "minimatch": "^3.0.4" }, "peerDependencies": { - "@alicloud/ros-cdk-assembly-schema": "^1.3.0", - "@alicloud/ros-cdk-cxapi": "^1.3.0", + "@alicloud/ros-cdk-assembly-schema": "^1.4.0", + "@alicloud/ros-cdk-cxapi": "^1.4.0", "constructs": "^3.0.4" } }, @@ -266,18 +266,18 @@ } }, "node_modules/@alicloud/ros-cdk-cxapi": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-cxapi/-/ros-cdk-cxapi-1.3.0.tgz", - "integrity": "sha512-8av3RNH3MhyahMclc6as4FuHmhDcDCQLo4UHRBh2o2buRkkEc7cQ4YqfYq6Mh7uYZ0FIw8T/Mpw0GooPyItl1w==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-cxapi/-/ros-cdk-cxapi-1.4.0.tgz", + "integrity": "sha512-mh9JB8ICHuCgmmdrXkwk+tHPEHTOoZdG6TZYXcyOOJ8LIckPm8S+vIlh4ZAZlfakfesY22EKfaF7NbIdsJbtJQ==", "bundleDependencies": [ "semver" ], "dependencies": { - "@alicloud/ros-cdk-assembly-schema": "^1.3.0", + "@alicloud/ros-cdk-assembly-schema": "^1.4.0", "semver": "^7.2.2" }, "peerDependencies": { - "@alicloud/ros-cdk-assembly-schema": "^1.3.0" + "@alicloud/ros-cdk-assembly-schema": "^1.4.0" } }, "node_modules/@alicloud/ros-cdk-cxapi/node_modules/semver": { @@ -292,9 +292,9 @@ } }, "node_modules/@alicloud/ros-cdk-fc3": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-fc3/-/ros-cdk-fc3-1.3.0.tgz", - "integrity": "sha512-M3jXBhbQrEtvvT6sUCDT/4Po/jQ6+m9H6mpaJv/C06G6KgPjPf46RJtlazn/bQWJVRdLzoyM/CWG0VG6qY3ohA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-fc3/-/ros-cdk-fc3-1.4.0.tgz", + "integrity": "sha512-hmwaADp5cZmHNaz0mJ3WruTEaorKhYUf30SasfSFsIy2bZgfR9BzHGQyT7tCrhRVKk640bGarv5t/3DDMfP5ww==", "dependencies": { "@alicloud/ros-cdk-core": "^1.0.27", "constructs": "^3.0.4" @@ -305,9 +305,9 @@ } }, "node_modules/@alicloud/ros-cdk-ram": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-ram/-/ros-cdk-ram-1.3.0.tgz", - "integrity": "sha512-lCghfMvgh234Dqto8vobRxhmCfCzAdh6cQoO2hC5fd5OjRWRRDEV54DsdnTKCNXPZawAnQWm758xLdoTzevwmw==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-ram/-/ros-cdk-ram-1.4.0.tgz", + "integrity": "sha512-7uRKgMGesRYrjaXxdgsoN8tYH+qx3EPffBZehI+k5h9QiqrGG/sPiBYWuBc80SWpMwP08A4nHGibdGv1uksf1w==", "dependencies": { "@alicloud/ros-cdk-core": "^1.0.27", "constructs": "^3.0.4" @@ -5722,7 +5722,6 @@ "version": "7.6.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, "bin": { "semver": "bin/semver.js" }, @@ -6438,18 +6437,18 @@ } }, "@alicloud/ros-cdk-apigateway": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-apigateway/-/ros-cdk-apigateway-1.3.0.tgz", - "integrity": "sha512-s5jO7j1gkTEQY2RrqcZobfKfDIbbdimu62Hqq1HEZsm6sXa5CG9Lw27i0AiuCLvDz7ipmHIBZoPdcCOy+zTf5w==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-apigateway/-/ros-cdk-apigateway-1.4.0.tgz", + "integrity": "sha512-R1WC/F950LhQkRwJ1mf+PoP2Rjyp32uJXA8QdbdhaVam+ODccNgVNFDxQS9ovJTTggKoRbjOBjuhFrwd8uWV3g==", "requires": { "@alicloud/ros-cdk-core": "^1.0.27", "constructs": "^3.0.4" } }, "@alicloud/ros-cdk-assembly-schema": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-assembly-schema/-/ros-cdk-assembly-schema-1.3.0.tgz", - "integrity": "sha512-AgQ0HvFGf0FFQl0enfhjoj5+7mvP07kLkFJqxZ0VP8jyPs0tSKW+Au99G5I9UXXCsVTD2VlyHeQpXu3IxTs8nw==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-assembly-schema/-/ros-cdk-assembly-schema-1.4.0.tgz", + "integrity": "sha512-gyKEZar+5xidWwlgKnf6Jwemk88IrwAHBlLizuKeRW5lYsJtSExpK8oylls79kJrSFxDr610FYbMGFJAGoO2CQ==", "requires": { "jsonschema": "^1.2.6", "semver": "^7.3.2" @@ -6466,12 +6465,12 @@ } }, "@alicloud/ros-cdk-core": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-core/-/ros-cdk-core-1.3.0.tgz", - "integrity": "sha512-VeOjD70Mf9IDJ4lJUdklPsEkQDRT4x+Zj0amfn2mofz8exsnqj8qWqJ77lEgqM0USek05tHZ6bSjrzhegPP+fw==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-core/-/ros-cdk-core-1.4.0.tgz", + "integrity": "sha512-Sg/Uj1pIj4hvikcgIFYr4cvG08/BLtGgGDyZFUHT7kBlY3bxdyGb7kEbQE+5wmYK24llavWzbquJIb3BPyIrRw==", "requires": { - "@alicloud/ros-cdk-assembly-schema": "^1.3.0", - "@alicloud/ros-cdk-cxapi": "^1.3.0", + "@alicloud/ros-cdk-assembly-schema": "^1.4.0", + "@alicloud/ros-cdk-cxapi": "^1.4.0", "@balena/dockerignore": "^1.0.2", "constructs": "^3.0.4", "fs-extra": "^9.0.1", @@ -6543,11 +6542,11 @@ } }, "@alicloud/ros-cdk-cxapi": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-cxapi/-/ros-cdk-cxapi-1.3.0.tgz", - "integrity": "sha512-8av3RNH3MhyahMclc6as4FuHmhDcDCQLo4UHRBh2o2buRkkEc7cQ4YqfYq6Mh7uYZ0FIw8T/Mpw0GooPyItl1w==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-cxapi/-/ros-cdk-cxapi-1.4.0.tgz", + "integrity": "sha512-mh9JB8ICHuCgmmdrXkwk+tHPEHTOoZdG6TZYXcyOOJ8LIckPm8S+vIlh4ZAZlfakfesY22EKfaF7NbIdsJbtJQ==", "requires": { - "@alicloud/ros-cdk-assembly-schema": "^1.3.0", + "@alicloud/ros-cdk-assembly-schema": "^1.4.0", "semver": "^7.2.2" }, "dependencies": { @@ -6558,18 +6557,18 @@ } }, "@alicloud/ros-cdk-fc3": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-fc3/-/ros-cdk-fc3-1.3.0.tgz", - "integrity": "sha512-M3jXBhbQrEtvvT6sUCDT/4Po/jQ6+m9H6mpaJv/C06G6KgPjPf46RJtlazn/bQWJVRdLzoyM/CWG0VG6qY3ohA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-fc3/-/ros-cdk-fc3-1.4.0.tgz", + "integrity": "sha512-hmwaADp5cZmHNaz0mJ3WruTEaorKhYUf30SasfSFsIy2bZgfR9BzHGQyT7tCrhRVKk640bGarv5t/3DDMfP5ww==", "requires": { "@alicloud/ros-cdk-core": "^1.0.27", "constructs": "^3.0.4" } }, "@alicloud/ros-cdk-ram": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-ram/-/ros-cdk-ram-1.3.0.tgz", - "integrity": "sha512-lCghfMvgh234Dqto8vobRxhmCfCzAdh6cQoO2hC5fd5OjRWRRDEV54DsdnTKCNXPZawAnQWm758xLdoTzevwmw==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@alicloud/ros-cdk-ram/-/ros-cdk-ram-1.4.0.tgz", + "integrity": "sha512-7uRKgMGesRYrjaXxdgsoN8tYH+qx3EPffBZehI+k5h9QiqrGG/sPiBYWuBc80SWpMwP08A4nHGibdGv1uksf1w==", "requires": { "@alicloud/ros-cdk-core": "^1.0.27", "constructs": "^3.0.4" @@ -8039,8 +8038,7 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "requires": {} + "dev": true }, "acorn-walk": { "version": "8.3.2", @@ -8474,8 +8472,7 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", - "dev": true, - "requires": {} + "dev": true }, "deep-is": { "version": "0.1.4", @@ -8661,8 +8658,7 @@ "version": "9.1.0", "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", - "dev": true, - "requires": {} + "dev": true }, "eslint-plugin-prettier": { "version": "5.2.1", @@ -9615,8 +9611,7 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "dev": true, - "requires": {} + "dev": true }, "jest-regex-util": { "version": "29.6.3", @@ -10589,8 +10584,7 @@ "semver": { "version": "7.6.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==" }, "shebang-command": { "version": "2.0.0", @@ -10812,8 +10806,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", - "dev": true, - "requires": {} + "dev": true }, "ts-jest": { "version": "29.2.5", diff --git a/package.json b/package.json index e94a2a8..b879b9f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@geek-fun/serverlessinsight", - "version": "0.0.4", + "version": "0.0.5", "description": "Full life cycle cross providers serverless application management for your fast-growing business.", "homepage": "https://serverlessinsight.geekfun.club", "main": "dist/src/index.js", @@ -50,10 +50,10 @@ ], "dependencies": { "@alicloud/openapi-client": "^0.4.12", - "@alicloud/ros-cdk-apigateway": "^1.3.0", - "@alicloud/ros-cdk-core": "^1.3.0", - "@alicloud/ros-cdk-fc3": "^1.3.0", - "@alicloud/ros-cdk-ram": "^1.3.0", + "@alicloud/ros-cdk-apigateway": "^1.4.0", + "@alicloud/ros-cdk-core": "^1.4.0", + "@alicloud/ros-cdk-fc3": "^1.4.0", + "@alicloud/ros-cdk-ram": "^1.4.0", "@alicloud/ros20190910": "^3.5.0", "ajv": "^8.17.1", "chalk": "^5.3.0", diff --git a/src/stack/iacStack.ts b/src/stack/iacStack.ts index 970219a..257c1f6 100644 --- a/src/stack/iacStack.ts +++ b/src/stack/iacStack.ts @@ -139,7 +139,7 @@ export class IacStack extends ros.Stack { fcRegionId: context.region, functionName: trigger.backend, roleArn: gatewayAccessRole.attrArn, - // fcVersion: '3.0', + fcVersion: '3.0', }, }, resultSample: 'ServerlessInsight resultSample', diff --git a/tests/fixtures/deployFixture.ts b/tests/fixtures/deployFixture.ts index 474e175..d918009 100644 --- a/tests/fixtures/deployFixture.ts +++ b/tests/fixtures/deployFixture.ts @@ -78,7 +78,7 @@ export const oneFcOneGatewayRos = { FunctionComputeConfig: { FunctionName: 'demo_fn_gateway', RoleArn: { 'Fn::GetAtt': ['my-demo-service_role', 'Arn'] }, - ServiceName: 'my-demo-service-service', + FcVersion: '3.0', }, ServiceProtocol: 'FunctionCompute', }, @@ -95,17 +95,9 @@ export const oneFcOneGatewayRos = { Handler: 'index.handler', MemorySize: 128, Runtime: 'nodejs18', - ServiceName: 'my-demo-service-service', Timeout: 10, }, - Type: 'ALIYUN::FC::Function', - }, - 'my-demo-service-service': { - Properties: { - ServiceName: 'my-demo-service-service', - Tags: [{ Key: 'owner', Value: 'geek-fun' }], - }, - Type: 'ALIYUN::FC::Service', + Type: 'ALIYUN::FC3::Function', }, 'my-demo-service_apigroup': { Properties: { @@ -199,17 +191,9 @@ export const oneFcRos = { Handler: 'index.handler', MemorySize: 128, Runtime: 'nodejs18', - ServiceName: 'my-demo-service-service', Timeout: 10, }, - Type: 'ALIYUN::FC::Function', - }, - 'my-demo-service-service': { - Properties: { - ServiceName: 'my-demo-service-service', - Tags: [{ Key: 'owner', Value: 'geek-fun' }], - }, - Type: 'ALIYUN::FC::Service', + Type: 'ALIYUN::FC3::Function', }, }, }; diff --git a/tests/fixtures/serverless-insight.yml b/tests/fixtures/serverless-insight.yml index a208e47..9d16128 100644 --- a/tests/fixtures/serverless-insight.yml +++ b/tests/fixtures/serverless-insight.yml @@ -30,17 +30,17 @@ functions: TEST_VAR: ${vars.testv} TEST_VAR_EXTRA: abcds-${vars.testv}-andyou -databases: - insight_poc_db: - name: insight-poc-db - type: RDS - region: ${vars.region} - instance_class: rds.mysql.t5.xlarge - storage_size: 20 - username: root - password: 123456 - database: insight_poc_db - +#databases: +# insight_poc_db: +# name: insight-poc-db +# type: RDS +# region: ${vars.region} +# instance_class: rds.mysql.t5.xlarge +# storage_size: 20 +# username: root +# password: 123456 +# database: insight_poc_db +# events: gateway_event: type: API_GATEWAY @@ -49,8 +49,8 @@ events: - method: GET path: /api/hello backend: insight-poc-fn - custom_domain: - domain_name: test.com - certificate_name: test - certificate_private_key: test - certificate_body: test +# custom_domain: +# domain_name: test.com +# certificate_name: test +# certificate_private_key: test +# certificate_body: test