Package Exports
- cloudsigma
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (cloudsigma) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Overview
Dead simple Node.js wrapper for the CloudSigma API.
Installation (for now)
No npm package yet...
Take it straight from Github:
"dependencies": {
"cloudsigma": "stirlab/node-cloudsigma"
}Usage
The library leverages the request HTTP library, providing simple wrappers for the five supported HTTP verbs.
The path and JSON data parameters can be figured out via CloudSigma's API.
Note that many of the endpoint paths include a trailing slash -- you'll need to include that to hit the right path on the endpoint.
Examples
var CloudSigma = require('cloudsigma');
// Initialize an new datacenter endpoint.
// datacenter-label is the three letter location code for the datacenter you
// wish to connect to, see:
// http://cloudsigma-docs.readthedocs.io/en/2.14/general.html
var cloudSigma = new CloudSigma('username', 'password', 'datacenter-label');
// Fetch all endpoints.
cloudSigma.options(function(err, response, body) {
console.log(err);
console.log(body);
});
// Get all servers.
cloudSigma.get("/servers/", function(err, response, body) {
console.log(err);
console.log(body);
});
// Update server attributes.
var data = {
"cpu": 1000,
"mem": 1073741824,
"name": "test-server",
"vnc_password": "supersecret"
};
cloudSigma.put("/servers/" + server_uuid + "/", data, function(err, response, body) {
console.log(err);
console.log(body);
});
// Start a server.
cloudSigma.post("/servers/" + server_uuid + "/action/", null, {do: 'start'}, function(err, response, body) {
console.log(err);
console.log(body);
});
// Create a new disk drive.
var data = {
"media": "disk",
"name": "test_drive_0",
"size": 1073741824
}
cloudSigma.post("/drives/", data, function(err, response, body) {
console.log(err);
console.log(body);
});
// Delete a disk drive.
cloudSigma.delete("/drives/" + drive_uuid + "/", function(err, response, body) {
console.log(err);
console.log(body);
});Function signatures
options(callback)
get(path, callback)
get(path, queryOpts, callback)
post(path, data, callback)
post(path, data, queryOpts, callback)
put(path, data, callback)
put(path, data, queryOpts, callback)
delete(path, callback)