
Security News
The Hidden Blast Radius of the Axios Compromise
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.
softlayer-object-storage
Advanced tools
NPM
$ npm i -S softlayer-object-storage
import ObjectStorage from 'softlayer-object-storage';
import fs from 'fs';
const conf = {
timeout: 1000 * 60 * 10, // connection timeout [optional]
removeAccess: true, // allow remove objects from container [default false]
storage: 'public', // public or private
endpoint: 'https://***.objectstorage.softlayer.net/auth/v1.0',
username: 'SLOS********-*:***********',
key: '******************************',
container: 'backups',
};
const backupsContainer = new ObjectStorage(conf);
const readStream = fs.createReadStream('./mysql.sql.gz');
// create new containers 'test-container'
backupsContainer.createContainer('test-container')
.then(console.log)
.catch(console.error);
// show all containers in your account
backupsContainer.listContainers()
.then(console.log)
.catch(console.error);
// remove container, (you can remove only empty container)
backupsContainer.removeContainer('test-container')
.then(console.log)
.catch(console.error);
// show full url to all files in 'backups' container
// show full url to all files in folder 'public' of 'backups' container: backupsContainer.listFiles('/public')
backupsContainer.listFiles()
.then(console.log)
.catch(console.error);
// upload 'mysql.sql.gz' from local to OS
// if you are passing stream from spawn (with no name)
// 'backupsContainer.uploadFile(readStream, { name: 'custom file name', container, headers: 'object to extent put headers' })'
// or you can even just pass the path 'backupsContainer.uploadFile('./mysql.sql.gz')'
backupsContainer.uploadFile(readStream)
.then(console.log)
.catch(console.error);
// remove 'mysql.sql.gz' from OS
// you can pass string (to remove one object) or array of string to remove many
// string is a a name or full URL to object
backupsContainer.removeFile('mysql.sql.gz') // or backupsContainer.removeFile('https://***.objectstorage.softlayer.net/v1/AUTH_**/backups/mysql.sql.gz')
.then(console.log)
.catch(console.error);
MIT
FAQs
Set of helpers to work with the softLayer Object Storage.
We found that softlayer-object-storage demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.

Research
Malicious versions of the Telnyx Python SDK on PyPI delivered credential-stealing malware via a multi-stage supply chain attack.