Liking cljdoc? Tell your friends :D

The Exoscale Clojure library

A library providing low-level and high-level constructs to interact with Exoscale infrastructure resources.

Supported Resources

  • 🗹 Virtual machine instances
  • 🗹 Virtual machine templates
  • 🗹 SSH keypairs
  • ☐ Elastic IP Addresses
  • ☐ Security Groups
  • ☐ Private Networks
  • ☐ Object Storage
  • ☐ DNS
  • ☐ Status page management

Configuration

This library needs access to your Exoscale credentials to perform operations.

Credentials can be provided in several ways.

The configuration map

Most functions take a config map as their first argument. This map has two mandatory keys and an optional one.

{:api-key    "EXO..."
 :api-secret "..."
 :endpoint   "https://api.exoscale.com/compute"} ;; optional

Configuration file

Most library consumers will want to read configuration from a file to avoid wiring credentials directly in their application.

The exoscale.compute.api.config/from-environment function will load credentials in the following way:

  • Read either $XDG_CONFIG_HOME/exoscale/exoscale.toml or $XDG_CONFIG_HOME/exoscale/exoscale.edn, expecting the same structure than in the Exoscale CLI
  • Look-up the default account or a provided override
  • Process the following environment overrides: EXOSCALE_ACCOUNT, EXOSCALE_API_KEY, EXOSCALE_API_SECRET, EXOSCALE_ENDPOINT.

Can you improve this documentation?Edit on GitHub

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close