Skip to content

Commit

Permalink
chore: move stack from 'bin' to a file in 'lib'
Browse files Browse the repository at this point in the history
Generally we recommend people write reusable constructs in 'lib'
directories, and they should put stacks there as well.

Change the init template to reflect this change.

Fixes #1128.
  • Loading branch information
rix0rrr committed Nov 19, 2018
1 parent 127bb59 commit 57700a7
Show file tree
Hide file tree
Showing 5 changed files with 58 additions and 61 deletions.
Original file line number Diff line number Diff line change
@@ -1,24 +1,7 @@
#!/usr/bin/env node
import sns = require('@aws-cdk/aws-sns');
import sqs = require('@aws-cdk/aws-sqs');
import cdk = require('@aws-cdk/cdk');

class %name.PascalCased%Stack extends cdk.Stack {
constructor(parent: cdk.App, name: string, props?: cdk.StackProps) {
super(parent, name, props);

const queue = new sqs.Queue(this, '%name.PascalCased%Queue', {
visibilityTimeoutSec: 300
});

const topic = new sns.Topic(this, '%name.PascalCased%Topic');

topic.subscribeQueue(queue);
}
}
import { %name.PascalCased%Stack } from '../lib/%name%-stack';

const app = new cdk.App();

new %name.PascalCased%Stack(app, '%name.PascalCased%Stack');

app.run();
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
"app": "node bin/%name%.js"
"app": "node bin/%name%.js"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import sns = require('@aws-cdk/aws-sns');
import sqs = require('@aws-cdk/aws-sqs');
import cdk = require('@aws-cdk/cdk');

export class %name.PascalCased%Stack extends cdk.Stack {
constructor(parent: cdk.App, name: string, props?: cdk.StackProps) {
super(parent, name, props);

const queue = new sqs.Queue(this, '%name.PascalCased%Queue', {
visibilityTimeoutSec: 300
});

const topic = new sns.Topic(this, '%name.PascalCased%Topic');

topic.subscribeQueue(queue);
}
}
Original file line number Diff line number Diff line change
@@ -1,24 +1,22 @@
{
"name": "%name%",
"version": "0.1.0",
"main": "bin/index.js",
"types": "bin/index.d.ts",
"bin": {
"%name%": "bin/%name%.js"
},
"scripts": {
"build": "tsc",
"watch": "tsc -w",
"cdk": "cdk"
},
"devDependencies": {
"@types/node": "^8.9.4",
"typescript": "^3.1.2",
"aws-cdk": "^%cdk-version%"
},
"dependencies": {
"@aws-cdk/aws-sns": "^%cdk-version%",
"@aws-cdk/aws-sqs": "^%cdk-version%",
"@aws-cdk/cdk": "^%cdk-version%"
}
"name": "%name%",
"version": "0.1.0",
"bin": {
"%name%": "bin/%name%.js"
},
"scripts": {
"build": "tsc",
"watch": "tsc -w",
"cdk": "cdk"
},
"devDependencies": {
"@types/node": "^8.9.4",
"typescript": "^3.1.2",
"aws-cdk": "^%cdk-version%"
},
"dependencies": {
"@aws-cdk/aws-sns": "^%cdk-version%",
"@aws-cdk/aws-sqs": "^%cdk-version%",
"@aws-cdk/cdk": "^%cdk-version%"
}
}
39 changes: 19 additions & 20 deletions packages/aws-cdk/lib/init-templates/app/typescript/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,22 +1,21 @@
{
"compilerOptions": {
"target":"ES2018",
"module": "commonjs",
"lib": ["es2016", "es2017.object", "es2017.string"],
"declaration": true,
"strict": true,
"noImplicitAny": true,
"strictNullChecks": true,
"noImplicitThis": true,
"alwaysStrict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": false,
"inlineSourceMap": true,
"inlineSources": true,
"experimentalDecorators": true,
"strictPropertyInitialization":false
}
"compilerOptions": {
"target":"ES2018",
"module": "commonjs",
"lib": ["es2016", "es2017.object", "es2017.string"],
"declaration": true,
"strict": true,
"noImplicitAny": true,
"strictNullChecks": true,
"noImplicitThis": true,
"alwaysStrict": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": false,
"inlineSourceMap": true,
"inlineSources": true,
"experimentalDecorators": true,
"strictPropertyInitialization":false
}
}

0 comments on commit 57700a7

Please sign in to comment.