1
0
mirror of https://github.com/verdaccio/verdaccio.git synced 2024-11-13 03:35:52 +01:00
verdaccio/packages/plugins/google-cloud-storage/README.md

78 lines
3.1 KiB
Markdown

# verdaccio-google-cloud
[![npm](https://img.shields.io/npm/v/verdaccio-google-cloud.svg)](https://www.npmjs.com/package/verdaccio-google-cloud)
[![CircleCI](https://circleci.com/gh/verdaccio/verdaccio-google-cloud.svg?style=svg)](https://circleci.com/gh/verdaccio/verdaccio-google-cloud)
[![codecov](https://codecov.io/gh/verdaccio/verdaccio-google-cloud/branch/master/graph/badge.svg)](https://codecov.io/gh/verdaccio/verdaccio-google-cloud)
[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fverdaccio%2Fverdaccio-google-cloud.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2Fverdaccio%2Fverdaccio-google-cloud?ref=badge_shield)
[![backers](https://opencollective.com/verdaccio/tiers/backer/badge.svg?label=Backer&color=brightgreen)](https://opencollective.com/verdaccio)
[![discord](https://img.shields.io/discord/388674437219745793.svg)](http://chat.verdaccio.org/)
![MIT](https://img.shields.io/github/license/mashape/apistatus.svg)
☁️📦 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:
```yaml
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](http://www.opensource.org/licenses/mit-license.php)
[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fverdaccio%2Fverdaccio-google-cloud.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fverdaccio%2Fverdaccio-google-cloud?ref=badge_large)