Указание идентификатора проекта при создании корзины хранилища GCP

#node.js #google-cloud-platform #google-cloud-storage #gcloud

#node.js #google-облачная платформа #google-облачное хранилище #gcloud

Вопрос:

Я пытаюсь создать хранилище GCP, используя Node.js библиотека. Я использовал следующие шаги: https://cloud.google.com/storage/docs/creating-buckets#storage-create-bucket-nodejs

И код, вставленный ниже. Проблема в том, что моя корзина продолжает создаваться в неправильном проекте. Мой проект задан в моей командной строке gcloud, он задан в моей среде узла и задан в моем скрипте. Есть ли какой-нибудь способ задать проект в значениях, которые вы передаете в функцию createBucket библиотеки?

 /**
 * TODO(developer): Uncomment the following line before running the sample.
 */
// const bucketName = 'Name of a bucket, e.g. my-bucket';
// const storageClass = 'Name of a storage class, e.g. coldline';
// const location = 'Name of a location, e.g. ASIA';

// Imports the Google Cloud client library
const {Storage} = require('@google-cloud/storage');

// Creates a client
const storage = new Storage();

async function createBucketWithStorageClassAndLocation() {
  // For default values see: https://cloud.google.com/storage/docs/locations and
  // https://cloud.google.com/storage/docs/storage-classes

  const [bucket] = await storage.createBucket(bucketName, {
    location,
    [storageClass]: true,
  });

  console.log(
    `${bucket.name} created with ${storageClass} class in ${location}.`
  );
}

createBucketWithStorageClassAndLocation();
 

Ответ №1:

Вы можете указать идентификатор проекта при инициализации класса хранилища:

 const storage = new Storage({
  projectId: 'my-project-id',
  keyFilename: '/path/to/keyfile.json'
});
 

Источник