-
Notifications
You must be signed in to change notification settings - Fork 5
/
.projenrc.ts
76 lines (70 loc) · 1.53 KB
/
.projenrc.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
import {javascript, cdk, TextFile} from 'projen'
const repository = 'https://github.com/AminFazlMondo/Lerna-Projen.git'
const nodeVersion = '20'
const project = new cdk.JsiiProject({
projenrcTs: true,
defaultReleaseBranch: 'main',
name: 'lerna-project',
description: 'A lerna project for managing monorepo using lerna',
keywords: [
'lerna',
'monorepo',
'projen',
'typescript',
],
majorVersion: 0,
packageName: 'lerna-projen',
packageManager: javascript.NodePackageManager.NPM,
pnpmVersion: '8',
repository,
repositoryUrl: repository,
authorAddress: 'amin.fazl@mondo.com.au',
author: 'Amin Fazl',
peerDeps: [
'projen',
'constructs',
],
devDeps: [
'@types/babel__core',
'@types/fs-extra',
],
bundledDeps: [
'commander',
'fs-extra',
],
releaseToNpm: true,
npmAccess: javascript.NpmAccess.PUBLIC,
docgen: true,
tsconfig: {
compilerOptions: {
lib: ['es2019'],
},
},
workflowNodeVersion: nodeVersion,
minNodeVersion: `${nodeVersion}.0.0`,
publishTasks: true,
autoApproveOptions: {
allowedUsernames: ['AminFazlMondo'],
},
autoApproveUpgrades: true,
jsiiVersion: '5.4.x',
releaseFailureIssue: true,
})
const additionalRules = {
'curly': [
'error',
'multi',
'consistent',
],
'semi': [
'error',
'never',
],
'object-curly-spacing': 'error',
'nonblock-statement-body-position': ['error', 'below'],
}
project.eslint?.addRules(additionalRules)
new TextFile(project, '.nvmrc', {
lines: [nodeVersion],
})
project.synth()