From 56988c8dab8338f0e4bf027b0b9256db5f4d96a4 Mon Sep 17 00:00:00 2001 From: Akash Askoolum Date: Wed, 19 May 2021 21:07:19 +0100 Subject: [PATCH] chore: Fix new import/order lint errors This version of eslint-plugin-import prefers `import` statements to appear before `import type`. This change fixes these linting errors. See: - https://github.com/benmosher/eslint-plugin-import/pull/2021 --- src/constructs/acm/certificate.test.ts | 2 +- src/constructs/acm/certificate.ts | 4 ++-- src/constructs/autoscaling/asg.test.ts | 6 +++--- src/constructs/autoscaling/asg.ts | 10 +++++----- src/constructs/autoscaling/user-data.test.ts | 2 +- src/constructs/autoscaling/user-data.ts | 6 +++--- src/constructs/cloudwatch/alarm.test.ts | 2 +- src/constructs/cloudwatch/alarm.ts | 4 ++-- src/constructs/cloudwatch/ec2-alarms.test.ts | 2 +- src/constructs/cloudwatch/ec2-alarms.ts | 2 +- src/constructs/cloudwatch/lambda-alarms.ts | 2 +- .../core/custom-resources/runtime/lambda.ts | 4 ++-- src/constructs/core/identity.ts | 2 +- src/constructs/core/migrating.test.ts | 6 +++--- src/constructs/core/migrating.ts | 2 +- src/constructs/core/parameters/acm.ts | 2 +- src/constructs/core/parameters/base.test.ts | 2 +- src/constructs/core/parameters/base.ts | 2 +- src/constructs/core/parameters/ec2.test.ts | 2 +- src/constructs/core/parameters/ec2.ts | 2 +- src/constructs/core/parameters/identity.ts | 2 +- src/constructs/core/parameters/log-shipping.ts | 2 +- src/constructs/core/parameters/s3.ts | 2 +- src/constructs/core/parameters/ses.ts | 2 +- src/constructs/core/parameters/vpc.test.ts | 2 +- src/constructs/core/parameters/vpc.ts | 2 +- src/constructs/core/ssm.ts | 4 ++-- src/constructs/core/stack.test.ts | 2 +- src/constructs/core/stack.ts | 6 +++--- src/constructs/ec2/security-groups/base.ts | 4 ++-- src/constructs/ec2/security-groups/wazuh.ts | 4 ++-- src/constructs/ec2/vpc.test.ts | 2 +- src/constructs/ec2/vpc.ts | 4 ++-- src/constructs/iam/policies/assume-role.ts | 2 +- src/constructs/iam/policies/base-policy.ts | 2 +- src/constructs/iam/policies/cloudwatch.ts | 2 +- src/constructs/iam/policies/describe-ec2.ts | 2 +- src/constructs/iam/policies/dynamodb.ts | 2 +- src/constructs/iam/policies/log-shipping.test.ts | 2 +- src/constructs/iam/policies/log-shipping.ts | 2 +- .../iam/policies/parameter-store-read.ts | 2 +- src/constructs/iam/policies/s3-get-object.test.ts | 2 +- src/constructs/iam/policies/s3-get-object.ts | 6 +++--- src/constructs/iam/policies/ses.ts | 2 +- src/constructs/iam/policies/ssm.ts | 2 +- src/constructs/iam/roles/instance-role.ts | 4 ++-- src/constructs/iam/roles/roles.ts | 2 +- src/constructs/kinesis/kinesis-stream.ts | 2 +- src/constructs/lambda/lambda.ts | 6 +++--- .../loadbalancing/alb/application-listener.test.ts | 4 ++-- .../loadbalancing/alb/application-listener.ts | 4 ++-- .../alb/application-load-balancer.test.ts | 4 ++-- .../loadbalancing/alb/application-load-balancer.ts | 4 ++-- .../alb/application-target-group.test.ts | 2 +- .../loadbalancing/alb/application-target-group.ts | 4 ++-- src/constructs/loadbalancing/elb.test.ts | 2 +- src/constructs/loadbalancing/elb.ts | 14 +++++++------- src/constructs/rds/instance.ts | 4 ++-- src/constructs/sns/sns-topic.ts | 2 +- src/patterns/api-lambda.test.ts | 2 +- src/patterns/api-lambda.ts | 4 ++-- src/patterns/ec2-app.test.ts | 4 ++-- src/patterns/ec2-app.ts | 12 ++++++------ src/patterns/kinesis-lambda.test.ts | 8 ++++---- src/patterns/kinesis-lambda.ts | 12 ++++++------ src/patterns/scheduled-lambda.test.ts | 2 +- src/patterns/scheduled-lambda.ts | 4 ++-- src/patterns/sns-lambda.test.ts | 2 +- src/patterns/sns-lambda.ts | 6 +++--- src/utils/lambda/event-source.ts | 2 +- .../mixin/migratable-construct-stateful.test.ts | 6 +++--- src/utils/mixin/migratable-construct.test.ts | 4 ++-- src/utils/mixin/migratable-construct.ts | 2 +- src/utils/security-groups/helpers.ts | 2 +- src/utils/test/attach-policy-to-test-role.ts | 4 ++-- src/utils/test/jest.ts | 4 ++-- src/utils/test/simple-gu-stack.ts | 2 +- src/utils/test/singleton.ts | 2 +- 78 files changed, 137 insertions(+), 137 deletions(-) diff --git a/src/constructs/acm/certificate.test.ts b/src/constructs/acm/certificate.test.ts index 48e62c8522..810ba64ca1 100644 --- a/src/constructs/acm/certificate.test.ts +++ b/src/constructs/acm/certificate.test.ts @@ -1,8 +1,8 @@ import { SynthUtils } from "@aws-cdk/assert"; import { Stage } from "../../constants"; -import type { SynthedStack } from "../../utils/test"; import { simpleGuStackForTesting } from "../../utils/test"; import { GuCertificate } from "./certificate"; +import type { SynthedStack } from "../../utils/test"; describe("The GuCertificate class", () => { it("should create a new certificate when hosted zone ids are provided", () => { diff --git a/src/constructs/acm/certificate.ts b/src/constructs/acm/certificate.ts index 78ee5eac83..5c497d9d99 100644 --- a/src/constructs/acm/certificate.ts +++ b/src/constructs/acm/certificate.ts @@ -1,12 +1,12 @@ import { Certificate, CertificateValidation } from "@aws-cdk/aws-certificatemanager"; -import type { CertificateProps } from "@aws-cdk/aws-certificatemanager/lib/certificate"; import { HostedZone } from "@aws-cdk/aws-route53"; import { RemovalPolicy } from "@aws-cdk/core"; import { Stage } from "../../constants"; import { GuStatefulMigratableConstruct } from "../../utils/mixin"; -import type { GuStack } from "../core"; import { AppIdentity } from "../core/identity"; +import type { GuStack } from "../core"; import type { GuMigratingResource } from "../core/migrating"; +import type { CertificateProps } from "@aws-cdk/aws-certificatemanager/lib/certificate"; export type GuCertificateProps = Record & GuMigratingResource; export type GuCertificatePropsWithApp = GuCertificateProps & AppIdentity; diff --git a/src/constructs/autoscaling/asg.test.ts b/src/constructs/autoscaling/asg.test.ts index afdb9f8119..cd33d95df2 100644 --- a/src/constructs/autoscaling/asg.test.ts +++ b/src/constructs/autoscaling/asg.test.ts @@ -5,14 +5,14 @@ import { InstanceType, UserData, Vpc } from "@aws-cdk/aws-ec2"; import { ApplicationProtocol } from "@aws-cdk/aws-elasticloadbalancingv2"; import { Stack } from "@aws-cdk/core"; import { Stage } from "../../constants"; -import type { Resource, SynthedStack } from "../../utils/test"; import { findResourceByTypeAndLogicalId, simpleGuStackForTesting } from "../../utils/test"; -import type { AppIdentity } from "../core/identity"; import { GuSecurityGroup } from "../ec2"; import { GuAllowPolicy, GuInstanceRole } from "../iam"; import { GuApplicationTargetGroup } from "../loadbalancing"; -import type { GuAutoScalingGroupProps } from "./asg"; import { GuAutoScalingGroup } from "./"; +import type { Resource, SynthedStack } from "../../utils/test"; +import type { AppIdentity } from "../core/identity"; +import type { GuAutoScalingGroupProps } from "./asg"; describe("The GuAutoScalingGroup", () => { const vpc = Vpc.fromVpcAttributes(new Stack(), "VPC", { diff --git a/src/constructs/autoscaling/asg.ts b/src/constructs/autoscaling/asg.ts index bf626264ab..5196b16b74 100644 --- a/src/constructs/autoscaling/asg.ts +++ b/src/constructs/autoscaling/asg.ts @@ -1,16 +1,16 @@ -import type { AutoScalingGroupProps, CfnAutoScalingGroup } from "@aws-cdk/aws-autoscaling"; import { AutoScalingGroup } from "@aws-cdk/aws-autoscaling"; -import type { ISecurityGroup, MachineImage, MachineImageConfig } from "@aws-cdk/aws-ec2"; import { InstanceType, OperatingSystemType, UserData } from "@aws-cdk/aws-ec2"; -import type { ApplicationTargetGroup } from "@aws-cdk/aws-elasticloadbalancingv2"; import { Stage } from "../../constants"; import { GuStatefulMigratableConstruct } from "../../utils/mixin"; -import type { GuStack } from "../core"; import { GuAmiParameter, GuInstanceTypeParameter } from "../core"; import { AppIdentity } from "../core/identity"; -import type { GuMigratingResource } from "../core/migrating"; import { GuHttpsEgressSecurityGroup, GuWazuhAccess } from "../ec2"; import { GuInstanceRole } from "../iam"; +import type { GuStack } from "../core"; +import type { GuMigratingResource } from "../core/migrating"; +import type { AutoScalingGroupProps, CfnAutoScalingGroup } from "@aws-cdk/aws-autoscaling"; +import type { ISecurityGroup, MachineImage, MachineImageConfig } from "@aws-cdk/aws-ec2"; +import type { ApplicationTargetGroup } from "@aws-cdk/aws-elasticloadbalancingv2"; // Since we want to override the types of what gets passed in for the below props, // we need to use Omit to remove them from the interface this extends diff --git a/src/constructs/autoscaling/user-data.test.ts b/src/constructs/autoscaling/user-data.test.ts index e228ab8729..89aa617d2b 100644 --- a/src/constructs/autoscaling/user-data.test.ts +++ b/src/constructs/autoscaling/user-data.test.ts @@ -5,8 +5,8 @@ import { Stage } from "../../constants"; import { simpleGuStackForTesting } from "../../utils/test"; import { GuPrivateConfigBucketParameter } from "../core"; import { GuAutoScalingGroup } from "./asg"; -import type { GuUserDataPropsWithApp } from "./user-data"; import { GuUserData } from "./user-data"; +import type { GuUserDataPropsWithApp } from "./user-data"; describe("GuUserData", () => { const vpc = Vpc.fromVpcAttributes(new Stack(), "VPC", { diff --git a/src/constructs/autoscaling/user-data.ts b/src/constructs/autoscaling/user-data.ts index 1d75296278..eb5b1b3153 100644 --- a/src/constructs/autoscaling/user-data.ts +++ b/src/constructs/autoscaling/user-data.ts @@ -1,12 +1,12 @@ -import type { S3DownloadOptions } from "@aws-cdk/aws-ec2"; import { UserData } from "@aws-cdk/aws-ec2"; import { Bucket } from "@aws-cdk/aws-s3"; -import type { GuDistributableForEc2 } from "../../types/distributable"; import { GuDistributable } from "../../types/distributable"; +import { GuDistributionBucketParameter } from "../core"; +import type { GuDistributableForEc2 } from "../../types/distributable"; import type { GuPrivateS3ConfigurationProps } from "../../utils/ec2"; import type { GuStack } from "../core"; -import { GuDistributionBucketParameter } from "../core"; import type { AppIdentity } from "../core/identity"; +import type { S3DownloadOptions } from "@aws-cdk/aws-ec2"; export type GuUserDataPropsWithApp = GuUserDataProps & AppIdentity; export interface GuUserDataProps { diff --git a/src/constructs/cloudwatch/alarm.test.ts b/src/constructs/cloudwatch/alarm.test.ts index 8ff645e771..63343d8159 100644 --- a/src/constructs/cloudwatch/alarm.test.ts +++ b/src/constructs/cloudwatch/alarm.test.ts @@ -2,10 +2,10 @@ import "@aws-cdk/assert/jest"; import { SynthUtils } from "@aws-cdk/assert"; import { ComparisonOperator } from "@aws-cdk/aws-cloudwatch"; import { Runtime } from "@aws-cdk/aws-lambda"; -import type { SynthedStack } from "../../utils/test"; import { simpleGuStackForTesting } from "../../utils/test"; import { GuLambdaFunction } from "../lambda"; import { GuAlarm } from "./alarm"; +import type { SynthedStack } from "../../utils/test"; describe("The GuAlarm class", () => { it("should create a CloudWatch alarm", () => { diff --git a/src/constructs/cloudwatch/alarm.ts b/src/constructs/cloudwatch/alarm.ts index 876633f73e..99703acd5d 100644 --- a/src/constructs/cloudwatch/alarm.ts +++ b/src/constructs/cloudwatch/alarm.ts @@ -1,10 +1,10 @@ -import type { AlarmProps } from "@aws-cdk/aws-cloudwatch"; import { Alarm } from "@aws-cdk/aws-cloudwatch"; import { SnsAction } from "@aws-cdk/aws-cloudwatch-actions"; -import type { ITopic } from "@aws-cdk/aws-sns"; import { Topic } from "@aws-cdk/aws-sns"; import { Stage } from "../../constants"; import type { GuStack, GuStageDependentValue } from "../core"; +import type { AlarmProps } from "@aws-cdk/aws-cloudwatch"; +import type { ITopic } from "@aws-cdk/aws-sns"; export interface GuAlarmProps extends AlarmProps { snsTopicName: string; diff --git a/src/constructs/cloudwatch/ec2-alarms.test.ts b/src/constructs/cloudwatch/ec2-alarms.test.ts index a532f75ca9..05c82785e1 100644 --- a/src/constructs/cloudwatch/ec2-alarms.test.ts +++ b/src/constructs/cloudwatch/ec2-alarms.test.ts @@ -3,9 +3,9 @@ import { SynthUtils } from "@aws-cdk/assert"; import { Vpc } from "@aws-cdk/aws-ec2"; import { Stack } from "@aws-cdk/core"; import { simpleGuStackForTesting } from "../../utils/test"; -import type { AppIdentity } from "../core/identity"; import { GuApplicationLoadBalancer } from "../loadbalancing"; import { Gu5xxPercentageAlarm } from "./ec2-alarms"; +import type { AppIdentity } from "../core/identity"; const vpc = Vpc.fromVpcAttributes(new Stack(), "VPC", { vpcId: "test", diff --git a/src/constructs/cloudwatch/ec2-alarms.ts b/src/constructs/cloudwatch/ec2-alarms.ts index 69e8b3c9eb..667c8ec1d8 100644 --- a/src/constructs/cloudwatch/ec2-alarms.ts +++ b/src/constructs/cloudwatch/ec2-alarms.ts @@ -1,11 +1,11 @@ import { ComparisonOperator, MathExpression, TreatMissingData } from "@aws-cdk/aws-cloudwatch"; import { HttpCodeElb, HttpCodeTarget } from "@aws-cdk/aws-elasticloadbalancingv2"; import { Duration } from "@aws-cdk/core"; +import { GuAlarm } from "./alarm"; import type { GuStack } from "../core"; import type { AppIdentity } from "../core/identity"; import type { GuApplicationLoadBalancer } from "../loadbalancing"; import type { GuAlarmProps } from "./alarm"; -import { GuAlarm } from "./alarm"; export interface Gu5xxPercentageMonitoringProps extends Omit { diff --git a/src/constructs/cloudwatch/lambda-alarms.ts b/src/constructs/cloudwatch/lambda-alarms.ts index 993180dffb..d5305fdcfc 100644 --- a/src/constructs/cloudwatch/lambda-alarms.ts +++ b/src/constructs/cloudwatch/lambda-alarms.ts @@ -1,9 +1,9 @@ import { ComparisonOperator, MathExpression, TreatMissingData } from "@aws-cdk/aws-cloudwatch"; import { Duration } from "@aws-cdk/core"; +import { GuAlarm } from "./alarm"; import type { GuStack } from "../core"; import type { GuLambdaFunction } from "../lambda"; import type { GuAlarmProps } from "./alarm"; -import { GuAlarm } from "./alarm"; export interface GuLambdaErrorPercentageMonitoringProps extends Omit { diff --git a/src/constructs/core/custom-resources/runtime/lambda.ts b/src/constructs/core/custom-resources/runtime/lambda.ts index 2960eaa72f..cc0331d1ea 100644 --- a/src/constructs/core/custom-resources/runtime/lambda.ts +++ b/src/constructs/core/custom-resources/runtime/lambda.ts @@ -1,9 +1,9 @@ import { request } from "https"; import { parse } from "url"; -// eslint-disable-next-line import/no-unresolved -- this comes from @types/aws-lambda, but eslint can't seem to read it properly -import type { CloudFormationCustomResourceEvent, Context } from "aws-lambda"; import SSM from "aws-sdk/clients/ssm"; import type { CustomResourceGetParameterProps } from "../interfaces"; +// eslint-disable-next-line import/no-unresolved -- this comes from @types/aws-lambda, but eslint can't seem to read it properly +import type { CloudFormationCustomResourceEvent, Context } from "aws-lambda"; /* eslint-disable -- This function is copied straight from AWS */ // https://github.com/aws/aws-cdk/blob/95438b56bfdc90e94f969f6998e5b5b680cbd7a8/packages/%40aws-cdk/custom-resources/lib/aws-custom-resource/runtime/index.ts#L16-L29 diff --git a/src/constructs/core/identity.ts b/src/constructs/core/identity.ts index be467e2b91..2a84131502 100644 --- a/src/constructs/core/identity.ts +++ b/src/constructs/core/identity.ts @@ -1,5 +1,5 @@ -import type { IConstruct } from "@aws-cdk/core"; import { Tags } from "@aws-cdk/core"; +import type { IConstruct } from "@aws-cdk/core"; export interface StackStageIdentity { stack: string; diff --git a/src/constructs/core/migrating.test.ts b/src/constructs/core/migrating.test.ts index d4032ad0d0..185c0494f3 100644 --- a/src/constructs/core/migrating.test.ts +++ b/src/constructs/core/migrating.test.ts @@ -1,13 +1,13 @@ import "@aws-cdk/assert/jest"; import { SynthUtils } from "@aws-cdk/assert"; -import type { BucketProps } from "@aws-cdk/aws-s3"; import { Bucket } from "@aws-cdk/aws-s3"; import { Annotations } from "@aws-cdk/core"; -import type { GuStatefulConstruct } from "../../utils/mixin"; -import type { SynthedStack } from "../../utils/test"; import { simpleGuStackForTesting } from "../../utils/test"; import { GuMigratingResource } from "./migrating"; +import type { GuStatefulConstruct } from "../../utils/mixin"; +import type { SynthedStack } from "../../utils/test"; import type { GuStack } from "./stack"; +import type { BucketProps } from "@aws-cdk/aws-s3"; class TestGuStatefulConstruct extends Bucket implements GuStatefulConstruct { isStatefulConstruct: true; diff --git a/src/constructs/core/migrating.ts b/src/constructs/core/migrating.ts index 3d57598900..b379450909 100644 --- a/src/constructs/core/migrating.ts +++ b/src/constructs/core/migrating.ts @@ -1,6 +1,6 @@ -import type { CfnElement, IConstruct } from "@aws-cdk/core"; import { Annotations } from "@aws-cdk/core"; import { isGuStatefulConstruct } from "../../utils/mixin"; +import type { CfnElement, IConstruct } from "@aws-cdk/core"; export interface GuMigratingStack { /** diff --git a/src/constructs/core/parameters/acm.ts b/src/constructs/core/parameters/acm.ts index 5aab69606c..63240274bd 100644 --- a/src/constructs/core/parameters/acm.ts +++ b/src/constructs/core/parameters/acm.ts @@ -1,7 +1,7 @@ import { RegexPattern } from "../../../constants"; import { AppIdentity } from "../identity"; -import type { GuStack } from "../stack"; import { GuStringParameter } from "./base"; +import type { GuStack } from "../stack"; export class GuCertificateArnParameter extends GuStringParameter { constructor(scope: GuStack, props: AppIdentity) { diff --git a/src/constructs/core/parameters/base.test.ts b/src/constructs/core/parameters/base.test.ts index 26a4f1695e..8c0c88e1bf 100644 --- a/src/constructs/core/parameters/base.test.ts +++ b/src/constructs/core/parameters/base.test.ts @@ -1,8 +1,8 @@ import "@aws-cdk/assert/jest"; import { SynthUtils } from "@aws-cdk/assert/lib/synth-utils"; -import type { SynthedStack } from "../../../utils/test"; import { simpleGuStackForTesting } from "../../../utils/test"; import { GuArnParameter, GuParameter, GuStringParameter } from "./base"; +import type { SynthedStack } from "../../../utils/test"; describe("The GuParameter class", () => { it("sets the type as passed through by default", () => { diff --git a/src/constructs/core/parameters/base.ts b/src/constructs/core/parameters/base.ts index 558deca3d2..d856f02fa5 100644 --- a/src/constructs/core/parameters/base.ts +++ b/src/constructs/core/parameters/base.ts @@ -1,8 +1,8 @@ -import type { CfnParameterProps } from "@aws-cdk/core"; import { CfnParameter } from "@aws-cdk/core"; import { RegexPattern } from "../../../constants"; import type { AppIdentity } from "../identity"; import type { GuStack } from "../stack"; +import type { CfnParameterProps } from "@aws-cdk/core"; export interface GuParameterProps extends CfnParameterProps { fromSSM?: boolean; diff --git a/src/constructs/core/parameters/ec2.test.ts b/src/constructs/core/parameters/ec2.test.ts index 02db801cf5..dc38864dda 100644 --- a/src/constructs/core/parameters/ec2.test.ts +++ b/src/constructs/core/parameters/ec2.test.ts @@ -1,8 +1,8 @@ import "@aws-cdk/assert/jest"; import { SynthUtils } from "@aws-cdk/assert/lib/synth-utils"; import { simpleGuStackForTesting } from "../../../utils/test"; -import type { SynthedStack } from "../../../utils/test"; import { GuInstanceTypeParameter } from "./ec2"; +import type { SynthedStack } from "../../../utils/test"; describe("The GuInstanceTypeParameter class", () => { it("should combine default, override and prop values", () => { diff --git a/src/constructs/core/parameters/ec2.ts b/src/constructs/core/parameters/ec2.ts index 624de26414..18dd0ce52d 100644 --- a/src/constructs/core/parameters/ec2.ts +++ b/src/constructs/core/parameters/ec2.ts @@ -1,7 +1,7 @@ import { AppIdentity } from "../identity"; +import { GuParameter } from "./base"; import type { GuStack } from "../stack"; import type { GuNoTypeParameterPropsWithAppIdentity } from "./base"; -import { GuParameter } from "./base"; export class GuInstanceTypeParameter extends GuParameter { constructor(scope: GuStack, props: GuNoTypeParameterPropsWithAppIdentity) { diff --git a/src/constructs/core/parameters/identity.ts b/src/constructs/core/parameters/identity.ts index 450236bba1..dddc95856a 100644 --- a/src/constructs/core/parameters/identity.ts +++ b/src/constructs/core/parameters/identity.ts @@ -1,6 +1,6 @@ import { Stage, Stages } from "../../../constants"; -import type { GuStack } from "../stack"; import { GuStringParameter } from "./base"; +import type { GuStack } from "../stack"; export class GuStageParameter extends GuStringParameter { constructor(scope: GuStack) { diff --git a/src/constructs/core/parameters/log-shipping.ts b/src/constructs/core/parameters/log-shipping.ts index f483316cf7..4b47b16b27 100644 --- a/src/constructs/core/parameters/log-shipping.ts +++ b/src/constructs/core/parameters/log-shipping.ts @@ -1,6 +1,6 @@ import { isSingletonPresentInStack } from "../../../utils/test"; -import type { GuStack } from "../stack"; import { GuStringParameter } from "./base"; +import type { GuStack } from "../stack"; export class GuLoggingStreamNameParameter extends GuStringParameter { private static instance: GuStringParameter | undefined; diff --git a/src/constructs/core/parameters/s3.ts b/src/constructs/core/parameters/s3.ts index 20fd3bec7d..e267133f47 100644 --- a/src/constructs/core/parameters/s3.ts +++ b/src/constructs/core/parameters/s3.ts @@ -1,6 +1,6 @@ import { isSingletonPresentInStack } from "../../../utils/test"; -import type { GuStack } from "../stack"; import { GuStringParameter } from "./base"; +import type { GuStack } from "../stack"; /** * Creates a CloudFormation parameter which references the bucket used to store code artifacts. diff --git a/src/constructs/core/parameters/ses.ts b/src/constructs/core/parameters/ses.ts index 54db076d3d..f6320f2841 100644 --- a/src/constructs/core/parameters/ses.ts +++ b/src/constructs/core/parameters/ses.ts @@ -1,6 +1,6 @@ import { RegexPattern } from "../../../constants"; -import type { GuStack } from "../stack"; import { GuStringParameter } from "./base"; +import type { GuStack } from "../stack"; export class GuGuardianEmailSenderParameter extends GuStringParameter { constructor(scope: GuStack) { diff --git a/src/constructs/core/parameters/vpc.test.ts b/src/constructs/core/parameters/vpc.test.ts index bbcf1a511b..f4fff45c9e 100644 --- a/src/constructs/core/parameters/vpc.test.ts +++ b/src/constructs/core/parameters/vpc.test.ts @@ -1,8 +1,8 @@ import "@aws-cdk/assert/jest"; import { SynthUtils } from "@aws-cdk/assert/lib/synth-utils"; -import type { SynthedStack } from "../../../utils/test"; import { simpleGuStackForTesting } from "../../../utils/test"; import { GuSubnetListParameter, GuVpcParameter } from "./vpc"; +import type { SynthedStack } from "../../../utils/test"; describe("The GuSubnetListParameter class", () => { it("should combine override and prop values", () => { diff --git a/src/constructs/core/parameters/vpc.ts b/src/constructs/core/parameters/vpc.ts index ad46db64c7..314a010674 100644 --- a/src/constructs/core/parameters/vpc.ts +++ b/src/constructs/core/parameters/vpc.ts @@ -1,6 +1,6 @@ +import { GuParameter } from "./base"; import type { GuStack } from "../stack"; import type { GuNoTypeParameterProps } from "./base"; -import { GuParameter } from "./base"; export class GuSubnetListParameter extends GuParameter { constructor(scope: GuStack, id: string, props: GuNoTypeParameterProps) { diff --git a/src/constructs/core/ssm.ts b/src/constructs/core/ssm.ts index 4fa603f601..ce6be6beeb 100644 --- a/src/constructs/core/ssm.ts +++ b/src/constructs/core/ssm.ts @@ -1,14 +1,14 @@ import { readFileSync } from "fs"; import { join } from "path"; -import type { IGrantable, IPrincipal } from "@aws-cdk/aws-iam"; import { Policy, PolicyStatement } from "@aws-cdk/aws-iam"; import { Code, Runtime, SingletonFunction } from "@aws-cdk/aws-lambda"; -import type { Reference } from "@aws-cdk/core"; import { Construct, CustomResource, Duration } from "@aws-cdk/core"; import { AwsCustomResourcePolicy } from "@aws-cdk/custom-resources"; import type { CustomResourceGetParameterProps } from "./custom-resources/interfaces"; import type { AppIdentity } from "./identity"; import type { GuStack } from "./stack"; +import type { IGrantable, IPrincipal } from "@aws-cdk/aws-iam"; +import type { Reference } from "@aws-cdk/core"; export interface GuSSMParameterProps { parameter: string; diff --git a/src/constructs/core/stack.test.ts b/src/constructs/core/stack.test.ts index 7101ae72a8..3eb3ae28d5 100644 --- a/src/constructs/core/stack.test.ts +++ b/src/constructs/core/stack.test.ts @@ -8,9 +8,9 @@ import { Stage, Stages } from "../../constants"; import { ContextKeys } from "../../constants/context-keys"; import { TagKeys } from "../../constants/tag-keys"; import { simpleGuStackForTesting } from "../../utils/test"; -import type { SynthedStack } from "../../utils/test"; import { GuParameter } from "./parameters"; import { GuStack } from "./stack"; +import type { SynthedStack } from "../../utils/test"; describe("The GuStack construct", () => { it("requires passing the stack value as props", function () { diff --git a/src/constructs/core/stack.ts b/src/constructs/core/stack.ts index 9133511806..a40d875914 100644 --- a/src/constructs/core/stack.ts +++ b/src/constructs/core/stack.ts @@ -1,4 +1,3 @@ -import type { App, StackProps } from "@aws-cdk/core"; import { Stack, Tags } from "@aws-cdk/core"; import execa from "execa"; import gitUrlParse from "git-url-parse"; @@ -7,12 +6,13 @@ import { ContextKeys } from "../../constants/context-keys"; import { TagKeys } from "../../constants/tag-keys"; import { TrackingTag } from "../../constants/tracking-tag"; import { Logger } from "../../utils/logger"; +import { GuStageMapping } from "./mappings"; +import { GuStageParameter } from "./parameters"; import type { StackStageIdentity } from "./identity"; import type { GuStageDependentValue } from "./mappings"; -import { GuStageMapping } from "./mappings"; import type { GuMigratingStack } from "./migrating"; import type { GuParameter } from "./parameters"; -import { GuStageParameter } from "./parameters"; +import type { App, StackProps } from "@aws-cdk/core"; export interface GuStackProps extends StackProps, Partial { stack: string; diff --git a/src/constructs/ec2/security-groups/base.ts b/src/constructs/ec2/security-groups/base.ts index 958386d63b..ca551186f8 100644 --- a/src/constructs/ec2/security-groups/base.ts +++ b/src/constructs/ec2/security-groups/base.ts @@ -1,9 +1,9 @@ -import type { IPeer, SecurityGroupProps } from "@aws-cdk/aws-ec2"; import { Peer, Port, SecurityGroup } from "@aws-cdk/aws-ec2"; import { GuMigratableConstruct } from "../../../utils/mixin"; -import type { GuStack } from "../../core"; import { AppIdentity } from "../../core/identity"; +import type { GuStack } from "../../core"; import type { GuMigratingResource } from "../../core/migrating"; +import type { IPeer, SecurityGroupProps } from "@aws-cdk/aws-ec2"; /** * A way to describe an ingress or egress rule for a security group. diff --git a/src/constructs/ec2/security-groups/wazuh.ts b/src/constructs/ec2/security-groups/wazuh.ts index 40fa946c77..644048f39e 100644 --- a/src/constructs/ec2/security-groups/wazuh.ts +++ b/src/constructs/ec2/security-groups/wazuh.ts @@ -1,9 +1,9 @@ -import type { IVpc } from "@aws-cdk/aws-ec2"; import { Peer } from "@aws-cdk/aws-ec2"; import { isSingletonPresentInStack } from "../../../utils/test"; -import type { GuStack } from "../../core"; import { GuMigratingResource } from "../../core/migrating"; import { GuBaseSecurityGroup } from "./base"; +import type { GuStack } from "../../core"; +import type { IVpc } from "@aws-cdk/aws-ec2"; /** * A security group to allow a Wazuh agent on an EC2 instance to communicate with the outside. diff --git a/src/constructs/ec2/vpc.test.ts b/src/constructs/ec2/vpc.test.ts index 37ef275bd7..1426cbb2de 100644 --- a/src/constructs/ec2/vpc.test.ts +++ b/src/constructs/ec2/vpc.test.ts @@ -1,7 +1,7 @@ import { SynthUtils } from "@aws-cdk/assert"; -import type { SynthedStack } from "../../utils/test"; import { simpleGuStackForTesting } from "../../utils/test"; import { GuVpc, SubnetType } from "./vpc"; +import type { SynthedStack } from "../../utils/test"; describe("The GuVpc class", () => { describe("subnets method", () => { diff --git a/src/constructs/ec2/vpc.ts b/src/constructs/ec2/vpc.ts index 78cfd454e3..b7da943b72 100644 --- a/src/constructs/ec2/vpc.ts +++ b/src/constructs/ec2/vpc.ts @@ -1,7 +1,7 @@ -import type { ISubnet, IVpc, VpcAttributes } from "@aws-cdk/aws-ec2"; import { Subnet, Vpc } from "@aws-cdk/aws-ec2"; -import type { GuStack } from "../core"; import { GuSubnetListParameter, GuVpcParameter } from "../core"; +import type { GuStack } from "../core"; +import type { ISubnet, IVpc, VpcAttributes } from "@aws-cdk/aws-ec2"; interface VpcFromIdProps extends Omit { availabilityZones?: string[]; diff --git a/src/constructs/iam/policies/assume-role.ts b/src/constructs/iam/policies/assume-role.ts index 41256a358e..fe720be3e5 100644 --- a/src/constructs/iam/policies/assume-role.ts +++ b/src/constructs/iam/policies/assume-role.ts @@ -1,7 +1,7 @@ import { Effect, PolicyStatement } from "@aws-cdk/aws-iam"; +import { GuPolicy } from "./base-policy"; import type { GuStack } from "../../core"; import type { GuNoStatementsPolicyProps } from "./base-policy"; -import { GuPolicy } from "./base-policy"; export interface GuAssumeRolePolicyProps extends GuNoStatementsPolicyProps { resources: string[]; diff --git a/src/constructs/iam/policies/base-policy.ts b/src/constructs/iam/policies/base-policy.ts index 8189884e8e..5c87732716 100644 --- a/src/constructs/iam/policies/base-policy.ts +++ b/src/constructs/iam/policies/base-policy.ts @@ -1,8 +1,8 @@ -import type { PolicyProps } from "@aws-cdk/aws-iam"; import { Effect, Policy, PolicyStatement } from "@aws-cdk/aws-iam"; import { GuMigratableConstruct } from "../../../utils/mixin"; import type { GuStack } from "../../core"; import type { GuMigratingResource } from "../../core/migrating"; +import type { PolicyProps } from "@aws-cdk/aws-iam"; export interface GuPolicyProps extends PolicyProps, GuMigratingResource {} diff --git a/src/constructs/iam/policies/cloudwatch.ts b/src/constructs/iam/policies/cloudwatch.ts index dcb8e4d7d5..7860e45bcb 100644 --- a/src/constructs/iam/policies/cloudwatch.ts +++ b/src/constructs/iam/policies/cloudwatch.ts @@ -1,6 +1,6 @@ +import { GuAllowPolicy } from "./base-policy"; import type { GuStack } from "../../core"; import type { GuAllowPolicyProps } from "./base-policy"; -import { GuAllowPolicy } from "./base-policy"; abstract class GuCloudwatchPolicy extends GuAllowPolicy { protected constructor(scope: GuStack, id: string, props: Omit) { diff --git a/src/constructs/iam/policies/describe-ec2.ts b/src/constructs/iam/policies/describe-ec2.ts index 0ebbae298f..dc977db6ae 100644 --- a/src/constructs/iam/policies/describe-ec2.ts +++ b/src/constructs/iam/policies/describe-ec2.ts @@ -1,7 +1,7 @@ import { Effect, PolicyStatement } from "@aws-cdk/aws-iam"; import { isSingletonPresentInStack } from "../../../utils/test"; -import type { GuStack } from "../../core"; import { GuPolicy } from "./base-policy"; +import type { GuStack } from "../../core"; export class GuDescribeEC2Policy extends GuPolicy { private static instance: GuPolicy | undefined; diff --git a/src/constructs/iam/policies/dynamodb.ts b/src/constructs/iam/policies/dynamodb.ts index 48de383c0c..6455ecbdcb 100644 --- a/src/constructs/iam/policies/dynamodb.ts +++ b/src/constructs/iam/policies/dynamodb.ts @@ -1,6 +1,6 @@ +import { GuAllowPolicy } from "./base-policy"; import type { GuStack } from "../../core"; import type { GuNoStatementsPolicyProps } from "./base-policy"; -import { GuAllowPolicy } from "./base-policy"; interface GuDynamoDBPolicyProps { tableName: string; diff --git a/src/constructs/iam/policies/log-shipping.test.ts b/src/constructs/iam/policies/log-shipping.test.ts index 92589e3c93..3df737af19 100644 --- a/src/constructs/iam/policies/log-shipping.test.ts +++ b/src/constructs/iam/policies/log-shipping.test.ts @@ -1,8 +1,8 @@ import "@aws-cdk/assert/jest"; import { SynthUtils } from "@aws-cdk/assert"; -import type { SynthedStack } from "../../../utils/test"; import { attachPolicyToTestRole, simpleGuStackForTesting } from "../../../utils/test"; import { GuLogShippingPolicy } from "./log-shipping"; +import type { SynthedStack } from "../../../utils/test"; describe("The GuLogShippingPolicy singleton class", () => { it("creates a policy restricted to a kinesis stream defined in a parameter", () => { diff --git a/src/constructs/iam/policies/log-shipping.ts b/src/constructs/iam/policies/log-shipping.ts index df4dd812de..38ceccdc6b 100644 --- a/src/constructs/iam/policies/log-shipping.ts +++ b/src/constructs/iam/policies/log-shipping.ts @@ -1,7 +1,7 @@ import { isSingletonPresentInStack } from "../../../utils/test"; -import type { GuStack } from "../../core"; import { GuLoggingStreamNameParameter } from "../../core/parameters/log-shipping"; import { GuAllowPolicy } from "./base-policy"; +import type { GuStack } from "../../core"; export class GuLogShippingPolicy extends GuAllowPolicy { private static instance: GuLogShippingPolicy | undefined; diff --git a/src/constructs/iam/policies/parameter-store-read.ts b/src/constructs/iam/policies/parameter-store-read.ts index 00aa2f3496..1166f2811f 100644 --- a/src/constructs/iam/policies/parameter-store-read.ts +++ b/src/constructs/iam/policies/parameter-store-read.ts @@ -1,7 +1,7 @@ import { Effect, PolicyStatement } from "@aws-cdk/aws-iam"; -import type { GuStack } from "../../core"; import { AppIdentity } from "../../core/identity"; import { GuPolicy } from "./base-policy"; +import type { GuStack } from "../../core"; export class GuParameterStoreReadPolicy extends GuPolicy { constructor(scope: GuStack, props: AppIdentity) { diff --git a/src/constructs/iam/policies/s3-get-object.test.ts b/src/constructs/iam/policies/s3-get-object.test.ts index d1275a6887..b841fd4aeb 100644 --- a/src/constructs/iam/policies/s3-get-object.test.ts +++ b/src/constructs/iam/policies/s3-get-object.test.ts @@ -1,9 +1,9 @@ import "@aws-cdk/assert/jest"; import { SynthUtils } from "@aws-cdk/assert/lib/synth-utils"; import { attachPolicyToTestRole, simpleGuStackForTesting } from "../../../utils/test"; -import type { SynthedStack } from "../../../utils/test"; import { GuDistributionBucketParameter } from "../../core"; import { GuGetDistributablePolicy, GuGetS3ObjectsPolicy } from "./s3-get-object"; +import type { SynthedStack } from "../../../utils/test"; describe("The GuGetS3ObjectPolicy class", () => { it("sets default props", () => { diff --git a/src/constructs/iam/policies/s3-get-object.ts b/src/constructs/iam/policies/s3-get-object.ts index fef93984d6..0911ae7aaf 100644 --- a/src/constructs/iam/policies/s3-get-object.ts +++ b/src/constructs/iam/policies/s3-get-object.ts @@ -1,9 +1,9 @@ -import type { GuPrivateS3ConfigurationProps } from "../../../utils/ec2"; -import type { GuStack } from "../../core"; import { GuDistributionBucketParameter } from "../../core"; import { AppIdentity } from "../../core/identity"; -import type { GuNoStatementsPolicyProps } from "./base-policy"; import { GuAllowPolicy } from "./base-policy"; +import type { GuPrivateS3ConfigurationProps } from "../../../utils/ec2"; +import type { GuStack } from "../../core"; +import type { GuNoStatementsPolicyProps } from "./base-policy"; export interface GuGetS3ObjectPolicyProps extends GuNoStatementsPolicyProps { bucketName: string; diff --git a/src/constructs/iam/policies/ses.ts b/src/constructs/iam/policies/ses.ts index bfcee22e01..cb86ae43f0 100644 --- a/src/constructs/iam/policies/ses.ts +++ b/src/constructs/iam/policies/ses.ts @@ -1,6 +1,6 @@ -import type { GuStack } from "../../core"; import { GuGuardianEmailSenderParameter } from "../../core"; import { GuAllowPolicy } from "./base-policy"; +import type { GuStack } from "../../core"; export class GuSESSenderPolicy extends GuAllowPolicy { constructor(scope: GuStack) { diff --git a/src/constructs/iam/policies/ssm.ts b/src/constructs/iam/policies/ssm.ts index cf66bea3a9..5d99a0a1e5 100644 --- a/src/constructs/iam/policies/ssm.ts +++ b/src/constructs/iam/policies/ssm.ts @@ -1,6 +1,6 @@ import { isSingletonPresentInStack } from "../../../utils/test"; -import type { GuStack } from "../../core"; import { GuAllowPolicy } from "./base-policy"; +import type { GuStack } from "../../core"; export class GuSSMRunCommandPolicy extends GuAllowPolicy { private static instance: GuSSMRunCommandPolicy | undefined; diff --git a/src/constructs/iam/roles/instance-role.ts b/src/constructs/iam/roles/instance-role.ts index 701ae8cf45..c2d09eb850 100644 --- a/src/constructs/iam/roles/instance-role.ts +++ b/src/constructs/iam/roles/instance-role.ts @@ -1,7 +1,5 @@ import { ServicePrincipal } from "@aws-cdk/aws-iam"; -import type { GuStack } from "../../core"; import { AppIdentity } from "../../core/identity"; -import type { GuPolicy } from "../policies"; import { GuDescribeEC2Policy, GuGetDistributablePolicy, @@ -10,6 +8,8 @@ import { GuSSMRunCommandPolicy, } from "../policies"; import { GuRole } from "./roles"; +import type { GuStack } from "../../core"; +import type { GuPolicy } from "../policies"; export interface GuInstanceRoleProps { withoutLogShipping?: boolean; diff --git a/src/constructs/iam/roles/roles.ts b/src/constructs/iam/roles/roles.ts index 6c8fc1abf9..c3165477d3 100644 --- a/src/constructs/iam/roles/roles.ts +++ b/src/constructs/iam/roles/roles.ts @@ -1,8 +1,8 @@ -import type { RoleProps } from "@aws-cdk/aws-iam"; import { Role } from "@aws-cdk/aws-iam"; import { GuMigratableConstruct } from "../../../utils/mixin"; import type { GuStack } from "../../core"; import type { GuMigratingResource } from "../../core/migrating"; +import type { RoleProps } from "@aws-cdk/aws-iam"; export interface GuRoleProps extends RoleProps, GuMigratingResource {} diff --git a/src/constructs/kinesis/kinesis-stream.ts b/src/constructs/kinesis/kinesis-stream.ts index 335a9da67c..333cbd2bc2 100644 --- a/src/constructs/kinesis/kinesis-stream.ts +++ b/src/constructs/kinesis/kinesis-stream.ts @@ -1,8 +1,8 @@ -import type { StreamProps } from "@aws-cdk/aws-kinesis"; import { Stream } from "@aws-cdk/aws-kinesis"; import { GuStatefulMigratableConstruct } from "../../utils/mixin"; import type { GuStack } from "../core"; import type { GuMigratingResource } from "../core/migrating"; +import type { StreamProps } from "@aws-cdk/aws-kinesis"; export interface GuKinesisStreamProps extends StreamProps, GuMigratingResource {} diff --git a/src/constructs/lambda/lambda.ts b/src/constructs/lambda/lambda.ts index b666659526..1fd3c9b16b 100644 --- a/src/constructs/lambda/lambda.ts +++ b/src/constructs/lambda/lambda.ts @@ -1,13 +1,13 @@ import { Code, Function, RuntimeFamily } from "@aws-cdk/aws-lambda"; -import type { FunctionProps, Runtime } from "@aws-cdk/aws-lambda"; import { Bucket } from "@aws-cdk/aws-s3"; import { Duration } from "@aws-cdk/core"; import { GuDistributable } from "../../types/distributable"; -import type { GuLambdaErrorPercentageMonitoringProps } from "../cloudwatch"; import { GuLambdaErrorPercentageAlarm } from "../cloudwatch"; -import type { GuStack } from "../core"; import { GuDistributionBucketParameter } from "../core"; import { AppIdentity } from "../core/identity"; +import type { GuLambdaErrorPercentageMonitoringProps } from "../cloudwatch"; +import type { GuStack } from "../core"; +import type { FunctionProps, Runtime } from "@aws-cdk/aws-lambda"; export interface GuFunctionProps extends GuDistributable, Omit, AppIdentity { errorPercentageMonitoring?: GuLambdaErrorPercentageMonitoringProps; diff --git a/src/constructs/loadbalancing/alb/application-listener.test.ts b/src/constructs/loadbalancing/alb/application-listener.test.ts index 31228896bb..72fcc7961d 100644 --- a/src/constructs/loadbalancing/alb/application-listener.test.ts +++ b/src/constructs/loadbalancing/alb/application-listener.test.ts @@ -6,11 +6,11 @@ import { Stack } from "@aws-cdk/core"; import { Stage } from "../../../constants"; import { simpleGuStackForTesting } from "../../../utils/test"; import { GuCertificate } from "../../acm"; -import type { GuStack } from "../../core"; -import type { AppIdentity } from "../../core/identity"; import { GuApplicationListener, GuHttpsApplicationListener } from "./application-listener"; import { GuApplicationLoadBalancer } from "./application-load-balancer"; import { GuApplicationTargetGroup } from "./application-target-group"; +import type { GuStack } from "../../core"; +import type { AppIdentity } from "../../core/identity"; const vpc = Vpc.fromVpcAttributes(new Stack(), "VPC", { vpcId: "test", diff --git a/src/constructs/loadbalancing/alb/application-listener.ts b/src/constructs/loadbalancing/alb/application-listener.ts index 48ad9159e4..7b5d07d363 100644 --- a/src/constructs/loadbalancing/alb/application-listener.ts +++ b/src/constructs/loadbalancing/alb/application-listener.ts @@ -1,11 +1,11 @@ -import type { ApplicationListenerProps } from "@aws-cdk/aws-elasticloadbalancingv2"; import { ApplicationListener, ApplicationProtocol, ListenerAction } from "@aws-cdk/aws-elasticloadbalancingv2"; import { GuStatefulMigratableConstruct } from "../../../utils/mixin"; +import { AppIdentity } from "../../core/identity"; import type { GuCertificate } from "../../acm"; import type { GuStack } from "../../core"; -import { AppIdentity } from "../../core/identity"; import type { GuMigratingResource } from "../../core/migrating"; import type { GuApplicationTargetGroup } from "./application-target-group"; +import type { ApplicationListenerProps } from "@aws-cdk/aws-elasticloadbalancingv2"; export interface GuApplicationListenerProps extends ApplicationListenerProps, AppIdentity, GuMigratingResource {} diff --git a/src/constructs/loadbalancing/alb/application-load-balancer.test.ts b/src/constructs/loadbalancing/alb/application-load-balancer.test.ts index 5d10f43a02..c849b7eaf3 100644 --- a/src/constructs/loadbalancing/alb/application-load-balancer.test.ts +++ b/src/constructs/loadbalancing/alb/application-load-balancer.test.ts @@ -3,10 +3,10 @@ import "../../../utils/test/jest"; import { SynthUtils } from "@aws-cdk/assert"; import { Vpc } from "@aws-cdk/aws-ec2"; import { Stack } from "@aws-cdk/core"; -import type { SynthedStack } from "../../../utils/test"; import { simpleGuStackForTesting } from "../../../utils/test"; -import type { AppIdentity } from "../../core/identity"; import { GuApplicationLoadBalancer } from "./application-load-balancer"; +import type { SynthedStack } from "../../../utils/test"; +import type { AppIdentity } from "../../core/identity"; const vpc = Vpc.fromVpcAttributes(new Stack(), "VPC", { vpcId: "test", diff --git a/src/constructs/loadbalancing/alb/application-load-balancer.ts b/src/constructs/loadbalancing/alb/application-load-balancer.ts index 0d62431c7a..7e21df77d4 100644 --- a/src/constructs/loadbalancing/alb/application-load-balancer.ts +++ b/src/constructs/loadbalancing/alb/application-load-balancer.ts @@ -1,10 +1,10 @@ -import type { ApplicationLoadBalancerProps, CfnLoadBalancer } from "@aws-cdk/aws-elasticloadbalancingv2"; import { ApplicationLoadBalancer } from "@aws-cdk/aws-elasticloadbalancingv2"; import { CfnOutput } from "@aws-cdk/core"; import { GuStatefulMigratableConstruct } from "../../../utils/mixin"; -import type { GuStack } from "../../core"; import { AppIdentity } from "../../core/identity"; +import type { GuStack } from "../../core"; import type { GuMigratingResource } from "../../core/migrating"; +import type { ApplicationLoadBalancerProps, CfnLoadBalancer } from "@aws-cdk/aws-elasticloadbalancingv2"; interface GuApplicationLoadBalancerProps extends ApplicationLoadBalancerProps, AppIdentity, GuMigratingResource {} diff --git a/src/constructs/loadbalancing/alb/application-target-group.test.ts b/src/constructs/loadbalancing/alb/application-target-group.test.ts index 8998906308..6d82e1a8aa 100644 --- a/src/constructs/loadbalancing/alb/application-target-group.test.ts +++ b/src/constructs/loadbalancing/alb/application-target-group.test.ts @@ -4,8 +4,8 @@ import { Vpc } from "@aws-cdk/aws-ec2"; import { ApplicationProtocol } from "@aws-cdk/aws-elasticloadbalancingv2"; import { Stack } from "@aws-cdk/core"; import { simpleGuStackForTesting } from "../../../utils/test"; -import type { AppIdentity } from "../../core/identity"; import { GuApplicationTargetGroup } from "./application-target-group"; +import type { AppIdentity } from "../../core/identity"; const vpc = Vpc.fromVpcAttributes(new Stack(), "VPC", { vpcId: "test", diff --git a/src/constructs/loadbalancing/alb/application-target-group.ts b/src/constructs/loadbalancing/alb/application-target-group.ts index 399c75a529..d3071d9a1d 100644 --- a/src/constructs/loadbalancing/alb/application-target-group.ts +++ b/src/constructs/loadbalancing/alb/application-target-group.ts @@ -1,10 +1,10 @@ -import type { ApplicationTargetGroupProps } from "@aws-cdk/aws-elasticloadbalancingv2"; import { ApplicationProtocol, ApplicationTargetGroup, Protocol } from "@aws-cdk/aws-elasticloadbalancingv2"; import { Duration } from "@aws-cdk/core"; import { GuStatefulMigratableConstruct } from "../../../utils/mixin"; -import type { GuStack } from "../../core"; import { AppIdentity } from "../../core/identity"; +import type { GuStack } from "../../core"; import type { GuMigratingResource } from "../../core/migrating"; +import type { ApplicationTargetGroupProps } from "@aws-cdk/aws-elasticloadbalancingv2"; export interface GuApplicationTargetGroupProps extends ApplicationTargetGroupProps, AppIdentity, GuMigratingResource {} diff --git a/src/constructs/loadbalancing/elb.test.ts b/src/constructs/loadbalancing/elb.test.ts index 4bf7f4adaf..48e359966b 100644 --- a/src/constructs/loadbalancing/elb.test.ts +++ b/src/constructs/loadbalancing/elb.test.ts @@ -4,9 +4,9 @@ import { SynthUtils } from "@aws-cdk/assert/lib/synth-utils"; import { Vpc } from "@aws-cdk/aws-ec2"; import { Stack } from "@aws-cdk/core"; import { simpleGuStackForTesting } from "../../utils/test"; +import { GuClassicLoadBalancer, GuHttpsClassicLoadBalancer } from "./elb"; import type { SynthedStack } from "../../utils/test"; import type { AppIdentity } from "../core/identity"; -import { GuClassicLoadBalancer, GuHttpsClassicLoadBalancer } from "./elb"; describe("The GuClassicLoadBalancer class", () => { const vpc = Vpc.fromVpcAttributes(new Stack(), "VPC", { diff --git a/src/constructs/loadbalancing/elb.ts b/src/constructs/loadbalancing/elb.ts index b0939410b1..c491c5ac1d 100644 --- a/src/constructs/loadbalancing/elb.ts +++ b/src/constructs/loadbalancing/elb.ts @@ -1,16 +1,16 @@ -import type { - CfnLoadBalancer, - HealthCheck, - LoadBalancerListener, - LoadBalancerProps, -} from "@aws-cdk/aws-elasticloadbalancing"; import { LoadBalancer, LoadBalancingProtocol } from "@aws-cdk/aws-elasticloadbalancing"; import { Duration } from "@aws-cdk/core"; import { GuStatefulMigratableConstruct } from "../../utils/mixin"; -import type { GuStack } from "../core"; import { GuArnParameter } from "../core"; import { AppIdentity } from "../core/identity"; +import type { GuStack } from "../core"; import type { GuMigratingResource } from "../core/migrating"; +import type { + CfnLoadBalancer, + HealthCheck, + LoadBalancerListener, + LoadBalancerProps, +} from "@aws-cdk/aws-elasticloadbalancing"; interface GuClassicLoadBalancerProps extends Omit, GuMigratingResource, AppIdentity { propertiesToOverride?: Record; diff --git a/src/constructs/rds/instance.ts b/src/constructs/rds/instance.ts index 1d40c5fd69..3aa5e3fad9 100644 --- a/src/constructs/rds/instance.ts +++ b/src/constructs/rds/instance.ts @@ -1,11 +1,11 @@ import { InstanceType } from "@aws-cdk/aws-ec2"; -import type { DatabaseInstanceProps, IParameterGroup } from "@aws-cdk/aws-rds"; import { DatabaseInstance, ParameterGroup } from "@aws-cdk/aws-rds"; import { Fn } from "@aws-cdk/core"; import { GuStatefulMigratableConstruct } from "../../utils/mixin"; -import type { GuStack } from "../core"; import { AppIdentity } from "../core/identity"; +import type { GuStack } from "../core"; import type { GuMigratingResource } from "../core/migrating"; +import type { DatabaseInstanceProps, IParameterGroup } from "@aws-cdk/aws-rds"; export interface GuDatabaseInstanceProps extends Omit, diff --git a/src/constructs/sns/sns-topic.ts b/src/constructs/sns/sns-topic.ts index cf331f6554..14ad09e957 100644 --- a/src/constructs/sns/sns-topic.ts +++ b/src/constructs/sns/sns-topic.ts @@ -1,8 +1,8 @@ import { Topic } from "@aws-cdk/aws-sns"; -import type { TopicProps } from "@aws-cdk/aws-sns"; import { GuStatefulMigratableConstruct } from "../../utils/mixin"; import type { GuStack } from "../core"; import type { GuMigratingResource } from "../core/migrating"; +import type { TopicProps } from "@aws-cdk/aws-sns"; interface GuSnsTopicProps extends TopicProps, GuMigratingResource {} diff --git a/src/patterns/api-lambda.test.ts b/src/patterns/api-lambda.test.ts index f76d36e2bb..9e67fe2afc 100644 --- a/src/patterns/api-lambda.test.ts +++ b/src/patterns/api-lambda.test.ts @@ -1,9 +1,9 @@ import "@aws-cdk/assert/jest"; import { SynthUtils } from "@aws-cdk/assert"; import { Runtime } from "@aws-cdk/aws-lambda"; -import type { NoMonitoring } from "../constructs/cloudwatch"; import { simpleGuStackForTesting } from "../utils/test"; import { GuApiLambda } from "./api-lambda"; +import type { NoMonitoring } from "../constructs/cloudwatch"; describe("The GuApiLambda pattern", () => { it("should create the correct resources with minimal config", () => { diff --git a/src/patterns/api-lambda.ts b/src/patterns/api-lambda.ts index acb7045fe8..d369092e5e 100644 --- a/src/patterns/api-lambda.ts +++ b/src/patterns/api-lambda.ts @@ -1,9 +1,9 @@ -import type { LambdaRestApiProps } from "@aws-cdk/aws-apigateway"; import { LambdaRestApi } from "@aws-cdk/aws-apigateway"; +import { GuLambdaFunction } from "../constructs/lambda"; import type { GuLambdaErrorPercentageMonitoringProps, NoMonitoring } from "../constructs/cloudwatch"; import type { GuStack } from "../constructs/core"; import type { GuFunctionProps } from "../constructs/lambda"; -import { GuLambdaFunction } from "../constructs/lambda"; +import type { LambdaRestApiProps } from "@aws-cdk/aws-apigateway"; interface ApiProps extends Omit { id: string; diff --git a/src/patterns/ec2-app.test.ts b/src/patterns/ec2-app.test.ts index be7c81b9e2..f358c7fce9 100644 --- a/src/patterns/ec2-app.test.ts +++ b/src/patterns/ec2-app.test.ts @@ -2,14 +2,14 @@ import "../utils/test/jest"; import "@aws-cdk/assert/jest"; import { SynthUtils } from "@aws-cdk/assert"; import { Peer, Port, Vpc } from "@aws-cdk/aws-ec2"; -import type { CfnLoadBalancer } from "@aws-cdk/aws-elasticloadbalancingv2"; import { Stage } from "../constants"; import { GuPrivateConfigBucketParameter } from "../constructs/core"; import { GuSecurityGroup } from "../constructs/ec2/security-groups"; import { GuDynamoDBWritePolicy } from "../constructs/iam"; -import type { SynthedStack } from "../utils/test"; import { simpleGuStackForTesting } from "../utils/test"; import { AccessScope, GuApplicationPorts, GuEc2App, GuNodeApp, GuPlayApp } from "./ec2-app"; +import type { SynthedStack } from "../utils/test"; +import type { CfnLoadBalancer } from "@aws-cdk/aws-elasticloadbalancingv2"; const getCertificateProps = () => ({ [Stage.CODE]: { diff --git a/src/patterns/ec2-app.ts b/src/patterns/ec2-app.ts index 9a1c863f86..a0bf9d4ca5 100644 --- a/src/patterns/ec2-app.ts +++ b/src/patterns/ec2-app.ts @@ -1,24 +1,24 @@ import { HealthCheck } from "@aws-cdk/aws-autoscaling"; -import type { IPeer } from "@aws-cdk/aws-ec2"; import { Port } from "@aws-cdk/aws-ec2"; import { ApplicationProtocol } from "@aws-cdk/aws-elasticloadbalancingv2"; import { Duration } from "@aws-cdk/core"; -import type { GuCertificateProps } from "../constructs/acm"; import { GuCertificate } from "../constructs/acm"; -import type { GuUserDataProps } from "../constructs/autoscaling"; import { GuAutoScalingGroup, GuUserData } from "../constructs/autoscaling"; -import type { Gu5xxPercentageMonitoringProps, NoMonitoring } from "../constructs/cloudwatch"; import { Gu5xxPercentageAlarm } from "../constructs/cloudwatch"; -import type { GuStack } from "../constructs/core"; import { AppIdentity } from "../constructs/core/identity"; import { GuSecurityGroup, GuVpc, SubnetType } from "../constructs/ec2"; -import type { GuInstanceRoleProps } from "../constructs/iam"; import { GuGetPrivateConfigPolicy, GuInstanceRole } from "../constructs/iam"; import { GuApplicationLoadBalancer, GuApplicationTargetGroup, GuHttpsApplicationListener, } from "../constructs/loadbalancing"; +import type { GuCertificateProps } from "../constructs/acm"; +import type { GuUserDataProps } from "../constructs/autoscaling"; +import type { Gu5xxPercentageMonitoringProps, NoMonitoring } from "../constructs/cloudwatch"; +import type { GuStack } from "../constructs/core"; +import type { GuInstanceRoleProps } from "../constructs/iam"; +import type { IPeer } from "@aws-cdk/aws-ec2"; export enum AccessScope { PUBLIC, diff --git a/src/patterns/kinesis-lambda.test.ts b/src/patterns/kinesis-lambda.test.ts index e0529efdcf..2690906bf0 100644 --- a/src/patterns/kinesis-lambda.test.ts +++ b/src/patterns/kinesis-lambda.test.ts @@ -1,15 +1,15 @@ import { SynthUtils } from "@aws-cdk/assert"; import "@aws-cdk/assert/jest"; -import type { StreamProps } from "@aws-cdk/aws-kinesis"; import { StreamEncryption } from "@aws-cdk/aws-kinesis"; import { Runtime, StartingPosition } from "@aws-cdk/aws-lambda"; import { Duration } from "@aws-cdk/core"; -import type { NoMonitoring } from "../constructs/cloudwatch"; import { StreamRetry } from "../utils/lambda"; -import type { StreamErrorHandlingProps, StreamProcessingProps } from "../utils/lambda"; import { simpleGuStackForTesting } from "../utils/test"; -import type { SynthedStack } from "../utils/test"; import { GuKinesisLambda } from "./kinesis-lambda"; +import type { NoMonitoring } from "../constructs/cloudwatch"; +import type { StreamErrorHandlingProps, StreamProcessingProps } from "../utils/lambda"; +import type { SynthedStack } from "../utils/test"; +import type { StreamProps } from "@aws-cdk/aws-kinesis"; describe("The GuKinesisLambda pattern", () => { it("should create the correct resources for a new stack with minimal config", () => { diff --git a/src/patterns/kinesis-lambda.ts b/src/patterns/kinesis-lambda.ts index bae826c50d..8d4984c988 100644 --- a/src/patterns/kinesis-lambda.ts +++ b/src/patterns/kinesis-lambda.ts @@ -1,18 +1,18 @@ -import type { StreamProps } from "@aws-cdk/aws-kinesis"; import { Stream, StreamEncryption } from "@aws-cdk/aws-kinesis"; import { StartingPosition } from "@aws-cdk/aws-lambda"; -import type { KinesisEventSourceProps } from "@aws-cdk/aws-lambda-event-sources"; import { KinesisEventSource } from "@aws-cdk/aws-lambda-event-sources"; +import { AppIdentity } from "../constructs/core/identity"; +import { GuKinesisStream } from "../constructs/kinesis"; +import { GuLambdaFunction } from "../constructs/lambda"; +import { toAwsErrorHandlingProps } from "../utils/lambda"; import type { GuLambdaErrorPercentageMonitoringProps, NoMonitoring } from "../constructs/cloudwatch"; import type { GuStack } from "../constructs/core"; -import { AppIdentity } from "../constructs/core/identity"; import type { GuMigratingResource } from "../constructs/core/migrating"; import type { GuKinesisStreamProps } from "../constructs/kinesis"; -import { GuKinesisStream } from "../constructs/kinesis"; import type { GuFunctionProps } from "../constructs/lambda"; -import { GuLambdaFunction } from "../constructs/lambda"; import type { StreamErrorHandlingProps, StreamProcessingProps } from "../utils/lambda"; -import { toAwsErrorHandlingProps } from "../utils/lambda"; +import type { StreamProps } from "@aws-cdk/aws-kinesis"; +import type { KinesisEventSourceProps } from "@aws-cdk/aws-lambda-event-sources"; /** * Used to provide information about an existing Kinesis stream to the [[`GuKinesisLambda`]] pattern. diff --git a/src/patterns/scheduled-lambda.test.ts b/src/patterns/scheduled-lambda.test.ts index a7621c5176..40ded9dd2b 100644 --- a/src/patterns/scheduled-lambda.test.ts +++ b/src/patterns/scheduled-lambda.test.ts @@ -3,9 +3,9 @@ import { SynthUtils } from "@aws-cdk/assert"; import { Schedule } from "@aws-cdk/aws-events"; import { Runtime } from "@aws-cdk/aws-lambda"; import { Duration } from "@aws-cdk/core"; -import type { NoMonitoring } from "../constructs/cloudwatch"; import { simpleGuStackForTesting } from "../utils/test"; import { GuScheduledLambda } from "./scheduled-lambda"; +import type { NoMonitoring } from "../constructs/cloudwatch"; describe("The GuScheduledLambda pattern", () => { it("should create the correct resources with minimal config", () => { diff --git a/src/patterns/scheduled-lambda.ts b/src/patterns/scheduled-lambda.ts index cdd1b3424c..8cf3d3e6e4 100644 --- a/src/patterns/scheduled-lambda.ts +++ b/src/patterns/scheduled-lambda.ts @@ -1,10 +1,10 @@ -import type { Schedule } from "@aws-cdk/aws-events"; import { Rule } from "@aws-cdk/aws-events"; import { LambdaFunction } from "@aws-cdk/aws-events-targets"; +import { GuLambdaFunction } from "../constructs/lambda"; import type { GuLambdaErrorPercentageMonitoringProps, NoMonitoring } from "../constructs/cloudwatch"; import type { GuStack } from "../constructs/core"; -import { GuLambdaFunction } from "../constructs/lambda"; import type { GuFunctionProps } from "../constructs/lambda"; +import type { Schedule } from "@aws-cdk/aws-events"; /** * Configuration options for the [[`GuScheduledLambda`]] pattern. diff --git a/src/patterns/sns-lambda.test.ts b/src/patterns/sns-lambda.test.ts index bc02c632a9..ab48cec55c 100644 --- a/src/patterns/sns-lambda.test.ts +++ b/src/patterns/sns-lambda.test.ts @@ -2,9 +2,9 @@ import "@aws-cdk/assert/jest"; import "../utils/test/jest"; import { SynthUtils } from "@aws-cdk/assert"; import { Runtime } from "@aws-cdk/aws-lambda"; -import type { NoMonitoring } from "../constructs/cloudwatch"; import { simpleGuStackForTesting } from "../utils/test"; import { GuSnsLambda } from "./sns-lambda"; +import type { NoMonitoring } from "../constructs/cloudwatch"; describe("The GuSnsLambda pattern", () => { it("should create the correct resources for a new stack with minimal config", () => { diff --git a/src/patterns/sns-lambda.ts b/src/patterns/sns-lambda.ts index 3a0b2d98a2..6d86b771e1 100644 --- a/src/patterns/sns-lambda.ts +++ b/src/patterns/sns-lambda.ts @@ -1,13 +1,13 @@ import { SnsEventSource } from "@aws-cdk/aws-lambda-event-sources"; import { Topic } from "@aws-cdk/aws-sns"; import { CfnOutput } from "@aws-cdk/core"; +import { AppIdentity } from "../constructs/core/identity"; +import { GuLambdaFunction } from "../constructs/lambda"; +import { GuSnsTopic } from "../constructs/sns"; import type { GuLambdaErrorPercentageMonitoringProps, NoMonitoring } from "../constructs/cloudwatch"; import type { GuStack } from "../constructs/core"; -import { AppIdentity } from "../constructs/core/identity"; import type { GuMigratingResource } from "../constructs/core/migrating"; import type { GuFunctionProps } from "../constructs/lambda"; -import { GuLambdaFunction } from "../constructs/lambda"; -import { GuSnsTopic } from "../constructs/sns"; /** * Used to provide information about an existing SNS topic to the [[`GuSnsLambda`]] pattern. diff --git a/src/utils/lambda/event-source.ts b/src/utils/lambda/event-source.ts index a20b35abcc..5b0db8ae6f 100644 --- a/src/utils/lambda/event-source.ts +++ b/src/utils/lambda/event-source.ts @@ -1,6 +1,6 @@ +import { Duration } from "@aws-cdk/core"; import type { IEventSourceDlq } from "@aws-cdk/aws-lambda"; import type { KinesisEventSourceProps } from "@aws-cdk/aws-lambda-event-sources"; -import { Duration } from "@aws-cdk/core"; export type StreamProcessingProps = Omit< KinesisEventSourceProps, diff --git a/src/utils/mixin/migratable-construct-stateful.test.ts b/src/utils/mixin/migratable-construct-stateful.test.ts index bc68c8152b..28550412a5 100644 --- a/src/utils/mixin/migratable-construct-stateful.test.ts +++ b/src/utils/mixin/migratable-construct-stateful.test.ts @@ -1,11 +1,11 @@ -import type { BucketProps } from "@aws-cdk/aws-s3"; import "../test/jest"; import { Bucket } from "@aws-cdk/aws-s3"; import { Annotations } from "@aws-cdk/core"; -import type { GuStack } from "../../constructs/core"; -import type { GuMigratingResource } from "../../constructs/core/migrating"; import { simpleGuStackForTesting } from "../test"; import { GuStatefulMigratableConstruct } from "./migratable-construct-stateful"; +import type { GuStack } from "../../constructs/core"; +import type { GuMigratingResource } from "../../constructs/core/migrating"; +import type { BucketProps } from "@aws-cdk/aws-s3"; interface TestGuMigratableConstructProps extends BucketProps, GuMigratingResource {} diff --git a/src/utils/mixin/migratable-construct.test.ts b/src/utils/mixin/migratable-construct.test.ts index 41d824021d..0752ef4aab 100644 --- a/src/utils/mixin/migratable-construct.test.ts +++ b/src/utils/mixin/migratable-construct.test.ts @@ -1,10 +1,10 @@ -import type { BucketProps } from "@aws-cdk/aws-s3"; import "../test/jest"; import { Bucket } from "@aws-cdk/aws-s3"; -import type { GuStack } from "../../constructs/core"; import { GuMigratingResource } from "../../constructs/core/migrating"; import { simpleGuStackForTesting } from "../test"; import { GuMigratableConstruct } from "./migratable-construct"; +import type { GuStack } from "../../constructs/core"; +import type { BucketProps } from "@aws-cdk/aws-s3"; interface TestGuMigratableConstructProps extends BucketProps, GuMigratingResource {} diff --git a/src/utils/mixin/migratable-construct.ts b/src/utils/mixin/migratable-construct.ts index ef6781e73e..a14d02c53a 100644 --- a/src/utils/mixin/migratable-construct.ts +++ b/src/utils/mixin/migratable-construct.ts @@ -1,6 +1,6 @@ import { Construct } from "@aws-cdk/core"; -import type { GuMigratingStack } from "../../constructs/core/migrating"; import { GuMigratingResource, isGuMigratingStack } from "../../constructs/core/migrating"; +import type { GuMigratingStack } from "../../constructs/core/migrating"; import type { AnyConstructor } from "./types"; /** diff --git a/src/utils/security-groups/helpers.ts b/src/utils/security-groups/helpers.ts index 1ec5c4fd73..9c5f986984 100644 --- a/src/utils/security-groups/helpers.ts +++ b/src/utils/security-groups/helpers.ts @@ -1,6 +1,6 @@ -import type { Port } from "@aws-cdk/aws-ec2"; import { Peer } from "@aws-cdk/aws-ec2"; import type { SecurityGroupAccessRule } from "../../constructs/ec2"; +import type { Port } from "@aws-cdk/aws-ec2"; export const transformToSecurityGroupAccessRule = ( cidrBlocks: Array<[string, string]>, diff --git a/src/utils/test/attach-policy-to-test-role.ts b/src/utils/test/attach-policy-to-test-role.ts index 60f49a5333..c504b7fd47 100644 --- a/src/utils/test/attach-policy-to-test-role.ts +++ b/src/utils/test/attach-policy-to-test-role.ts @@ -1,7 +1,7 @@ -import type { Policy } from "@aws-cdk/aws-iam"; import { Role, ServicePrincipal } from "@aws-cdk/aws-iam"; -import type { Stack } from "@aws-cdk/core"; import { Tags } from "@aws-cdk/core"; +import type { Policy } from "@aws-cdk/aws-iam"; +import type { Stack } from "@aws-cdk/core"; // IAM Policies need to be attached to a role, group or user to be created in a stack export const attachPolicyToTestRole = (stack: Stack, policy: Policy, id: string = "TestRole"): void => { diff --git a/src/utils/test/jest.ts b/src/utils/test/jest.ts index 4a6539dff0..a31ea7ec3b 100644 --- a/src/utils/test/jest.ts +++ b/src/utils/test/jest.ts @@ -1,12 +1,12 @@ import "@aws-cdk/assert/jest"; -import type { JestFriendlyAssertion, StackInspector } from "@aws-cdk/assert"; import { HaveResourceAssertion } from "@aws-cdk/assert"; import { expect as awsExpect } from "@aws-cdk/assert/lib/expect"; import { TagKeys } from "../../constants/tag-keys"; import { TrackingTag } from "../../constants/tracking-tag"; +import { findResourceByTypeAndLogicalId } from "./synthed-stack"; import type { GuStack } from "../../constructs/core"; import type { AppIdentity } from "../../constructs/core/identity"; -import { findResourceByTypeAndLogicalId } from "./synthed-stack"; +import type { JestFriendlyAssertion, StackInspector } from "@aws-cdk/assert"; interface Tag { Key: string; diff --git a/src/utils/test/simple-gu-stack.ts b/src/utils/test/simple-gu-stack.ts index 95d7503c69..c2ccbfad7f 100644 --- a/src/utils/test/simple-gu-stack.ts +++ b/src/utils/test/simple-gu-stack.ts @@ -1,6 +1,6 @@ import { App } from "@aws-cdk/core"; -import type { GuStackProps } from "../../constructs/core"; import { GuStack } from "../../constructs/core"; +import type { GuStackProps } from "../../constructs/core"; export const simpleGuStackForTesting: (props?: Partial) => GuStack = (props?: Partial) => new GuStack(new App(), "Test", { stack: props?.stack ?? "test-stack", ...props }); diff --git a/src/utils/test/singleton.ts b/src/utils/test/singleton.ts index c0acb49ecd..a43d4db37d 100644 --- a/src/utils/test/singleton.ts +++ b/src/utils/test/singleton.ts @@ -1,5 +1,5 @@ -import type { Stack } from "@aws-cdk/core/lib/stack"; import type { GuStack } from "../../constructs/core"; +import type { Stack } from "@aws-cdk/core/lib/stack"; /** * Check if an element exists in a [[`GuStack`]].