From a1a743d5c3391c2c54ec095a6cf12e4f2aeaae58 Mon Sep 17 00:00:00 2001 From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com> Date: Fri, 9 Apr 2021 14:02:58 +0200 Subject: [PATCH] feat: add newsletter data insert script --- .gitignore | 3 ++- package.json | 6 ++--- .../{ => scripts}/1617284203579-apticid.ts | 6 ++--- .../1617962328658-add-newsletter-data.ts | 23 +++++++++++++++++++ 4 files changed, 31 insertions(+), 7 deletions(-) rename src/migrations/{ => scripts}/1617284203579-apticid.ts (99%) create mode 100644 src/migrations/scripts/1617962328658-add-newsletter-data.ts diff --git a/.gitignore b/.gitignore index 257fef438..464102221 100644 --- a/.gitignore +++ b/.gitignore @@ -391,4 +391,5 @@ Temporary Items dist # Migrations -.migrate \ No newline at end of file +.migrate +./src/migrations/data/ \ No newline at end of file diff --git a/package.json b/package.json index 1fcf4cd1f..94301c9ad 100644 --- a/package.json +++ b/package.json @@ -20,9 +20,9 @@ "test:cov": "jest --config ./test/jest.json --coverage --ci --reporters=default --reporters=jest-junit", "test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand", "test:e2e": "jest --config ./test/jest-e2e.json", - "migrate:create": "migrate create --template-file ./src/migrations/migrations-utils/template.ts --migrations-dir=\"./src/migrations\" --compiler=\"ts:./src/migrations/migrations-utils/ts-compiler.js\"", - "migrate:up": "migrate --migrations-dir=\"./src/migrations\" --compiler=\"ts:./src/migrations/migrations-utils/ts-compiler.js\" up", - "migrate:down": "migrate --migrations-dir=\"./src/migrations\" --compiler=\"ts:./src/migrations/migrations-utils/ts-compiler.js\" down" + "migrate:create": "migrate create --template-file ./src/migrations/migrations-utils/template.ts --migrations-dir=\"./src/migrations/scripts\" --compiler=\"ts:./src/migrations/migrations-utils/ts-compiler.js\"", + "migrate:up": "migrate --migrations-dir=\"./src/migrations/scripts\" --compiler=\"ts:./src/migrations/migrations-utils/ts-compiler.js\" up", + "migrate:down": "migrate --migrations-dir=\"./src/migrations/scripts\" --compiler=\"ts:./src/migrations/migrations-utils/ts-compiler.js\" down" }, "dependencies": { "@nestjs/common": "^7.6.13", diff --git a/src/migrations/1617284203579-apticid.ts b/src/migrations/scripts/1617284203579-apticid.ts similarity index 99% rename from src/migrations/1617284203579-apticid.ts rename to src/migrations/scripts/1617284203579-apticid.ts index 0bdbf63e7..b7d5efcf3 100644 --- a/src/migrations/1617284203579-apticid.ts +++ b/src/migrations/scripts/1617284203579-apticid.ts @@ -1,4 +1,4 @@ -import { getDb } from './migrations-utils/db'; +import { getDb } from '../migrations-utils/db'; class ApticModule { id: string; @@ -140,7 +140,7 @@ function downgradeStructure(structure): any { // Base Skills newArray = []; - newArray.push(switchStructureId(structure.baseSkills, '260', '260')); //TODO: + newArray.push(switchStructureId(structure.baseSkills, '260', '260')); newArray.push(switchStructureId(structure.baseSkills, '1', '259')); newArray.push(switchStructureId(structure.baseSkills, '11', '261')); newArray.push(switchStructureId(structure.baseSkills, '38', '222')); @@ -202,7 +202,7 @@ async function updateApticReferential(db) { // Base Skills let newModule = { modules: [] }; const baseSkills: ApticDoc = await db.collection('categoriesformations').findOne({ id: 'baseSkills' }); - newModule.modules.push(switchId(baseSkills.modules, '260', '260')); //TODO: + newModule.modules.push(switchId(baseSkills.modules, '260', '260')); newModule.modules.push(switchId(baseSkills.modules, '259', '1')); newModule.modules.push(switchId(baseSkills.modules, '261', '11')); newModule.modules.push(switchId(baseSkills.modules, '222', '38')); diff --git a/src/migrations/scripts/1617962328658-add-newsletter-data.ts b/src/migrations/scripts/1617962328658-add-newsletter-data.ts new file mode 100644 index 000000000..8d5e49b98 --- /dev/null +++ b/src/migrations/scripts/1617962328658-add-newsletter-data.ts @@ -0,0 +1,23 @@ +import { Db } from 'mongodb'; +import { getDb } from '../migrations-utils/db'; +import * as fs from 'fs'; +// const fs = require('fs') + +export const up = async () => { + const db: Db = await getDb(); + fs.readFile('./src/migrations/data/newsletter-data.json', 'utf8', (err, jsonString) => { + if (err) { + console.error('File read failed:', err); + return; + } + const parsedData = JSON.parse(jsonString); + db.collection('newslettersubscriptions').insertMany(parsedData); + }); +}; + +export const down = async () => { + const db: Db = await getDb(); + /* + Code you downgrade script here! + */ +}; -- GitLab