@haku-sci/utils 1.4.4 → 1.4.6
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/README.md +2 -2
- package/dist/microservice/microservice.service.d.ts +0 -1
- package/dist/microservice/microservice.service.js +4 -24
- package/dist/microservice/microservice.service.js.map +1 -1
- package/dist/microservice/postgres.service.d.ts +1 -0
- package/dist/microservice/postgres.service.js +26 -0
- package/dist/microservice/postgres.service.js.map +1 -0
- package/package.json +1 -4
package/README.md
CHANGED
|
@@ -25,9 +25,9 @@ the start_docker_services.bat method allows to run all required services from do
|
|
|
25
25
|
* Postgresql
|
|
26
26
|
* RabbitMQ
|
|
27
27
|
|
|
28
|
-
##
|
|
28
|
+
## PostgreSQL
|
|
29
29
|
|
|
30
|
-
if the service uses a database, and this database doesn't exist in the system, it will be created automatically
|
|
30
|
+
if the service uses a database PostgreSQL, and this database doesn't exist in the system, it will be created automatically (require the librarie pg)
|
|
31
31
|
|
|
32
32
|
## launch.json
|
|
33
33
|
|
|
@@ -16,7 +16,6 @@ const microservices_1 = require("@nestjs/microservices");
|
|
|
16
16
|
const net = require("net");
|
|
17
17
|
const axios_1 = require("axios");
|
|
18
18
|
const rxjs_1 = require("rxjs");
|
|
19
|
-
const pg_1 = require("pg");
|
|
20
19
|
const HAKU_SCI_EXCHANGE = 'Haku-SciExchange';
|
|
21
20
|
let MicroserviceService = MicroserviceService_1 = class MicroserviceService {
|
|
22
21
|
static async projectName() {
|
|
@@ -107,8 +106,10 @@ let MicroserviceService = MicroserviceService_1 = class MicroserviceService {
|
|
|
107
106
|
address: `haku-sci-${process.env["AWS_APPLICATION"]}-${process.env["AWS_BRANCH"]}.${process.env["AWS_REGION"]}.elasticbeanstalk.com`,
|
|
108
107
|
port: 3000
|
|
109
108
|
};
|
|
110
|
-
if (process.env["RDS_DBNAME"])
|
|
111
|
-
|
|
109
|
+
if (process.env["RDS_DBNAME"]) {
|
|
110
|
+
const postGresService = require('./postgres.service');
|
|
111
|
+
postGresService.createDatabaseIfNotExists();
|
|
112
|
+
}
|
|
112
113
|
const app = await core_1.NestFactory.create(appModule);
|
|
113
114
|
app.connectMicroservice({
|
|
114
115
|
transport: microservices_1.Transport.TCP,
|
|
@@ -134,27 +135,6 @@ let MicroserviceService = MicroserviceService_1 = class MicroserviceService {
|
|
|
134
135
|
this.registerService();
|
|
135
136
|
return app;
|
|
136
137
|
}
|
|
137
|
-
static async createDatabaseIfNotExists() {
|
|
138
|
-
const client = new pg_1.Client({
|
|
139
|
-
host: process.env["RDS_HOSTNAME"],
|
|
140
|
-
port: process.env["RDS_PORT"],
|
|
141
|
-
user: process.env["RDS_USERNAME"],
|
|
142
|
-
password: process.env["RDS_PASSWORD"],
|
|
143
|
-
database: "postgres",
|
|
144
|
-
});
|
|
145
|
-
try {
|
|
146
|
-
await client.connect();
|
|
147
|
-
const result = await client.query(`SELECT 1 FROM pg_database WHERE datname = $1`, [process.env["RDS_DBNAME"]]);
|
|
148
|
-
if (result.rowCount === 0) {
|
|
149
|
-
console.log(`Database "${process.env["RDS_DBNAME"]}" does not exist. Creating...`);
|
|
150
|
-
await client.query(`CREATE DATABASE "${process.env["RDS_DBNAME"]}"`);
|
|
151
|
-
console.log(`Database "${process.env["RDS_DBNAME"]}" created successfully.`);
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
finally {
|
|
155
|
-
await client.end();
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
138
|
};
|
|
159
139
|
exports.MicroserviceService = MicroserviceService;
|
|
160
140
|
exports.MicroserviceService = MicroserviceService = MicroserviceService_1 = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"microservice.service.js","sourceRoot":"","sources":["../../src/microservice/microservice.service.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAiF;AACjF,0CAAuC;AACvC,6BAA6B;AAC7B,uCAA2C;AAC3C,yDAA0H;AAC1H,2BAA2B;AAC3B,iCAA0B;AAC1B,+BAAqC;
|
|
1
|
+
{"version":3,"file":"microservice.service.js","sourceRoot":"","sources":["../../src/microservice/microservice.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function createDatabaseIfNotExists(): Promise<void>;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createDatabaseIfNotExists = createDatabaseIfNotExists;
|
|
4
|
+
const pg_1 = require("pg");
|
|
5
|
+
async function createDatabaseIfNotExists() {
|
|
6
|
+
const client = new pg_1.Client({
|
|
7
|
+
host: process.env["RDS_HOSTNAME"],
|
|
8
|
+
port: process.env["RDS_PORT"],
|
|
9
|
+
user: process.env["RDS_USERNAME"],
|
|
10
|
+
password: process.env["RDS_PASSWORD"],
|
|
11
|
+
database: "postgres",
|
|
12
|
+
});
|
|
13
|
+
try {
|
|
14
|
+
await client.connect();
|
|
15
|
+
const result = await client.query(`SELECT 1 FROM pg_database WHERE datname = $1`, [process.env["RDS_DBNAME"]]);
|
|
16
|
+
if (result.rowCount === 0) {
|
|
17
|
+
console.log(`Database "${process.env["RDS_DBNAME"]}" does not exist. Creating...`);
|
|
18
|
+
await client.query(`CREATE DATABASE "${process.env["RDS_DBNAME"]}"`);
|
|
19
|
+
console.log(`Database "${process.env["RDS_DBNAME"]}" created successfully.`);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
finally {
|
|
23
|
+
await client.end();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=postgres.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"postgres.service.js","sourceRoot":"","sources":["../../src/microservice/postgres.service.ts"],"names":[],"mappings":";;AAEA,8DAqBG;AAvBH,2BAA4B;AAErB,KAAK,UAAW,yBAAyB;IAC5C,MAAM,MAAM,GAAG,IAAI,WAAM,CAAC;QACxB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QACjC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QAC7B,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QACjC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QACrC,QAAQ,EAAE,UAAU;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAE/G,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,+BAA+B,CAAC,CAAC;YACnF,MAAM,MAAM,CAAC,KAAK,CAAC,oBAAoB,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,aAAa,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;IACrB,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@haku-sci/utils",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.6",
|
|
4
4
|
"description": "utils from haku-sci. Library only",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -19,9 +19,6 @@
|
|
|
19
19
|
"axios": {
|
|
20
20
|
"optional": false
|
|
21
21
|
},
|
|
22
|
-
"pg": {
|
|
23
|
-
"optional": false
|
|
24
|
-
},
|
|
25
22
|
"amqp-connection-manager": {
|
|
26
23
|
"optional": false
|
|
27
24
|
},
|