Skip to content

Commit

Permalink
feat: adds getGrafeasClient() method on ContainerAnalysisClient insta…
Browse files Browse the repository at this point in the history
…nce (#46)
  • Loading branch information
bcoe authored Jun 19, 2019
1 parent 9e8fbfb commit 3bcdcf9
Show file tree
Hide file tree
Showing 3 changed files with 71 additions and 53 deletions.
24 changes: 19 additions & 5 deletions container-analysis/snippets/createNote.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,21 +14,35 @@ async function main(
// const noteId = 'my-note-id' // Id of the note

// Import the library and create a client
const containerAnalysis = require('@google-cloud/containeranalysis');
const client = new containerAnalysis.v1beta1.GrafeasV1Beta1Client();
const {ContainerAnalysisClient} = require('@google-cloud/containeranalysis');
const client = new ContainerAnalysisClient();
const grafeasClient = client.getGrafeasClient();

// Construct request
// Associate the Note with a metadata type
// https://cloud.google.com/container-registry/docs/container-analysis#supported_metadata_types
// Here, we use the type "vulnerabiltity"
const formattedParent = client.projectPath(projectId);
const formattedParent = grafeasClient.projectPath(projectId);

// Creates and returns a new Note
const [note] = await client.createNote({
const [note] = await grafeasClient.createNote({
parent: formattedParent,
noteId: noteId,
note: {
vulnerability: {},
vulnerability: {
details: [
{
affectedCpeUri: 'foo.uri',
affectedPackage: 'foo',
minAffectedVersion: {
kind: 'MINIMUM',
},
fixedVersion: {
kind: 'MAXIMUM',
},
},
],
},
},
});

Expand Down
73 changes: 52 additions & 21 deletions container-analysis/snippets/quickstart.js
Original file line number Diff line number Diff line change
@@ -1,24 +1,55 @@
// Copyright 2019 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.
// sample-metadata:
// title: Quickstart
// description: fetching an instance of Grafeas and creating a note.
// usage: node quickstart.js "project-id" "note-id"
async function main(
projectId = 'your-project-id', // Your GCP Project ID
noteId = 'my-note-id' // Id of the note
) {
// [START containeranalysis_quickstart]
/**
* TODO(developer): Uncomment these variables before running the sample
*/
// const projectId = 'your-project-id', // Your GCP Project ID
// const noteId = 'my-note-id' // Id of the note

'use strict';
// Import the library and create a client
const {ContainerAnalysisClient} = require('@google-cloud/containeranalysis');
const client = new ContainerAnalysisClient();
// Fetch an instance of a Grafeas client:
// see: https://googleapis.dev/nodejs/grafeas/latest
const grafeasClient = client.getGrafeasClient();

// [START containeranalysis_quickstart]
async function quickstart() {
// Imports the @google-cloud/containeranalysis client library
const client = require('@google-cloud/containeranalysis');
console.log(client);
// Construct request
// Associate the Note with a metadata type
// https://cloud.google.com/container-registry/docs/container-analysis#supported_metadata_types
// Here, we use the type "vulnerabiltity"
const formattedParent = grafeasClient.projectPath(projectId);

// Creates and returns a new Note
const [note] = await grafeasClient.createNote({
parent: formattedParent,
noteId: noteId,
note: {
vulnerability: {
details: [
{
affectedCpeUri: 'foo.uri',
affectedPackage: 'foo',
minAffectedVersion: {
kind: 'MINIMUM',
},
fixedVersion: {
kind: 'MAXIMUM',
},
},
],
},
},
});

console.log(`Note ${note.name} created.`);
// [END containeranalysis_quickstart]
}
quickstart();
// [END containeranalysis_quickstart]

main(...process.argv.slice(2));
27 changes: 0 additions & 27 deletions container-analysis/snippets/test/tests.js

This file was deleted.

0 comments on commit 3bcdcf9

Please sign in to comment.