Skip to content

cakd create

The cakd create command bootstraps a new cloud-native project. It reads platform.yaml, generates project files, provisions a GitHub repository via the Terraform Bridge, pushes the generated code, and registers an ArgoCD Application.

Terminal window
cakd create [flags]
FlagShortTypeDefaultDescription
--file-fstringplatform.yamlPath to platform.yaml.
--force""boolfalseForce overwrite existing project directory.
  1. The platform.yaml file is read from the specified path.
  2. The configuration is parsed and validated through a three-phase pipeline: structure validation, defaults injection, and logic validation.
  3. A project context is prepared, which includes determining the output directory (e.g., ./out/{project-name}). If the directory already exists and --force is not set, the command fails.
  4. The following sequential pipeline steps are executed:
    • Scaffold: Scaffolds the base project and renders CAKD templates into the output directory.
    • Infra: Provisions infrastructure (e.g., a GitHub repository via the Terraform Bridge) and retrieves outputs.
    • Version Control: Initializes git, commits generated files, and pushes them to the provisioned repository.
    • Deploy: Registers the ArgoCD application using the generated manifest.
    • Notify: Performs any final notification actions.
  5. Upon successful completion, a summary is printed, detailing the newly created project’s git repository location, local code path, and deployment mode.
Terminal window
cakd create -f platform.yaml
Terminal window
cakd create -f platform.yaml --force