OVERVIEW
The Cloud Tools plugin is a multi-cloud toolkit to allow you to easily integrate with many popular online cloud infrastructure services, such as Amazon, Azure, Google Cloud, Rackspace, and other providers offering standards based APIs. This plugin currently focuses on cloud blob/document storage & compute, but is being enhanced to add other features, such as additional Compute options, Load Balancer support, and more.
The convenience of this plugin is that it provides the exact same API to all the different cloud providers, allowing you to easily integrate with one or all of them.
This plugin is built around the Apache JClouds project, supports Java 9+.
Cloud Tools Features:
Storage:
- Connect to any bucket by region, where necessary
- List objects by bucket/folder
- Get object details, such as name, date created and modified, etags, and size
- Add new objects
- Download object
- Delete objects
Compute:
- List nodes/instances
- Suspend/destroy/resume/reboot/create instances
- Get instance info, like id, provider, name, tags, and type
BENEFITS
- Store objects in cloud storage and just maintain a link to them from your Servoy Application
- Allow each of your customer to connect to their own cloud storage provider by securely storing their access keys, allowing each of your customers access to their cloud files through your app!
COMPATIBILITY
Smart client | Headless client | Web client | Mobile client | NG client | |||||
---|---|---|---|---|---|---|---|---|---|
8.0+ | 9+ | – | |||||||
7.0+ | 9+ | – | n/a | ||||||
6.1+ | 9+ | n/a | n/a |
DOCUMENTATION
We published our API Specifications online. Below are some quick examples using the plugin.
var provider = plugins.it2be_cloudtools.newComputeProvider(plugins.it2be_cloudtools.COMPUTE_PROVIDERS.AWS); provider.setCredentials("yourAwsAccessKeyId", "yourAwsSecretAccessKeyId"); provider.connect(); var nodes = provider.getNodes(); for (var i = 0; i < nodes.length; i++) { var obj = nodes[i] application.output(obj.id) application.output(obj.name) application.output(obj.providerId) application.output(obj.type) }
var provider = plugins.it2be_cloudtools.newStorageProvider(plugins.it2be_cloudtools.STORAGE_PROVIDERS.AZURE); provider.setCredentials("<yourStorageAccountName>", "<yourAccountKey>"); provider.connect() var objects = provider.listObjects("<bucketName>"); for(var i=0; i<objects.length; i++){ var obj = objects[i] application.output(obj.name) application.output(obj.URI) application.output(obj.creationDate) application.output(obj.lastModified) application.output(obj.size) }
FAQ
See our Knowledge Base Article Here
See our Knowledge Base Article Here
UPDATE: The plugin should now also work in Java 9+. I’ve tested it with Java 14 on the latest Servoy without problems.
Yes, it will run server-side. So documents will get streamed from the browser to the Servoy Server, and then to the cloud. Also keep in mind your server needs to run Java 8 or Java 9.
Yes, but keep in mind the Java dependency if you want the cloud integration to happen client-side. You may also run the plugin server-side via batch processors, RESTful services, and headless clients.
RELEASE NOTES
BUY NOW
Developer
One developer & unlimited deployment
- +35% p/y
maintenance fee
Site
Team of developers & unlimited deployment
- +35% p/y
maintenance fee