Delete the sample code from your stack #
The project created by cdk init sample-app
includes an SQS queue, and an SNS topic. We’re
not going to use them in our project, so remove them from your the
CdkWorkshopStack
constructor.
Open ~/CdkWorkshopStack.java
and clean it up. Eventually it should look like this:
package com.myorg;
import software.constructs.Construct;
import software.amazon.awscdk.Stack;
import software.amazon.awscdk.StackProps;
public class CdkWorkshopStack extends Stack {
public CdkWorkshopStack(final Construct parent, final String id) {
this(parent, id, null);
}
public CdkWorkshopStack(final Construct parent, final String id, final StackProps props) {
super(parent, id, props);
// Nothing here!
}
}
Delete the test
directory
#
The test
directory can be used to create tests for your project using the junit
library. For the purposes of this workshop, do not need it, so delete the directory from root.
cdk diff #
Now that we modified our stack’s contents, we can ask the toolkit to show us the difference between our CDK app and
what’s currently deployed. This is a safe way to check what will happen once we run cdk deploy
and is always good practice:
mvn clean package
cdk diff
Output should look like the following:
IAM Statement Changes
┌───┬─────────────────────────────────┬────────┬─────────────────┬───────────────────────────┬──────────────────────────────────────────────────┐
│ │ Resource │ Effect │ Action │ Principal │ Condition │
├───┼─────────────────────────────────┼────────┼─────────────────┼───────────────────────────┼──────────────────────────────────────────────────┤
│ - │ ${CdkWorkshopQueue50D9D426.Arn} │ Allow │ sqs:SendMessage │ Service:sns.amazonaws.com │ "ArnEquals": { │
│ │ │ │ │ │ "aws:SourceArn": "${CdkWorkshopTopicD368A42F}" │
│ │ │ │ │ │ } │
└───┴─────────────────────────────────┴────────┴─────────────────┴───────────────────────────┴──────────────────────────────────────────────────┘
(NOTE: There may be security-related changes not in this list. See http://bit.ly/cdk-2EhF7Np)
Resources
[-] AWS::SQS::Queue CdkWorkshopQueue50D9D426 destroy
[-] AWS::SQS::QueuePolicy CdkWorkshopQueuePolicyAF2494A5 destroy
[-] AWS::SNS::Topic CdkWorkshopTopicD368A42F destroy
[-] AWS::SNS::Subscription CdkWorkshopTopicCdkWorkshopQueueSubscription88D211C7 destroy
As expected, all of our resources are going to be brutally destroyed.
cdk deploy #
Run cdk deploy
and proceed to the next section (no need to wait):
cdk deploy
You should see the resources being deleted.