From 60629e7558203f75ecb0867a6ae839b57b1522c6 Mon Sep 17 00:00:00 2001 From: Petr Broz Date: Mon, 3 Jun 2019 18:25:26 +0200 Subject: [PATCH 1/3] Moved to forge-nodejs-utils version 1.1.0. --- package-lock.json | 6 +++--- package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9e5f11f..e0c72f4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -773,9 +773,9 @@ "dev": true }, "forge-nodejs-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/forge-nodejs-utils/-/forge-nodejs-utils-1.0.2.tgz", - "integrity": "sha512-XXlm2ibTvn2YXT4mULyxvWhza/SFEPCFRD4P14yDyUkR75daCzSjMQDhXj5+/1z/+alv+aFUYHk+Lhkw2447Tw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/forge-nodejs-utils/-/forge-nodejs-utils-1.1.0.tgz", + "integrity": "sha512-A6vToca6TUpr6zXAgSEA/U0zUSnQCYYE1OXu8q2/dwE6bJLv3cWEeK5HxejkrPjLAvIwmd+YpWw0IOiCm1MWuA==", "requires": { "node-fetch": "^2.5.0" } diff --git a/package.json b/package.json index 6dfcd54..771a343 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ }, "dependencies": { "commander": "^2.20.0", - "forge-nodejs-utils": "^1.0.2", + "forge-nodejs-utils": "^1.1.0", "form-data": "^2.3.3", "inquirer": "^6.3.1" }, From 5235226f1269043dadbfc140ad33b9ea4b646680 Mon Sep 17 00:00:00 2001 From: Petr Broz Date: Mon, 3 Jun 2019 18:38:55 +0200 Subject: [PATCH 2/3] Query details of DA engines, bundles, activities. --- src/forge-da.js | 83 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) diff --git a/src/forge-da.js b/src/forge-da.js index 587ff63..767bceb 100755 --- a/src/forge-da.js +++ b/src/forge-da.js @@ -18,6 +18,24 @@ if (!FORGE_CLIENT_ID || !FORGE_CLIENT_SECRET) { const designAutomation = new DesignAutomationClient({ client_id: FORGE_CLIENT_ID, client_secret: FORGE_CLIENT_SECRET }); +function isQualifiedID(qualifiedId) { + return qualifiedId.indexOf('.') !== -1 && qualifiedId.indexOf('+') !== -1; +} + +function composeQualifiedID(owner, id, alias) { + return `${owner}.${id}+${alias}`; +} + +function decomposeQualifiedID(qualifiedId) { + const dot = qualifiedId.indexOf('.'); + const plus = qualifiedId.indexOf('+'); + return { + owner: qualifiedId.substr(0, dot), + id: qualifiedId.substr(dot + 1, plus - dot - 1), + alias: qualifiedId.substr(plus + 1) + }; +} + async function promptEngine() { const engines = await designAutomation.listEngines(); const answer = await prompt({ type: 'list', name: 'engine', choices: engines }); @@ -117,6 +135,23 @@ program } }); +program + .command('get-engine [engine]') + .alias('ge') + .description('Get engine details.') + .action(async function(engineid, command) { + try { + if (!engineid) { + engineid = await promptEngine(); + } + + const engine = await designAutomation.getEngine(engineid); + log(engine); + } catch(err) { + error(err); + } + }); + program .command('list-appbundles') .alias('lb') @@ -136,6 +171,30 @@ program } }); +program + .command('get-appbundle [bundle] [bundlealias]') + .alias('gb') + .description('Get appbundle details.') + .action(async function(bundle, bundlealias, command) { + try { + if (!bundle) { + bundle = await promptAppBundle(); + if (isQualifiedID(bundle)) { + bundle = decomposeQualifiedID(bundle).id; + } + } + if (!bundlealias) { + bundlealias = await promptAppBundleAlias(bundle); + } + + const bundleId = designAutomation.auth.client_id + '.' + bundle + '+' + bundlealias; + const appbundle = await designAutomation.getAppBundle(bundleId); + log(appbundle); + } catch(err) { + error(err); + } + }); + program .command('create-appbundle [engine] [description]') .alias('cb') @@ -296,6 +355,30 @@ program } }); +program + .command('get-activity [activity] [activityalias]') + .alias('ga') + .description('Get activity details.') + .action(async function(activity, activityalias, command) { + try { + if (!activity) { + activity = await promptActivity(false); + if (isQualifiedID(activity)) { + activity = decomposeQualifiedID(activity).id; + } + } + if (!activityalias) { + activityalias = await promptActivityAlias(activity); + } + + const activityId = designAutomation.auth.client_id + '.' + activity + '+' + activityalias; + const workitem = await designAutomation.getActivity(activityId); + log(workitem); + } catch(err) { + error(err); + } + }); + let _activityInputs = []; let _activityOutputs = []; From 39397c0587dd07937d68dddeb6e89dc17fdc9e8e Mon Sep 17 00:00:00 2001 From: Petr Broz Date: Mon, 3 Jun 2019 18:41:15 +0200 Subject: [PATCH 3/3] Bumped version to 0.9.0. --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index e0c72f4..b805c33 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "forge-cli-utils", - "version": "0.8.1", + "version": "0.9.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 771a343..8f6f120 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "forge-cli-utils", - "version": "0.8.1", + "version": "0.9.0", "description": "Command line tools for Autodesk Forge services.", "author": "Petr Broz ", "license": "MIT",