Skip to content

tocproject.toc.infra

Purpose

  • Render Terraform stack of cloud infrastructure patterns.
  • Apply stack.
  • Generate ssh.cfg and inventory to reach created hosts.

Variables

toc_infra_workspace: "{{ toc_workspace }}"
toc_infra_flavor: "scw_one"
toc_infra_tf_modules_dir: "{{ toc_tf_modules_dir }}"

Terraform variables

Atomic configuration variables for all flavors.

toc_infra_private_key_file: "{{ toc_ssh_private_key_file }}"
toc_infra_local_secrets_dir: "{{ toc_secrets_dir }}"
toc_infra_local_toc_group_vars_dir: "{{ toc_group_vars_root_dir }}/toc"
toc_infra_local_keepers_group_vars_dir: "{{ toc_group_vars_root_dir }}/toc_keepers"
toc_infra_local_watchers_group_vars_dir: "{{ toc_group_vars_root_dir }}/toc_watchers"
toc_infra_local_workers_group_vars_dir: "{{ toc_group_vars_root_dir }}/toc_workers"

  • Local diretories to create.
    toc_infra_local_expected_dirs:
      - "{{ toc_infra_local_secrets_dir }}"
      - "{{ toc_infra_local_toc_group_vars_dir }}"
      - "{{ toc_infra_local_keepers_group_vars_dir }}"
      - "{{ toc_infra_local_watchers_group_vars_dir }}"
      - "{{ toc_infra_local_workers_group_vars_dir }}"
    
    toc_infra_scw_one_instance_type_keeper: "DEV1-S"
    toc_infra_scw_one_instance_type_watcher: "DEV1-S"
    toc_infra_scw_one_instance_type_worker: "DEV1-S"
    toc_infra_scw_one_instance_image_all: "debian_bookworm"
    
    toc_infra_flavor_params:
      scw_one:
        parent_domain: "{{ toc_parent_domain }}"
        ssh_public_key_file: "{{ toc_infra_private_key_file }}.pub"
        instance_type_keeper: "{{ toc_infra_scw_one_instance_type_keeper }}"
        instance_type_watcher: "{{ toc_infra_scw_one_instance_type_watcher }}"
        instance_type_worker: "{{ toc_infra_scw_one_instance_type_worker }}"
        instance_image_all: "{{ toc_infra_scw_one_instance_image_all }}"
    
      scw_infra_ovh_dns:
        parent_domain: "{{ toc_parent_domain }}"
        ssh_public_key_file: "{{ toc_infra_private_key_file }}.pub"
        instance_type_keeper: "{{ toc_infra_scw_one_instance_type_keeper }}"
        instance_type_watcher: "{{ toc_infra_scw_one_instance_type_watcher }}"
        instance_type_worker: "{{ toc_infra_scw_one_instance_type_worker }}"
        instance_image_all: "{{ toc_infra_scw_one_instance_image_all }}"
    
      scw_metal_ovh_dns:
        parent_domain: "{{ toc_parent_domain }}"
        ssh_public_key_file: "{{ toc_infra_private_key_file }}.pub"
        instance_type_keeper: "{{ toc_infra_scw_one_instance_type_keeper }}"
        instance_type_watcher: "{{ toc_infra_scw_one_instance_type_watcher }}"
        instance_type_worker: "{{ toc_infra_scw_one_instance_type_worker }}"
        instance_image_all: "{{ toc_infra_scw_one_instance_image_all }}"