Skip to content

Prerequisites

Clanker depends on external CLI tools to interact with cloud providers and container orchestration platforms. This page lists all required and optional dependencies.


Build Requirements

These are required to build Clanker from source:

ToolRequiredUsed ForInstall
Go 1.21+YesBuilding the Clanker binarygolang.org/dl

Runtime Dependencies

Required

ToolRequiredUsed ForInstall
AWS CLI v2YesAll AWS operations. Clanker uses --no-cli-pager, which is not available in v1.AWS CLI v2 install guide

AWS CLI v2 is the only tool that is strictly required at runtime. All other tools below are needed only if you use the corresponding cloud provider or feature.

Optional (per provider)

ToolRequiredUsed ForInstall
TerraformNoclanker ask --terraform and clanker terraform commandsterraform.io/downloads
gh (GitHub CLI)NoGitHub Models AI provider (github-models), token resolution, and clanker github commandscli.github.com
gcloudNoGCP queries (clanker ask --gcp), gemini provider via Application Default Credentialscloud.google.com/sdk/docs/install
az (Azure CLI)NoAzure queries (clanker ask --azure) and Azure maker planslearn.microsoft.com/cli/azure/install
doctlNoDigitalOcean queries (clanker ask --digitalocean) and maker plansdocs.digitalocean.com/reference/doctl
hcloudNoHetzner Cloud queries (clanker ask --hetzner) and maker plansgithub.com/hetznercloud/cli
kubectlNoKubernetes queries (clanker k8s ask) and plan executionkubernetes.io/docs/tasks/tools
helmNoKubernetes Helm chart operations via K8s planshelm.sh/docs/intro/install
eksctlNoEKS cluster provisioning via K8s maker planseksctl.io/installation
dockerNoContainer image operations in DigitalOcean registry push workflowsdocs.docker.com/get-docker

Verifying Your Setup

After installing the required tools, verify that they are available on your PATH:

bash
# Required
aws --version          # Must be v2.x

# Optional (check whichever you plan to use)
terraform --version
gh --version
gcloud --version
az --version
doctl version
hcloud version
kubectl version --client
helm version
eksctl version
docker --version

AWS CLI Configuration

Clanker uses AWS CLI profiles for authentication rather than raw access keys in its own config. To set up a profile:

bash
# Configure a named profile
aws configure --profile my-dev-profile

# For SSO-based authentication
aws configure sso --profile my-dev-profile

# Verify the profile works
aws sts get-caller-identity --profile my-dev-profile

Then reference the profile in ~/.clanker.yaml:

yaml
infra:
  default_environment: dev
  aws:
    environments:
      dev:
        profile: my-dev-profile
        region: us-east-1

GCP Authentication

If using GCP queries or the gemini AI provider (Vertex AI), authenticate with Application Default Credentials:

bash
gcloud auth login
gcloud auth application-default login
gcloud config set project your-project-id

Azure Authentication

If using Azure queries, sign in with the Azure CLI:

bash
az login
az account set --subscription your-subscription-id

GitHub CLI Authentication

If using the github-models AI provider or GitHub repository queries:

bash
gh auth login