Exoscale Onboarding
Onboarding your Exoscale account to Klarity ImageFactory enables the automated creation and distribution of custom templates across Exoscale zones. This guide covers the prerequisites and steps required to connect your account.
Prerequisites
Before you begin the onboarding process, ensure you have the following:
- An active Exoscale account.
- Permissions to create and manage API keys.
- Access to the Klarity ImageFactory console or API.
Required Credentials
To connect ImageFactory to your Exoscale account, you need to provide the following credentials:
apiKey: Your Exoscale API Key.apiSecret: Your Exoscale API Secret.
These credentials allow ImageFactory to interact with the Exoscale API to provision build instances and register templates.
Supported Zones
ImageFactory supports building and distributing images in the following Exoscale zones:
| Zone ID | Location |
|---|---|
at-vie-1 | Vienna, Austria |
at-vie-2 | Vienna 2, Austria |
bg-sof-1 | Sofia, Bulgaria |
ch-dk-2 | Zurich, Switzerland |
ch-gva-2 | Geneva, Switzerland |
de-fra-1 | Frankfurt, Germany |
Ensure that your account has the necessary quotas and access to the zones where you plan to build and store your images.
Step-by-Step Guide
Follow these steps to prepare your Exoscale account:
1. Generate API Keys with Required Permissions
Log in to the Exoscale Portal. Navigate to the IAM section and select API Keys. Click Add API Key and give it a descriptive name like imagefactory-integration.
Important: The API key must have an IAM role with permissions for the register-template and list-templates operations in the compute service. The ImageFactory UI shows the exact IAM role policy you need when you start the onboarding wizard. Here is the required policy:
{
"default-service-strategy": "deny",
"services": {
"compute": {
"type": "rules",
"rules": [
{
"action": "allow",
"expression": "operation in ['register-template', 'list-templates']"
}
]
}
}
}
For more information, see the Exoscale IAM documentation.
2. Save Your Credentials
Once the key is created, copy the API Key and the API Secret. Store the secret securely, as it will not be shown again.
3. Add Account in ImageFactory
Use the ImageFactory console or the GraphQL API to submit your credentials. You will need to provide a name for the account and the API key pair.
API Example
You can onboard an Exoscale account using the following GraphQL mutation:
mutation CreateExoscaleAccount {
createAccount(input: {
name: "Production-Exoscale"
provider: EXOSCALE
exoscaleConfig: {
apiKey: "EXOxxxxxxxxxxxxxxxxxxxxxxxx"
apiSecret: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
}) {
id
status
}
}
Image Distribution on Exoscale
When a build is successful, ImageFactory registers the resulting image as a private template in your Exoscale account. You can then use this template to launch new instances in any of the supported zones. The distribution process handles the registration and ensures the template is available for use.
Verifying the Connection
After adding the account, ImageFactory will perform a validation check to ensure the API keys are valid and have the required permissions. Check the account status in the dashboard. A status of ACCESS_SUCCESS indicates that the integration is working correctly and you can start creating image templates.