diff --git a/packages/graphql-mesh-server/lib/fargate.ts b/packages/graphql-mesh-server/lib/fargate.ts index 9942673b..d80af465 100644 --- a/packages/graphql-mesh-server/lib/fargate.ts +++ b/packages/graphql-mesh-server/lib/fargate.ts @@ -285,6 +285,8 @@ export class MeshService extends Construct { const fargateService = new ecsPatterns.ApplicationLoadBalancedFargateService(this, `fargate`, { cluster, + serviceName: + props.serviceName !== undefined ? props.serviceName : undefined, certificate, enableExecuteCommand: true, cpu: props.cpu || 512, // 0.5 vCPU diff --git a/packages/graphql-mesh-server/lib/graphql-mesh-server.ts b/packages/graphql-mesh-server/lib/graphql-mesh-server.ts index 42cb94dd..b73572c8 100644 --- a/packages/graphql-mesh-server/lib/graphql-mesh-server.ts +++ b/packages/graphql-mesh-server/lib/graphql-mesh-server.ts @@ -178,6 +178,34 @@ export type MeshHostingProps = { * @default authentication-table */ authenticationTable?: string; + + /** + * Specify a name for the ECS cluster + * + * @default - AWS generated cluster name + */ + clusterName?: string; + + /** + * Specify a name for the GraphQL service + * + * @default - AWS generated service name + */ + serviceName?: string; + + /** + * Specify a name for the ECR repository + * + * @default - AWS generated repository name + */ + repositoryName?: string; + + /** + * Specify a name for the task definition family + * + * @default - AWS generated task definition family name + */ + taskDefinitionFamilyName?: string; }; export class MeshHosting extends Construct {