@rxap/plugin-nestjs 16.1.0-dev.1 → 16.1.0-dev.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +97 -0
- package/LICENSE.md +621 -0
- package/README.md +137 -1
- package/executors.json +9 -0
- package/generators.json +87 -0
- package/package.json +39 -6
- package/src/executors/package-json/executor.d.ts +5 -0
- package/src/executors/package-json/executor.js +21 -0
- package/src/executors/package-json/executor.js.map +1 -0
- package/src/executors/package-json/schema.d.ts +1 -0
- package/src/executors/package-json/schema.json +9 -0
- package/src/generators/health-indicator/generator.d.ts +4 -0
- package/src/generators/health-indicator/generator.js +31 -0
- package/src/generators/health-indicator/generator.js.map +1 -0
- package/src/generators/health-indicator/index.d.ts +2 -0
- package/src/generators/health-indicator/index.js +7 -0
- package/src/generators/health-indicator/index.js.map +1 -0
- package/src/generators/health-indicator/schema.d.ts +4 -0
- package/src/generators/health-indicator/schema.json +29 -0
- package/src/generators/health-indicator-init/generator.d.ts +4 -0
- package/src/generators/health-indicator-init/generator.js +33 -0
- package/src/generators/health-indicator-init/generator.js.map +1 -0
- package/src/generators/health-indicator-init/index.d.ts +2 -0
- package/src/generators/health-indicator-init/index.js +7 -0
- package/src/generators/health-indicator-init/index.js.map +1 -0
- package/src/generators/health-indicator-init/schema.d.ts +3 -0
- package/src/generators/health-indicator-init/schema.json +19 -0
- package/src/generators/init/index.d.ts +2 -0
- package/src/generators/init/index.js +7 -0
- package/src/generators/init/index.js.map +1 -0
- package/src/generators/init/schema.d.ts +1 -0
- package/src/generators/init/schema.json +5 -0
- package/src/generators/init-application/files/Dockerfile__tmpl__ +21 -0
- package/src/generators/init-application/files/healthcheck.js__tmpl__ +38 -0
- package/src/generators/init-application/files/main.ts__tmpl__ +114 -0
- package/src/generators/init-application/generator.d.ts +0 -3
- package/src/generators/init-application/generator.js +439 -5
- package/src/generators/init-application/generator.js.map +1 -1
- package/src/generators/init-application/index.d.ts +2 -0
- package/src/generators/init-application/index.js +7 -0
- package/src/generators/init-application/index.js.map +1 -0
- package/src/generators/init-application/schema.d.ts +1 -1
- package/src/generators/init-application/schema.json +15 -16
- package/src/generators/init-library/generator.js +12 -17
- package/src/generators/init-library/generator.js.map +1 -1
- package/src/generators/init-library/index.d.ts +2 -0
- package/src/generators/init-library/index.js +7 -0
- package/src/generators/init-library/index.js.map +1 -0
- package/src/generators/init-library/schema.d.ts +1 -0
- package/src/generators/init-library/schema.json +5 -0
- package/src/generators/jwt/generator.d.ts +4 -0
- package/src/generators/jwt/generator.js +54 -0
- package/src/generators/jwt/generator.js.map +1 -0
- package/src/generators/jwt/index.d.ts +2 -0
- package/src/generators/jwt/index.js +7 -0
- package/src/generators/jwt/index.js.map +1 -0
- package/src/generators/jwt/schema.d.ts +3 -0
- package/src/generators/jwt/schema.json +15 -0
- package/src/generators/open-api/generator.d.ts +4 -0
- package/src/generators/open-api/generator.js +45 -0
- package/src/generators/open-api/generator.js.map +1 -0
- package/src/generators/open-api/index.d.ts +2 -0
- package/src/generators/open-api/index.js +7 -0
- package/src/generators/open-api/index.js.map +1 -0
- package/src/generators/open-api/schema.d.ts +3 -0
- package/src/generators/open-api/schema.json +15 -0
- package/src/generators/sentry/generator.d.ts +4 -0
- package/src/generators/sentry/generator.js +147 -0
- package/src/generators/sentry/generator.js.map +1 -0
- package/src/generators/sentry/index.d.ts +2 -0
- package/src/generators/sentry/index.js +7 -0
- package/src/generators/sentry/index.js.map +1 -0
- package/src/generators/sentry/schema.d.ts +6 -0
- package/src/generators/sentry/schema.json +32 -0
- package/src/generators/swagger/files/environments/environment.swagger.ts__tmpl__ +8 -0
- package/src/generators/swagger/files/swagger.ts__tmpl__ +21 -0
- package/src/generators/swagger/generator.d.ts +4 -0
- package/src/generators/swagger/generator.js +87 -0
- package/src/generators/swagger/generator.js.map +1 -0
- package/src/generators/swagger/index.d.ts +2 -0
- package/src/generators/swagger/index.js +7 -0
- package/src/generators/swagger/index.js.map +1 -0
- package/src/generators/swagger/schema.d.ts +3 -0
- package/src/generators/swagger/schema.json +19 -0
- package/src/generators/validator/generator.d.ts +4 -0
- package/src/generators/validator/generator.js +14 -0
- package/src/generators/validator/generator.js.map +1 -0
- package/src/generators/validator/index.d.ts +2 -0
- package/src/generators/validator/index.js +7 -0
- package/src/generators/validator/index.js.map +1 -0
- package/src/generators/validator/schema.d.ts +3 -0
- package/src/generators/validator/schema.json +19 -0
- package/src/index.d.ts +1 -0
- package/src/index.js +3 -1
- package/src/index.js.map +1 -1
package/README.md
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
- [Installation](#installation)
|
|
11
11
|
- [Generators](#generators)
|
|
12
|
+
- [Executors](#executors)
|
|
12
13
|
|
|
13
14
|
# Installation
|
|
14
15
|
|
|
@@ -18,7 +19,7 @@ yarn add @rxap/plugin-nestjs
|
|
|
18
19
|
```
|
|
19
20
|
**Install peer dependencies:**
|
|
20
21
|
```bash
|
|
21
|
-
yarn add @nx/devkit@^16.5.0 @rxap/generator-utilities@^1.0.1-dev.2
|
|
22
|
+
yarn add @nx/devkit@^16.5.0 @nx/js@^16.5.0 @rxap/generator-utilities@^1.1.0-dev.7 @rxap/plugin-utilities@^16.1.0-dev.9 @rxap/ts-morph@^0.1.0-dev.2 @rxap/utilities@^16.0.0-dev.13 @rxap/workspace-ts-morph@^0.1.0-dev.3 @rxap/workspace-utilities@^0.1.0-dev.7 ts-morph@^18.0.0
|
|
22
23
|
```
|
|
23
24
|
**Execute the init generator:**
|
|
24
25
|
```bash
|
|
@@ -46,3 +47,138 @@ yarn nx g @rxap/plugin-nestjs:init-library
|
|
|
46
47
|
```bash
|
|
47
48
|
yarn nx g @rxap/plugin-nestjs:init-application
|
|
48
49
|
```
|
|
50
|
+
|
|
51
|
+
## swagger
|
|
52
|
+
> swagger generator
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
yarn nx g @rxap/plugin-nestjs:swagger
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## sentry
|
|
59
|
+
> sentry generator
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
yarn nx g @rxap/plugin-nestjs:sentry
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## validator
|
|
66
|
+
> validator generator
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
yarn nx g @rxap/plugin-nestjs:validator
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## open-api
|
|
73
|
+
> open-api generator
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
yarn nx g @rxap/plugin-nestjs:open-api
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## jwt
|
|
80
|
+
> jwt generator
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
yarn nx g @rxap/plugin-nestjs:jwt
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## health-indicator
|
|
87
|
+
> health-indicator generator
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
yarn nx g @rxap/plugin-nestjs:health-indicator
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## health-indicator-init
|
|
94
|
+
> health-indicator-init generator
|
|
95
|
+
|
|
96
|
+
```bash
|
|
97
|
+
yarn nx g @rxap/plugin-nestjs:health-indicator-init
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## init
|
|
101
|
+
> init generator
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
yarn nx g @rxap/plugin-nestjs:init
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## init-library
|
|
108
|
+
> init-library generator
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
yarn nx g @rxap/plugin-nestjs:init-library
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
## init-application
|
|
115
|
+
> init-application generator
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
yarn nx g @rxap/plugin-nestjs:init-application
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## swagger
|
|
122
|
+
> swagger generator
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
yarn nx g @rxap/plugin-nestjs:swagger
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## sentry
|
|
129
|
+
> sentry generator
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
yarn nx g @rxap/plugin-nestjs:sentry
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
## validator
|
|
136
|
+
> validator generator
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
yarn nx g @rxap/plugin-nestjs:validator
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## open-api
|
|
143
|
+
> open-api generator
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
yarn nx g @rxap/plugin-nestjs:open-api
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
## jwt
|
|
150
|
+
> jwt generator
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
yarn nx g @rxap/plugin-nestjs:jwt
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
## health-indicator
|
|
157
|
+
> health-indicator generator
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
yarn nx g @rxap/plugin-nestjs:health-indicator
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
## health-indicator-init
|
|
164
|
+
> health-indicator-init generator
|
|
165
|
+
|
|
166
|
+
```bash
|
|
167
|
+
yarn nx g @rxap/plugin-nestjs:health-indicator-init
|
|
168
|
+
```
|
|
169
|
+
# Executors
|
|
170
|
+
|
|
171
|
+
## package-json
|
|
172
|
+
> package-json executor
|
|
173
|
+
|
|
174
|
+
**project.json**
|
|
175
|
+
```json
|
|
176
|
+
{
|
|
177
|
+
"targets": {
|
|
178
|
+
"package-json": {
|
|
179
|
+
"executor": "@rxap/plugin-nestjs:package-json"
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
```
|
|
184
|
+
|
package/executors.json
ADDED
package/generators.json
CHANGED
|
@@ -14,6 +14,93 @@
|
|
|
14
14
|
"factory": "./src/generators/init-application/generator",
|
|
15
15
|
"schema": "./src/generators/init-application/schema.json",
|
|
16
16
|
"description": "init-application generator"
|
|
17
|
+
},
|
|
18
|
+
"swagger": {
|
|
19
|
+
"factory": "./src/generators/swagger/generator",
|
|
20
|
+
"schema": "./src/generators/swagger/schema.json",
|
|
21
|
+
"description": "swagger generator"
|
|
22
|
+
},
|
|
23
|
+
"sentry": {
|
|
24
|
+
"factory": "./src/generators/sentry/generator",
|
|
25
|
+
"schema": "./src/generators/sentry/schema.json",
|
|
26
|
+
"description": "sentry generator"
|
|
27
|
+
},
|
|
28
|
+
"validator": {
|
|
29
|
+
"factory": "./src/generators/validator/generator",
|
|
30
|
+
"schema": "./src/generators/validator/schema.json",
|
|
31
|
+
"description": "validator generator"
|
|
32
|
+
},
|
|
33
|
+
"open-api": {
|
|
34
|
+
"factory": "./src/generators/open-api/generator",
|
|
35
|
+
"schema": "./src/generators/open-api/schema.json",
|
|
36
|
+
"description": "open-api generator"
|
|
37
|
+
},
|
|
38
|
+
"jwt": {
|
|
39
|
+
"factory": "./src/generators/jwt/generator",
|
|
40
|
+
"schema": "./src/generators/jwt/schema.json",
|
|
41
|
+
"description": "jwt generator"
|
|
42
|
+
},
|
|
43
|
+
"health-indicator": {
|
|
44
|
+
"factory": "./src/generators/health-indicator/generator",
|
|
45
|
+
"schema": "./src/generators/health-indicator/schema.json",
|
|
46
|
+
"description": "health-indicator generator"
|
|
47
|
+
},
|
|
48
|
+
"health-indicator-init": {
|
|
49
|
+
"factory": "./src/generators/health-indicator-init/generator",
|
|
50
|
+
"schema": "./src/generators/health-indicator-init/schema.json",
|
|
51
|
+
"description": "health-indicator-init generator"
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"schematics": {
|
|
55
|
+
"init": {
|
|
56
|
+
"factory": "./src/generators/init/index",
|
|
57
|
+
"schema": "./src/generators/init/schema.json",
|
|
58
|
+
"description": "init generator"
|
|
59
|
+
},
|
|
60
|
+
"init-library": {
|
|
61
|
+
"factory": "./src/generators/init-library/index",
|
|
62
|
+
"schema": "./src/generators/init-library/schema.json",
|
|
63
|
+
"description": "init-library generator"
|
|
64
|
+
},
|
|
65
|
+
"init-application": {
|
|
66
|
+
"factory": "./src/generators/init-application/index",
|
|
67
|
+
"schema": "./src/generators/init-application/schema.json",
|
|
68
|
+
"description": "init-application generator"
|
|
69
|
+
},
|
|
70
|
+
"swagger": {
|
|
71
|
+
"factory": "./src/generators/swagger/index",
|
|
72
|
+
"schema": "./src/generators/swagger/schema.json",
|
|
73
|
+
"description": "swagger generator"
|
|
74
|
+
},
|
|
75
|
+
"sentry": {
|
|
76
|
+
"factory": "./src/generators/sentry/index",
|
|
77
|
+
"schema": "./src/generators/sentry/schema.json",
|
|
78
|
+
"description": "sentry generator"
|
|
79
|
+
},
|
|
80
|
+
"validator": {
|
|
81
|
+
"factory": "./src/generators/validator/index",
|
|
82
|
+
"schema": "./src/generators/validator/schema.json",
|
|
83
|
+
"description": "validator generator"
|
|
84
|
+
},
|
|
85
|
+
"open-api": {
|
|
86
|
+
"factory": "./src/generators/open-api/index",
|
|
87
|
+
"schema": "./src/generators/open-api/schema.json",
|
|
88
|
+
"description": "open-api generator"
|
|
89
|
+
},
|
|
90
|
+
"jwt": {
|
|
91
|
+
"factory": "./src/generators/jwt/index",
|
|
92
|
+
"schema": "./src/generators/jwt/schema.json",
|
|
93
|
+
"description": "jwt generator"
|
|
94
|
+
},
|
|
95
|
+
"health-indicator": {
|
|
96
|
+
"factory": "./src/generators/health-indicator/index",
|
|
97
|
+
"schema": "./src/generators/health-indicator/schema.json",
|
|
98
|
+
"description": "health-indicator generator"
|
|
99
|
+
},
|
|
100
|
+
"health-indicator-init": {
|
|
101
|
+
"factory": "./src/generators/health-indicator-init/index",
|
|
102
|
+
"schema": "./src/generators/health-indicator-init/schema.json",
|
|
103
|
+
"description": "health-indicator-init generator"
|
|
17
104
|
}
|
|
18
105
|
}
|
|
19
106
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rxap/plugin-nestjs",
|
|
3
|
-
"version": "16.1.0-dev.
|
|
3
|
+
"version": "16.1.0-dev.12",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"generators": "./generators.json",
|
|
6
6
|
"publishConfig": {
|
|
@@ -13,7 +13,8 @@
|
|
|
13
13
|
"nx",
|
|
14
14
|
"nx-plugin",
|
|
15
15
|
"packages",
|
|
16
|
-
"nestjs"
|
|
16
|
+
"nestjs",
|
|
17
|
+
"plugin-nestjs"
|
|
17
18
|
],
|
|
18
19
|
"homepage": "https:/gitlab.com/rxap/packages/packages/plugin/nestjs",
|
|
19
20
|
"bugs": {
|
|
@@ -31,22 +32,54 @@
|
|
|
31
32
|
"email": "mmuenker@digitaix.com"
|
|
32
33
|
},
|
|
33
34
|
"dependencies": {
|
|
35
|
+
"ignore": "^5.2.4",
|
|
36
|
+
"process": "0.11.10",
|
|
37
|
+
"semver": "^7.3.5",
|
|
34
38
|
"tslib": "2.6.1"
|
|
35
39
|
},
|
|
36
40
|
"peerDependencies": {
|
|
37
41
|
"@nx/devkit": "^16.5.0",
|
|
38
|
-
"@
|
|
39
|
-
"
|
|
42
|
+
"@nx/js": "^16.5.0",
|
|
43
|
+
"@rxap/generator-utilities": "^1.1.0-dev.7",
|
|
44
|
+
"@rxap/plugin-utilities": "^16.1.0-dev.9",
|
|
45
|
+
"@rxap/ts-morph": "^0.1.0-dev.2",
|
|
46
|
+
"@rxap/utilities": "^16.0.0-dev.13",
|
|
47
|
+
"@rxap/workspace-ts-morph": "^0.1.0-dev.3",
|
|
48
|
+
"@rxap/workspace-utilities": "^0.1.0-dev.7",
|
|
49
|
+
"ts-morph": "^18.0.0",
|
|
50
|
+
"@rxap/node-utilities": "1.1.0-dev.4"
|
|
40
51
|
},
|
|
41
52
|
"nx-migrations": {
|
|
42
53
|
"packageGroup": [
|
|
43
54
|
{
|
|
44
55
|
"package": "@rxap/generator-utilities",
|
|
45
|
-
"version": "1.0
|
|
56
|
+
"version": "1.1.0-dev.7"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"package": "@rxap/plugin-utilities",
|
|
60
|
+
"version": "16.1.0-dev.9"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"package": "@rxap/ts-morph",
|
|
64
|
+
"version": "0.1.0-dev.2"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"package": "@rxap/utilities",
|
|
68
|
+
"version": "16.0.0-dev.13"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"package": "@rxap/workspace-ts-morph",
|
|
72
|
+
"version": "0.1.0-dev.3"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"package": "@rxap/workspace-utilities",
|
|
76
|
+
"version": "0.1.0-dev.7"
|
|
46
77
|
}
|
|
47
78
|
]
|
|
48
79
|
},
|
|
49
|
-
"
|
|
80
|
+
"executors": "./executors.json",
|
|
81
|
+
"schematics": "./generators.json",
|
|
82
|
+
"gitHead": "baf0566162b7bd806644ee954015e7753d236911",
|
|
50
83
|
"main": "./src/index.js",
|
|
51
84
|
"types": "./src/index.d.ts"
|
|
52
85
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const plugin_utilities_1 = require("@rxap/plugin-utilities");
|
|
5
|
+
const fs_1 = require("fs");
|
|
6
|
+
const path_1 = require("path");
|
|
7
|
+
function runExecutor(options, context) {
|
|
8
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
9
|
+
console.log('Executor ran for PackageJson', options);
|
|
10
|
+
(0, plugin_utilities_1.LoadProjectToPackageMapping)(context);
|
|
11
|
+
const dependencies = (0, plugin_utilities_1.GetAllPackageDependenciesForProject)(context);
|
|
12
|
+
const packageJson = { dependencies, name: context.projectName, private: true };
|
|
13
|
+
console.log('dependencies', dependencies);
|
|
14
|
+
(0, fs_1.writeFileSync)((0, path_1.join)((0, plugin_utilities_1.GetProjectRoot)(context), 'package.json'), JSON.stringify(packageJson, null, 2));
|
|
15
|
+
return {
|
|
16
|
+
success: true,
|
|
17
|
+
};
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
exports.default = runExecutor;
|
|
21
|
+
//# sourceMappingURL=executor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/executors/package-json/executor.ts"],"names":[],"mappings":";;;AACA,6DAIgC;AAChC,2BAAmC;AACnC,+BAA4B;AAG5B,SAA8B,WAAW,CACvC,OAAkC,EAClC,OAAwB;;QAExB,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,OAAO,CAAC,CAAC;QAErD,IAAA,8CAA2B,EAAC,OAAO,CAAC,CAAC;QAErC,MAAM,YAAY,GAAG,IAAA,sDAAmC,EAAC,OAAO,CAAC,CAAC;QAElE,MAAM,WAAW,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAE/E,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;QAE1C,IAAA,kBAAa,EAAC,IAAA,WAAI,EAAC,IAAA,iCAAc,EAAC,OAAO,CAAC,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAEnG,OAAO;YACL,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;CAAA;AAnBD,8BAmBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export interface PackageJsonExecutorSchema {} // eslint-disable-line
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.healthIndicatorGenerator = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const ts_morph_1 = require("@rxap/ts-morph");
|
|
6
|
+
const utilities_1 = require("@rxap/utilities");
|
|
7
|
+
const workspace_ts_morph_1 = require("@rxap/workspace-ts-morph");
|
|
8
|
+
const generator_1 = require("../health-indicator-init/generator");
|
|
9
|
+
function healthIndicatorGenerator(tree, options) {
|
|
10
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
11
|
+
yield (0, generator_1.default)(tree, options);
|
|
12
|
+
(0, workspace_ts_morph_1.TsMorphNestProjectTransform)(tree, {
|
|
13
|
+
project: options.project,
|
|
14
|
+
}, (project, [moduleSourceFile, controllerSourceFile, healthIndiectorSourceFile]) => {
|
|
15
|
+
(0, ts_morph_1.AddHealthIndicator)(healthIndiectorSourceFile, options.name);
|
|
16
|
+
(0, ts_morph_1.CoerceNestModuleProvider)(moduleSourceFile, {
|
|
17
|
+
providerObject: (0, utilities_1.dasherize)(options.name) + 'HealthIndicator',
|
|
18
|
+
moduleSpecifier: `./${(0, utilities_1.dasherize)(options.name)}.health-indicator`,
|
|
19
|
+
});
|
|
20
|
+
(0, ts_morph_1.AddHealthEndpoint)(controllerSourceFile, options.name);
|
|
21
|
+
(0, ts_morph_1.AddToGlobalHealthEndpoint)(controllerSourceFile, options.name);
|
|
22
|
+
}, [
|
|
23
|
+
'/app/health/health.module.ts',
|
|
24
|
+
'/app/health/health.controller.ts',
|
|
25
|
+
`/app/health/${(0, utilities_1.dasherize)(options.name)}.health-indicator.ts`,
|
|
26
|
+
]);
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
exports.healthIndicatorGenerator = healthIndicatorGenerator;
|
|
30
|
+
exports.default = healthIndicatorGenerator;
|
|
31
|
+
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/generators/health-indicator/generator.ts"],"names":[],"mappings":";;;;AACA,6CAKwB;AACxB,+CAA4C;AAC5C,iEAAuE;AACvE,kEAA8E;AAG9E,SAAsB,wBAAwB,CAC5C,IAAU,EACV,OAAuC;;QAEvC,MAAM,IAAA,mBAA4B,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAClD,IAAA,gDAA2B,EAAC,IAAI,EAAE;YAChC,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,EAAE,CAAC,OAAO,EAAE,CAAE,gBAAgB,EAAE,oBAAoB,EAAE,yBAAyB,CAAE,EAAE,EAAE;YACpF,IAAA,6BAAkB,EAAC,yBAAyB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5D,IAAA,mCAAwB,EAAC,gBAAgB,EAAE;gBACzC,cAAc,EAAE,IAAA,qBAAS,EAAC,OAAO,CAAC,IAAI,CAAC,GAAG,iBAAiB;gBAC3D,eAAe,EAAE,KAAM,IAAA,qBAAS,EAAC,OAAO,CAAC,IAAI,CAAE,mBAAmB;aACnE,CAAC,CAAC;YACH,IAAA,4BAAiB,EAAC,oBAAoB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YACtD,IAAA,oCAAyB,EAAC,oBAAoB,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAChE,CAAC,EAAE;YACD,8BAA8B;YAC9B,kCAAkC;YAClC,eAAgB,IAAA,qBAAS,EAAC,OAAO,CAAC,IAAI,CAAE,sBAAsB;SAC/D,CAAC,CAAC;IACL,CAAC;CAAA;AApBD,4DAoBC;AAED,kBAAe,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const devkit_1 = require("@nx/devkit");
|
|
4
|
+
const generator_1 = require("./generator");
|
|
5
|
+
const schematic = (0, devkit_1.convertNxGenerator)(generator_1.default);
|
|
6
|
+
exports.default = schematic;
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/generators/health-indicator/index.ts"],"names":[],"mappings":";;AAAA,uCAAgD;AAChD,2CAAoC;AAEpC,MAAM,SAAS,GAAG,IAAA,2BAAkB,EAAC,mBAAS,CAAC,CAAC;AAChD,kBAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "HealthIndicator",
|
|
4
|
+
"title": "",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"name": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "The name of the health indicator class",
|
|
10
|
+
"$default": {
|
|
11
|
+
"$source": "argv",
|
|
12
|
+
"index": 0
|
|
13
|
+
},
|
|
14
|
+
"x-prompt": "What name would you like to use for the health indicator?"
|
|
15
|
+
},
|
|
16
|
+
"project": {
|
|
17
|
+
"type": "string",
|
|
18
|
+
"description": "The name of the project.",
|
|
19
|
+
"$default": {
|
|
20
|
+
"$source": "projectName"
|
|
21
|
+
},
|
|
22
|
+
"x-prompt": "For which project should the health indicator be added?"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"required": [
|
|
26
|
+
"name",
|
|
27
|
+
"project"
|
|
28
|
+
]
|
|
29
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Tree } from '@nx/devkit';
|
|
2
|
+
import { HealthIndicatorInitGeneratorSchema } from './schema';
|
|
3
|
+
export declare function healthIndicatorInitGenerator(tree: Tree, options: HealthIndicatorInitGeneratorSchema): Promise<void>;
|
|
4
|
+
export default healthIndicatorInitGenerator;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.healthIndicatorInitGenerator = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const ts_morph_1 = require("@rxap/ts-morph");
|
|
6
|
+
const workspace_ts_morph_1 = require("@rxap/workspace-ts-morph");
|
|
7
|
+
const workspace_utilities_1 = require("@rxap/workspace-utilities");
|
|
8
|
+
function healthIndicatorInitGenerator(tree, options) {
|
|
9
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
10
|
+
(0, workspace_ts_morph_1.TsMorphNestProjectTransform)(tree, {
|
|
11
|
+
project: options.project,
|
|
12
|
+
}, (project, [appModuleSourceFile, moduleSourceFile, controllerSourceFile]) => {
|
|
13
|
+
(0, ts_morph_1.CoerceHealthModule)(moduleSourceFile);
|
|
14
|
+
(0, ts_morph_1.CoerceNestModuleImport)(appModuleSourceFile, {
|
|
15
|
+
moduleName: 'HealthModule',
|
|
16
|
+
moduleSpecifier: './health/health.module',
|
|
17
|
+
});
|
|
18
|
+
(0, ts_morph_1.CoerceHealthController)(controllerSourceFile);
|
|
19
|
+
(0, ts_morph_1.CoerceNestModuleController)(moduleSourceFile, {
|
|
20
|
+
name: 'HealthController',
|
|
21
|
+
moduleSpecifier: './health.controller',
|
|
22
|
+
});
|
|
23
|
+
}, [
|
|
24
|
+
'/app/app.module.ts',
|
|
25
|
+
'/app/health/health.module.ts',
|
|
26
|
+
'/app/health/health.controller.ts',
|
|
27
|
+
]);
|
|
28
|
+
yield (0, workspace_utilities_1.AddPackageJsonDependency)(tree, '@nestjs/terminus', 'latest', { soft: true });
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
exports.healthIndicatorInitGenerator = healthIndicatorInitGenerator;
|
|
32
|
+
exports.default = healthIndicatorInitGenerator;
|
|
33
|
+
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/generators/health-indicator-init/generator.ts"],"names":[],"mappings":";;;;AACA,6CAKwB;AACxB,iEAAuE;AACvE,mEAAqE;AAGrE,SAAsB,4BAA4B,CAChD,IAAU,EACV,OAA2C;;QAE3C,IAAA,gDAA2B,EAAC,IAAI,EAAE;YAChC,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,EAAE,CAAC,OAAO,EAAE,CAAE,mBAAmB,EAAE,gBAAgB,EAAE,oBAAoB,CAAE,EAAE,EAAE;YAC9E,IAAA,6BAAkB,EAAC,gBAAgB,CAAC,CAAC;YACrC,IAAA,iCAAsB,EAAC,mBAAmB,EAAE;gBAC1C,UAAU,EAAE,cAAc;gBAC1B,eAAe,EAAE,wBAAwB;aAC1C,CAAC,CAAC;YACH,IAAA,iCAAsB,EAAC,oBAAoB,CAAC,CAAC;YAC7C,IAAA,qCAA0B,EAAC,gBAAgB,EAAE;gBAC3C,IAAI,EAAE,kBAAkB;gBACxB,eAAe,EAAE,qBAAqB;aACvC,CAAC,CAAC;QACL,CAAC,EAAE;YACD,oBAAoB;YACpB,8BAA8B;YAC9B,kCAAkC;SACnC,CAAC,CAAC;QACH,MAAM,IAAA,8CAAwB,EAAC,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACrF,CAAC;CAAA;AAvBD,oEAuBC;AAED,kBAAe,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const devkit_1 = require("@nx/devkit");
|
|
4
|
+
const generator_1 = require("./generator");
|
|
5
|
+
const schematic = (0, devkit_1.convertNxGenerator)(generator_1.default);
|
|
6
|
+
exports.default = schematic;
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/generators/health-indicator-init/index.ts"],"names":[],"mappings":";;AAAA,uCAAgD;AAChD,2CAAoC;AAEpC,MAAM,SAAS,GAAG,IAAA,2BAAkB,EAAC,mBAAS,CAAC,CAAC;AAChD,kBAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/schema",
|
|
3
|
+
"$id": "HealthIndicatorInit",
|
|
4
|
+
"title": "",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"project": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"description": "The name of the project.",
|
|
10
|
+
"$default": {
|
|
11
|
+
"$source": "projectName"
|
|
12
|
+
},
|
|
13
|
+
"x-prompt": "For which project should the health indicator module be initialized?"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"required": [
|
|
17
|
+
"project"
|
|
18
|
+
]
|
|
19
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const devkit_1 = require("@nx/devkit");
|
|
4
|
+
const generator_1 = require("./generator");
|
|
5
|
+
const schematic = (0, devkit_1.convertNxGenerator)(generator_1.default);
|
|
6
|
+
exports.default = schematic;
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/plugin/nestjs/src/generators/init/index.ts"],"names":[],"mappings":";;AAAA,uCAAgD;AAChD,2CAAoC;AAEpC,MAAM,SAAS,GAAG,IAAA,2BAAkB,EAAC,mBAAS,CAAC,CAAC;AAChD,kBAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
FROM node:18.17-alpine
|
|
2
|
+
# FROM node:18.17 # use if the mongo memory server is used
|
|
3
|
+
|
|
4
|
+
RUN apk add --no-cache git g++ make python3
|
|
5
|
+
|
|
6
|
+
RUN mkdir /app
|
|
7
|
+
|
|
8
|
+
WORKDIR /app
|
|
9
|
+
|
|
10
|
+
COPY package.json /app
|
|
11
|
+
|
|
12
|
+
RUN yarn && yarn cache clean
|
|
13
|
+
|
|
14
|
+
COPY . /app
|
|
15
|
+
|
|
16
|
+
ENV PORT=3000
|
|
17
|
+
EXPOSE 3000
|
|
18
|
+
|
|
19
|
+
HEALTHCHECK CMD node healthcheck.js > /dev/null || exit 1
|
|
20
|
+
|
|
21
|
+
CMD [ "node", "/app/main.js" ]
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
const http = require('http');
|
|
2
|
+
|
|
3
|
+
let path = '/';
|
|
4
|
+
|
|
5
|
+
if (process.env.HEALTHCHECK_PATH) {
|
|
6
|
+
path = process.env.HEALTHCHECK_PATH;
|
|
7
|
+
} else {
|
|
8
|
+
path = '/health';
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
const options = {
|
|
12
|
+
host: '127.0.0.1',
|
|
13
|
+
port: process.env.PORT || 3000,
|
|
14
|
+
path,
|
|
15
|
+
timeout: 30000,
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
const request = http.request(
|
|
19
|
+
options,
|
|
20
|
+
(res) => {
|
|
21
|
+
console.log(`STATUS: ${ res.statusCode }`);
|
|
22
|
+
if (res.statusCode === 200) {
|
|
23
|
+
process.exit(0);
|
|
24
|
+
} else {
|
|
25
|
+
process.exit(1);
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
);
|
|
29
|
+
|
|
30
|
+
request.on(
|
|
31
|
+
'error',
|
|
32
|
+
function (err) {
|
|
33
|
+
console.log(`ERROR: ${ err.message }`);
|
|
34
|
+
process.exit(1);
|
|
35
|
+
},
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
request.end();
|