Configure - epam/hubctl GitHub Wiki

hub configure reads hub.yaml extensions section and configures stack for deployment. It integrates with hub stack deploy to provide a simplified command-line experience around hub deploy (and undeploy).

extensions:
  include:
  - params.yaml
  configure:
  - aws
  - kubernetes
  - env
  deploy:
    after:
    - inventory-configmap

With the example above, aws extension will be called to make sure AWS cloud account is setup:

  • S3 account specific bucket <account number>.superhub.io exists or it will be created;
  • Route 53 hosted zone for the stack is created.

kubernetes extension will copy Kubeconfig under .hub/env/<domain>.kubeconfig.

env extension will parse params.yaml to find fromEnv: parameters to prompt user for values.

The result will be saved into .hub/env/<domain>.env and a symlink .env pointing to the current active configuration will be created (or replaced).

inventory-configmap deploy.after hook saves essential information about the stack into kube-system/superhub configmap for hub show.

Usage:
  hub configure -f hub.yaml <parameters>

Common parameters:
  -f  --file              Path to stack definition file (can be repeated multiple times)
  -r  --requirement       Configure one requirement (can be repeated multiple times)
  -i  --init-dotenv FILE  Start with initial values from the .env FILE
  -s  --silent            Suppress console outputs in favor of result codes
  -V  --verbose           Verbose outputs for debug purposeEOF
  -h  --help              Print this message

Use: hub configure -r aws -r kubernetes   # configure specified requirements only

In case you have Kubernetes component such as EKS in you stack, then extensions section may look like the following:

extensions:
  include:
  - params.yaml
  configure:
  - aws
  - env
  deploy:
    after:
    - kubernetes
    - inventory-configmap

kubernetes is moved under deploy.after hook to create .hub/env/<domain>.kubeconfig after stack is deployed.

⚠️ **GitHub.com Fallback** ⚠️