Skip to content

Commit

Permalink
docs(nodejs_mono_repo): update broken links in README (#1577)
Browse files Browse the repository at this point in the history
Makes sure file names do not contain `/workspace/google-cloud-node/`, since the post-processor runs from the root, but the link only needs the relative directory.

Since this is a shared function, we need to make the changes in the node post-processing.
  • Loading branch information
sofisl committed Sep 13, 2022
1 parent 7d86a9b commit 50db768
Show file tree
Hide file tree
Showing 3 changed files with 108 additions and 1 deletion.
11 changes: 10 additions & 1 deletion synthtool/languages/node_mono_repo.py
Expand Up @@ -116,7 +116,16 @@ def template_metadata(relative_dir: str) -> Dict[str, Any]:
except FileNotFoundError:
pass

all_samples = samples.all_samples([str(Path(relative_dir, "samples/*.js"))])
all_samples = samples.all_samples(
[
str(Path(relative_dir, "samples/*.js")),
str(Path(relative_dir, "samples/*/*.js")),
str(Path(relative_dir, "samples/*/*/*.js")),
]
)

for sample in all_samples:
sample["file"] = re.sub(r"/workspace/google-cloud-node/", "", sample["file"])

# quickstart.js sample is special - only include it in the samples list if there is
# a quickstart snippet present in the file
Expand Down
@@ -0,0 +1,89 @@
// Copyright 2022 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
//
// https://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.
//
// ** This file is automatically generated by gapic-generator-typescript. **
// ** https://github.com/googleapis/gapic-generator-typescript **
// ** All changes to this file may be overwritten. **



'use strict';

function main(parent, backupId, backup) {
// [START metastore_v1_generated_DataprocMetastore_CreateBackup_async]
/**
* TODO(developer): Uncomment these variables before running the sample.
*/
/**
* Required. The relative resource name of the service in which to create a backup
* of the following form:
* `projects/{project_number}/locations/{location_id}/services/{service_id}`.
*/
// const parent = 'abc123'
/**
* Required. The ID of the backup, which is used as the final component of the
* backup's name.
* This value must be between 1 and 64 characters long, begin with a letter,
* end with a letter or number, and consist of alpha-numeric ASCII characters
* or hyphens.
*/
// const backupId = 'abc123'
/**
* Required. The backup to create. The `name` field is ignored. The ID of the created
* backup must be provided in the request's `backup_id` field.
*/
// const backup = {}
/**
* Optional. A request ID. Specify a unique request ID to allow the server to ignore the
* request if it has completed. The server will ignore subsequent requests
* that provide a duplicate request ID for at least 60 minutes after the first
* request.
* For example, if an initial request times out, followed by another request
* with the same request ID, the server ignores the second request to prevent
* the creation of duplicate commitments.
* The request ID must be a valid
* UUID (https://en.wikipedia.org/wiki/Universally_unique_identifier#Format)
* A zero UUID (00000000-0000-0000-0000-000000000000) is not supported.
*/
// const requestId = 'abc123'

// Imports the Metastore library
const {DataprocMetastoreClient} = require('@google-cloud/dataproc-metastore').v1;

// Instantiates a client
const metastoreClient = new DataprocMetastoreClient();

async function callCreateBackup() {
// Construct request
const request = {
parent,
backupId,
backup,
};

// Run request
const [operation] = await metastoreClient.createBackup(request);
const [response] = await operation.promise();
console.log(response);
}

callCreateBackup();
// [END metastore_v1_generated_DataprocMetastore_CreateBackup_async]
}

process.on('unhandledRejection', err => {
console.error(err.message);
process.exitCode = 1;
});
main(...process.argv.slice(2));
9 changes: 9 additions & 0 deletions tests/test_node_mono_repo.py
Expand Up @@ -88,6 +88,15 @@ def test_no_samples():
assert len(metadata["samples"]) == 0


def test_fix_sample_path():
with util.copied_fixtures_dir(FIXTURES):
metadata = node_mono_repo.template_metadata(
FIXTURES / "nodejs_mono_repo_with_samples" / "packages" / "datastore"
)
for sample in metadata["samples"]:
assert "/workspace/google-cloud-node/" not in sample["file"]


def test_extract_clients_no_file():
index_ts_path = pathlib.Path(
FIXTURES / "node_templates" / "index_samples" / "no_exist_index.ts"
Expand Down

0 comments on commit 50db768

Please sign in to comment.