Skip to content

Commit

Permalink
feat: remove tags
Browse files Browse the repository at this point in the history
  • Loading branch information
sbstjn committed Mar 23, 2024
1 parent c34f353 commit 3e93596
Show file tree
Hide file tree
Showing 5 changed files with 20 additions and 58 deletions.
19 changes: 0 additions & 19 deletions aws/aspects/UnifiedTags.ts

This file was deleted.

16 changes: 0 additions & 16 deletions aws/base/Workload.ts

This file was deleted.

23 changes: 15 additions & 8 deletions aws/stacks/Observability.ts
Original file line number Diff line number Diff line change
@@ -1,22 +1,29 @@
import { Aspects, Stack, Tags, aws_s3 } from 'aws-cdk-lib'
import { IConstruct } from 'constructs'
import { Aspects, Stack, aws_s3 } from 'aws-cdk-lib'
import { Construct, IConstruct } from 'constructs'
import { EnableLambdaXRayTracing } from '../aspects/EnableLambdaXRayTracing'
import { S3BucketAccessLogs } from '../aspects/S3BucketAccessLogs'

export interface ObservabilityStackProps {
cover: IConstruct[]
}

export class ObservabilityStack extends Stack {
bucketS3AccessLogs = new aws_s3.Bucket(this, 's3-access-logs')

constructor(scope: IConstruct, id: string) {
constructor(scope: IConstruct, id: string, props: ObservabilityStackProps) {
super(scope, id)

Tags.of(this).add('custom:observability', 'true')
props.cover.forEach(node => {
this.enableS3AccessLogs(node)
this.enableLambdaXRayTracing(node)
})
}

public enableS3AccessLogs(stack: Stack) {
Aspects.of(stack).add(new S3BucketAccessLogs({ bucket: this.bucketS3AccessLogs }))
public enableS3AccessLogs(node: Construct) {
Aspects.of(node).add(new S3BucketAccessLogs({ bucket: this.bucketS3AccessLogs }))
}

public enableLambdaXRayTracing(stack: Stack) {
Aspects.of(stack).add(new EnableLambdaXRayTracing())
public enableLambdaXRayTracing(node: Construct) {
Aspects.of(node).add(new EnableLambdaXRayTracing())
}
}
16 changes: 5 additions & 11 deletions aws/workloads/Example.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
import { Aspects } from 'aws-cdk-lib'
import { IConstruct } from 'constructs'
import { UnifiedTags } from '../aspects/UnifiedTags'
import { Workload } from '../base/Workload'
import { Construct, IConstruct } from 'constructs'
import { ComputeStack } from '../stacks/Compute'
import { ObservabilityStack } from '../stacks/Observability'
import { StorageStack } from '../stacks/Storage'
Expand All @@ -10,20 +7,17 @@ export interface ExampleProps {
enableObservability: boolean
}

export class Example extends Workload {
export class Example extends Construct {
constructor(scope: IConstruct, props: ExampleProps) {
super(scope, 'example')

const storage = new StorageStack(this, 'storage')
const compute = new ComputeStack(this, 'compute')

if (props.enableObservability) {
const obs = new ObservabilityStack(this, 'observability')

obs.enableS3AccessLogs(storage)
obs.enableLambdaXRayTracing(compute)
new ObservabilityStack(this, 'observability', {
cover: [storage, compute],
})
}

Aspects.of(this).add(new UnifiedTags())
}
}
4 changes: 0 additions & 4 deletions test/aws/workloads/Example.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,6 @@ describe('Stack', () => {
})

describe('Context', () => {
it('has workload context', () => {
expect(workload.node.getContext('workload')).toBe('example')
})

it('has version context', () => {
expect(workload.node.getContext('version')).toBe('v3.2.1-workload')
})
Expand Down

0 comments on commit 3e93596

Please sign in to comment.