Skip to content

Command to Build Metadata File Describing Structure of VCS Repos #191

@Josh-Tracy

Description

@Josh-Tracy

Is your feature request related to a problem? Please describe.
Most VCS repositories that contain terraform CE configuration are monorepos with multiple paths that contain different configurations. In addition, these configurations often use the terraform CE workspaces feature.

Describe the solution you'd like
A command to build a metadata file about the VCS repo that describes the following:

  • All paths within the VCS repo that contain a terraform{ backend {} } configuration
  • If the identified path is using terraform workspaces ( bool )
  • If the path is using CE workspaces, a list of those workspaces

Example:

[
  {
    "repo_name": "isengard",
    "config_paths": [
      {
        "path": "isengard/infra/east/primary",
        "workspace_info": {
          "uses_workspaces": true,
          "workspace_names": [
            "default",
            "newisengard",
            "oldisengard"
          ]
        }
      },
      {
        "path": "isengard/infra/east/secondary",
        "workspace_info": {
          "uses_workspaces": false,
          "workspace_names": [
            "default"
          ]
        }
      },

# more repos and paths below this

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions