1.2.0 • Published 5 years ago

await-targz v1.2.0

Weekly downloads
2
License
MIT
Repository
github
Last release
5 years ago

await-targz Build Status Coverage Status

await-targz is a module working with Promise and async/await providing operations to pack, unpack, upload and download tarballs. It uses the pkgcloud API which supports interactions with multiple cloud providers.

Installation

npm install await-targz --save

Usage

When using this module, the exported class accepts two arguments.

  • cdnup The configurations for setup the cdnup instance. We use cdnup to easily consume the pkgcloud API.
  • log The logger for log out information and error. Everyone loves logs! diagnostics is set to default if no specific logger object provided.

An example of how to use it could be:

const Tar = require('await-targz');

const tar = new Tar({
  cdnup: {
    bucket: 'some_mock_bucket',
    pkgcloud: {
      provider: 'amazon',
      endpoint: 'some_end_point',
      keyId: 'this_is_a_mock_key_id',
      key: 'this_is_a_mock_key',
      forcePathBucket: true
    }
  },
  log: your_logger_obj // if no logger provided, it will default to `diagnostics`
});

API

It provides the following API methods.

pack

You can use this method to pack a tarball by providing the source path and target path.

tar.pack('path/to/source/some-component', 'path/to/target/some-component.tar');

unpack

In reverse, this method is to unpack a tarball to a provided directory.

tar.unpack('path/to/tarball/some-component.tar', 'path/to/dir/some-component');

upload

Once when the pkgcloud API is setup correctly, you can upload the tarball to the provided endpoint, e.g. Ceph object center.

tar.upload('some-component-1a2b3c4.tgz', 'path/to/tarball/some-component.tar');

Once when you finish uploading, you can check through the corresponding cloud client UI/console to see if the tarball with name e.g. some-component-1a2b3c4.tgz is there or not.

download

You can download an existing tarball to a given directory using:

tar.download('some-component-1a2b3c4.tgz', { tarball: 'path/to/save/tarball/some-component.tar' });

remove

You can remove an existing tarball from the remote storage by using:

tar.remove('some-component-1a2b3c4.tgz');

exists

You can check if a file/tarball exists or not in remote storage by using:

tar.exists('some-component-1a2b3c4.tgz');

Test

npm test

License

MIT

1.2.0

5 years ago

1.1.0

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago