From 7ab65b4c0c50f0c75e0b7bb870d19ed456676b4c Mon Sep 17 00:00:00 2001 From: Justin Beckwith Date: Mon, 13 May 2019 17:36:43 +0000 Subject: [PATCH] docs: use repo-meta to generate README (#130) --- asset/snippets/exportAssets.js | 60 ++++++++++++ asset/snippets/getBatchAssetHistory.js | 59 +++++++++++ asset/snippets/quickstart.js | 129 +++++++------------------ 3 files changed, 152 insertions(+), 96 deletions(-) create mode 100644 asset/snippets/exportAssets.js create mode 100644 asset/snippets/getBatchAssetHistory.js diff --git a/asset/snippets/exportAssets.js b/asset/snippets/exportAssets.js new file mode 100644 index 00000000000..627f1195bcc --- /dev/null +++ b/asset/snippets/exportAssets.js @@ -0,0 +1,60 @@ +/** + * Copyright 2018, Google, LLC. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +'use strict'; + +// sample-metadata: +// title: Export Assets +// description: Export asserts to specified dump file path. +// usage: node exportAssets.js + +async function main(dumpFilePath) { + // [START asset_quickstart_export_assets] + const {AssetServiceClient} = require('@google-cloud/asset'); + const client = new AssetServiceClient(); + + async function exportAssets() { + const projectId = await client.getProjectId(); + const projectResource = client.projectPath(projectId); + + // TODO(developer): choose the dump file path + // const dumpFilePath = 'Dump file path, e.g.: gs:///' + + const request = { + parent: projectResource, + outputConfig: { + gcsDestination: { + uri: dumpFilePath, + }, + }, + }; + + // Handle the operation using the promise pattern. + const [operation] = await client.exportAssets(request); + + // Operation#promise starts polling for the completion of the operation. + const [result] = await operation.promise(); + + // Do things with with the response. + console.log(result); + } + exportAssets(); + // [END asset_quickstart_export_assets] +} + +main(...process.argv.slice(2)).catch(err => { + console.error(err.message); + process.exitCode = 1; +}); diff --git a/asset/snippets/getBatchAssetHistory.js b/asset/snippets/getBatchAssetHistory.js new file mode 100644 index 00000000000..b0716aaad9d --- /dev/null +++ b/asset/snippets/getBatchAssetHistory.js @@ -0,0 +1,59 @@ +/** + * Copyright 2018, Google, LLC. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +'use strict'; + +// sample-metadata: +// title: Get Batch Asset History +// description: Batch get history of assets. +// usage: node getBatchAssetHistory "//storage.googleapis.com/" + +async function main(assetNames) { + // [START asset_quickstart_batch_get_assets_history] + const util = require('util'); + const {AssetServiceClient} = require('@google-cloud/asset'); + + const client = new AssetServiceClient(); + + async function batchGetAssetsHistory() { + const projectId = await client.getProjectId(); + const projectResource = client.projectPath(projectId); + // TODO(developer): Choose asset names, such as //storage.googleapis.com/[YOUR_BUCKET_NAME]. + // const assetNames = ['ASSET_NAME1', 'ASSET_NAME2', ...]; + + const request = { + parent: projectResource, + assetNames: assetNames.split(','), + contentType: 'RESOURCE', + readTimeWindow: { + startTime: { + seconds: Math.floor(new Date().getTime() / 1000), + }, + }, + }; + + // Handle the operation using the promise pattern. + const result = await client.batchGetAssetsHistory(request); + // Do things with with the response. + console.log(util.inspect(result, {depth: null})); + // [END asset_quickstart_batch_get_assets_history] + } + batchGetAssetsHistory(); +} + +main(...process.argv.slice(2)).catch(err => { + console.error(err.message); + process.exitCode = 1; +}); diff --git a/asset/snippets/quickstart.js b/asset/snippets/quickstart.js index 8bb9c04d439..c13fb2b9912 100644 --- a/asset/snippets/quickstart.js +++ b/asset/snippets/quickstart.js @@ -15,105 +15,42 @@ 'use strict'; -async function exportAssets(dumpFilePath) { - // [START asset_quickstart_export_assets] - const {AssetServiceClient} = require('@google-cloud/asset'); - const client = new AssetServiceClient({ - // optional auth parameters. - }); - - // Your Google Cloud Platform project ID - const projectId = await client.getProjectId(); - const projectResource = client.projectPath(projectId); - - // var dumpFilePath = 'Dump file path, e.g.: gs:///' - const outputConfig = { - gcsDestination: { - uri: dumpFilePath, - }, - }; - const request = { - parent: projectResource, - outputConfig: outputConfig, - }; - - // Handle the operation using the promise pattern. - const [operation] = await client.exportAssets(request); - // Operation#promise starts polling for the completion of the operation. - const [result] = await operation.promise(); - // Do things with with the response. - console.log(result); - // [END asset_quickstart_export_assets] -} +// sample-metadata: +// title: Asset History Quickstart +// description: Batch get history of assets. +// usage: node getBatchAssetHistory "//storage.googleapis.com/" -async function batchGetAssetsHistory(assetNames) { - // [START asset_quickstart_batch_get_assets_history] +async function main(assetNames) { + // [START asset_quickstart] const util = require('util'); const {AssetServiceClient} = require('@google-cloud/asset'); - const client = new AssetServiceClient({ - // optional auth parameters. - }); - // Your Google Cloud Platform project ID - const projectId = await client.getProjectId(); - const projectResource = client.projectPath(projectId); - // Your asset names, such as //storage.googleapis.com/[YOUR_BUCKET_NAME]. - // var assetNames = ['ASSET_NAME1', 'ASSET_NAME2', ...]; - - const contentType = 'RESOURCE'; - const readTimeWindow = { - startTime: { - seconds: Math.floor(new Date().getTime() / 1000), - }, - }; - - const request = { - parent: projectResource, - assetNames: assetNames, - contentType: contentType, - readTimeWindow: readTimeWindow, - }; - - // Handle the operation using the promise pattern. - const result = await client.batchGetAssetsHistory(request); - // Do things with with the response. - console.log(util.inspect(result, {depth: null})); - // [END asset_quickstart_batch_get_assets_history] + const client = new AssetServiceClient(); + + async function quickstart() { + const projectId = await client.getProjectId(); + const projectResource = client.projectPath(projectId); + // TODO(developer): Choose asset names, such as //storage.googleapis.com/[YOUR_BUCKET_NAME]. + // const assetNames = ['ASSET_NAME1', 'ASSET_NAME2', ...]; + + const request = { + parent: projectResource, + assetNames: assetNames.split(','), + contentType: 'RESOURCE', + readTimeWindow: { + startTime: { + seconds: Math.floor(new Date().getTime() / 1000), + }, + }, + }; + + // Handle the operation using the promise pattern. + const result = await client.batchGetAssetsHistory(request); + // Do things with with the response. + console.log(util.inspect(result, {depth: null})); + // [END asset_quickstart] + } + quickstart(); } -const cli = require('yargs') - .demand(1) - .command( - 'export-assets ', - 'Export asserts to specified dump file path.', - {}, - opts => exportAssets(opts.dumpFilePath) - ) - .command( - 'batch-get-history ', - 'Batch get history of assets.', - {}, - opts => { - const assetNameList = opts.assetNames.split(','); - batchGetAssetsHistory(assetNameList); - } - ) - .example( - 'node $0 export-assets gs://my-bucket/my-assets.txt', - 'Export assets to gs://my-bucket/my-assets.txt.' - ) - .example( - 'node $0 batch-get-history "//storage.googleapis.com/,"', - 'Batch get history of assets //storage.googleapis.com/ etc.' - ) - .wrap(10) - .recommendCommands() - .epilogue( - 'https://cloud.google.com/resource-manager/docs/cloud-asset-inventory/overview' - ) - .help() - .strict(); - -if (module === require.main) { - cli.parse(process.argv.slice(2)); -} +main(...process.argv.slice(2));