Skip to content
This repository has been archived by the owner on Aug 5, 2019. It is now read-only.

☁️📦 Google Cloud storage plugin for verdaccio

License

Notifications You must be signed in to change notification settings

verdaccio/verdaccio-google-cloud

Repository files navigation

Deprecated repository

This repository has been moved to a monorepo you can find in verdaccio/monorepo. This package is located in plugins/google-cloud folder

verdaccio-google-cloud

npm CircleCI codecov FOSSA Status backers discord MIT

☁️📦 Google Cloud storage plugin for verdaccio

⚠️⚠️ This plugin is experimental and might be unstable. It requires further testing. ⚠️⚠️

npm i -g verdaccio-google-cloud
yarn global add verdaccio-google-cloud
pnpm i -g verdaccio-google-cloud

Requirements

  • Google Cloud Account
  • Service account with 'Cloud Datastore Owner' role and read/write access to the bucket
  • Verdaccio server (see below)
npm install -g verdaccio@latest
yarn global add verdaccio@latest
pnpm -g verdaccio@latest

Configuration

Complete configuration example:

store:
  google-cloud:
   ## google project id
   projectId: project-01 || env (GOOGLE_CLOUD_VERDACCIO_PROJECT_ID)

   ## namespace for metadata database
   kind: someRandonMetadataDatabaseKey

   ## this pluging do not create the bucket, it has to exist
   bucket: my-bucket-name

   ## google cloud recommend this file only for development
   ## this field is not mandatory
   keyFilename: /path/project-01.json || env (GOOGLE_CLOUD_VERDACCIO_KEY)

   ## default validation is, it can be overrided by 
   ## https://cloud.google.com/nodejs/docs/reference/storage/1.6.x/File.html#createWriteStream
   # validation: crc32c

   ## Enable/disable resumable uploads to GC Storage
   ## By default it's enabled in `@google-cloud/storage`
   ## May cause failures for small package uploads so it is recommended to set it to `false`
   ## @see https://stackoverflow.com/questions/53172050/google-cloud-storage-invalid-upload-request-error-bad-request
   resumable: true

Define env whether you want load the value from environment variables.

If you are willing to use some of env just do not define properties on config.yaml or let them emtpy. Properties have preceden over env variables.

Disclaimer

⚠️⚠️ This plugin is experimental and might be unstable. It requires further testing. ⚠️⚠️

License

MIT Licensed

FOSSA Status