Coder Social home page Coder Social logo

openupm / verdaccio-storage-proxy Goto Github PK

View Code? Open in Web Editor NEW
9.0 2.0 1.0 1.4 MB

A Verdaccio storage proxy to decouple database, search, packument, and tarball accesses.

Home Page: https://github.com/openupm/verdaccio-storage-proxy

License: BSD 3-Clause "New" or "Revised" License

TypeScript 98.65% JavaScript 1.35%
verdaccio verdaccio-plugin verdaccio-storage-proxy hacktoberfest

verdaccio-storage-proxy's Introduction

verdaccio-storage-proxy

All Contributors

npm NPM npm

A verdaccio storage proxy to decouple database, search, packument, and tarball accesses.

E.g. using the aws-s3-storage for tarball accesses, then using database storage for the rest accesses to create robust mixed storage for a cluster environment.

Access types:

  • database: accesses related to package CRD, security, and token.
  • search: accesses related to search.
  • packument: accesses related to packument CRUD.
  • tarball: accesses related to tarball read and write.

Installation

npm install verdaccio-storage-proxy

Configuration

store:
  storage-proxy:
    database_backend: redis-storage
    search_backend: redis-storage
    packument_backend: redis-storage
    tarball_backend: aws-s3-storage
    backends:
      aws-s3-storage:
        bucket: openupm
        region: us-east-1
        endpoint: http://127.0.0.1:9000
        accessKeyId: admin
        secretAccessKey: password
        s3ForcePathStyle: true
        keyPrefix: 'verdaccio/'
        tarballACL: public-read
      redis-storage:
        host: 127.0.0.1
        ...

The example configuration dispatches tarball accesses to aws-s3-storage and the rest to verdaccio-redis-storage.

Development

See the verdaccio contributing guide for instructions setting up your development environment. Once you have completed that, use the following npm tasks.

  • npm run build

    Build a distributable archive

  • npm run test

    Run unit test

For more information about any of these commands run npm run ${task} -- --help.

Contributors โœจ

Thanks goes to these wonderful people (emoji key):


Favo Yang

๐Ÿ’ป

Denis Gordeev

๐Ÿ› ๐Ÿ’ป

This project follows the all-contributors specification. Contributions of any kind welcome!

verdaccio-storage-proxy's People

Contributors

allcontributors[bot] avatar dependabot[bot] avatar favoyang avatar semantic-release-bot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

servicetitan

verdaccio-storage-proxy's Issues

Adding default "local-storage" as a tarball_backend

Trying to make out tarball files to use Local-Storage (default plugin) and it seems it doesn't work.

at /usr/local/lib/node_modules/verdaccio/node_modules/verdaccio-storage-proxy/lib/plugin.js:39:48 at Array.forEach (<anonymous>) at new VerdaccioStoragePlugin (/usr/local/lib/node_modules/verdaccio/node_modules/verdaccio-storage-proxy/lib/plugin.js:33:39) at /usr/local/lib/node_modules/verdaccio/build/lib/plugin-loader.js:125:32 at Array.map (<anonymous>) at loadPlugin (/usr/local/lib/node_modules/verdaccio/build/lib/plugin-loader.js:62:37) at LocalStorage._loadStorePlugin (/usr/local/lib/node_modules/verdaccio/build/lib/local-storage.js:873:47) at LocalStorage._loadStorage (/usr/local/lib/node_modules/verdaccio/build/lib/local-storage.js:857:26) at new LocalStorage (/usr/local/lib/node_modules/verdaccio/build/lib/local-storage.js:49:31)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.