From d96b2a1398a783a2d3b20b07d4aebc6c319986f0 Mon Sep 17 00:00:00 2001 From: pan261 Date: Tue, 7 Dec 2021 21:52:57 -0500 Subject: [PATCH] added docker support --- .gitignore | 2 +- docker-compose.yml | 61 +++++++++++++++++++++++----------------------- src/config.ts | 8 +++--- src/downloader.ts | 2 +- src/taskRunner.ts | 18 +++++++++++++- 5 files changed, 54 insertions(+), 37 deletions(-) diff --git a/.gitignore b/.gitignore index 9565585..ccb9a92 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,4 @@ node_modules credentials.json download_tests build -File Share \ No newline at end of file +FileShare \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 20330fe..f5fa928 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -21,38 +21,39 @@ services: volumes: - ./src/build:/ffs/ - /ffs/node_modules + - ./FileShare/Gantry:/ffs/FileShare/Gantry network_mode: host command: "node taskRunner.js gantry" - task_runner_lathe: - build: - context: . - dockerfile: Dockerfile - env_file: ./.env - volumes: - - ./src/build:/ffs/ - - /ffs/node_modules - network_mode: host - command: "node taskRunner.js lathe" + # task_runner_lathe: + # build: + # context: . + # dockerfile: Dockerfile + # env_file: ./.env + # volumes: + # - ./src/build:/ffs/ + # - /ffs/node_modules + # network_mode: host + # command: "node taskRunner.js lathe" - task_runner_mill: - build: - context: . - dockerfile: Dockerfile - env_file: ./.env - volumes: - - ./src/build:/ffs/ - - /ffs/node_modules - network_mode: host - command: "node taskRunner.js mill" + # task_runner_mill: + # build: + # context: . + # dockerfile: Dockerfile + # env_file: ./.env + # volumes: + # - ./src/build:/ffs/ + # - /ffs/node_modules + # network_mode: host + # command: "node taskRunner.js mill" - task_runner_waterjet: - build: - context: . - dockerfile: Dockerfile - env_file: ./.env - volumes: - - ./src/build:/ffs/ - - /ffs/node_modules - network_mode: host - command: "node taskRunner.js waterjet" \ No newline at end of file + # task_runner_waterjet: + # build: + # context: . + # dockerfile: Dockerfile + # env_file: ./.env + # volumes: + # - ./src/build:/ffs/ + # - /ffs/node_modules + # network_mode: host + # command: "node taskRunner.js waterjet" \ No newline at end of file diff --git a/src/config.ts b/src/config.ts index 1ff8b44..3675aa9 100644 --- a/src/config.ts +++ b/src/config.ts @@ -28,19 +28,19 @@ export const projectID = "a.YnVzaW5lc3M6cHVyZHVlMjY5NiMyMDIxMTExNTQ2Njg0NTI1MQ"; export const folderMap: any = { gantry: { fusionID: "urn:adsk.wipprod:fs.folder:co.IxiedfeBTOGg6NSIGQhXxQ", - local: "../../File Share/Gantry" + local: "/Gantry" }, lathe: { fusionID: "urn:adsk.wipprod:fs.folder:co.FDWCeyBGQX2rv8xSNWo5lg", - local: "../../File Share/Lathe" + local: "/Lathe" }, mill: { fusionID: "urn:adsk.wipprod:fs.folder:co.nEihcpHUSW-ZsVzU-__1iw", - local: "../../File Share/Mill" + local: "/Mill" }, waterjet: { fusionID: "urn:adsk.wipprod:fs.folder:co.vJLXAKGbQQayeljr-nwztQ", - local: "../../File Share/Waterjet" + local: "/Waterjet" } }; diff --git a/src/downloader.ts b/src/downloader.ts index 1d11fb5..144a167 100644 --- a/src/downloader.ts +++ b/src/downloader.ts @@ -19,7 +19,7 @@ exports.download = (storageLocation: string, fileName: string, destination: stri ObjectsApi.getObject('wip.dm.prod', storageLocation, {}, config.authClient, credentials) .then((res: any) => { console.log(res) - fs.writeFile(`${__dirname}/${destination}/${fileName}`, res.body) + fs.writeFile(`${destination}/${fileName}`, res.body) }) .catch((err: any) => { console.log("error while processing " + storageLocation); diff --git a/src/taskRunner.ts b/src/taskRunner.ts index cbd950d..9deb503 100644 --- a/src/taskRunner.ts +++ b/src/taskRunner.ts @@ -1,6 +1,7 @@ const axios = require('axios'); const watcher = require('./watcher'); const downloader = require('./downloader'); +const fs = require('fs'); import * as config from './config'; @@ -21,10 +22,25 @@ const projectID = "" // parse command line arguments from docker-compose to get folder ID const folderID = config.folderMap[process.argv[2]].fusionID; -const localDir = config.folderMap[process.argv[2]].local; +const localPath = config.folderMap[process.argv[2]].local; +const localRootDir = './FileShare'; +const localDir = localRootDir + localPath; console.log(folderID, localDir); +if (!fs.existsSync(localDir)) { + console.log("Local directory:", localDir, "not found, creating it now"); + fs.mkdirSync(localDir, {recursive: true}); +} + +fs.writeFileSync(`${__dirname}/FileShare/Gantry/test.txt`, 'hello', (err: any) => { + if (err) + console.log(err); + else { + console.log('file written') + } +}); + // const adminProjectID = 'a.YnVzaW5lc3M6cHVyZHVlMjY5NiMyMDIxMTEwODQ2NDQzMzk3Ng'; // const adminProjectTopFolder = 'urn:adsk.wipprod:fs.folder:co.ltuYad4ZTtieJLm6j3MGuA';