bunnycdn-node

[![CircleCI](https://circleci.com/gh/UintaGroup/bunnycdn-node.svg?style=svg)](https://circleci.com/gh/UintaGroup/bunnycdn-node) [![Coverage Status](https://coveralls.io/repos/github/UintaGroup/bunnycdn-node/badge.svg?branch=master)](https://coveralls.io/g

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
bunnycdn-node
6121.1.14 years ago4 years agoMinified + gzip package size for bunnycdn-node in KB

Readme

bunnycdn-node
CircleCI Coverage Status Build Status
BunnyCDN node.
A simple utility for working with bunnycdn's APIs
This was initially planned to be a simple utility for us to use to update js files on Bunny's storage platform and then bust their cache after a deployment.

Installation

$ npm install bunnycdn-node

set the following environment variables - BUNNYAPIKEY - BUNNYSTORAGEAPIKEY

Usage

import

import { Bunny } from 'bunnycdn-node';
...
const bunny = new Bunny();

Storage

All files in Storage Zone
const files: StorageZoneFile[] = await bunny.storage.get('mystoragezone');

Contents of specific file
const fileContents: string = await bunny.storage.getFile('mystoragezone/somepath/afile.js');

Update Contents of specific file
bunny.storage.update('mystorage/somepath/afile.js', 'console.log(\'I was updated\');');

Delete specific file
bunny.storage.delete('mystorage/somepath/afile.js');

Bunny API

Get Billing
const billing: Billing = await bunny.billing();

Get Statistics
const stats : Statistic = await bunny.statistics();

Purge File Cache
bunny.purge('http://my-zone/mypath/filetopurge.css');

HardUpdate File (Update and Purge)
bunny.hardUpdate('https://mydomain.com','myStorage', 'myPath', 'fileName.css', 'new file contents');