structure

package
v0.0.0-...-c6a0b50 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 1, 2024 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

View Source
const DataBlockType = "data"
View Source
const EachBlockType = "each"
View Source
const LocalBlockType = "local"
View Source
const ModuleBlockType = "module"
View Source
const PluginsOutputDir = ".yor_plugins"
View Source
const ResourceBlockType = "resource"
View Source
const VarBlockType = "var"
View Source
const VariableBlockType = "variable"

Variables

View Source
var ProviderToTagAttribute = map[string]string{"aws": "tags", "azurerm": "tags", "google": "labels", "oci": "freeform_tags", "alicloud": "tags"}
View Source
var RegistryModuleRegex = regexp.MustCompile("^((?P<MODULE_HOSTNAME>[^/]+)/)?(?P<MODULE_NAMESPACE>[^/]+)/(?P<MODULE_NAME>[^/]+)/(?P<PROVIDER>[a-z]+)")
View Source
var SkippedProviders = []string{"null", "random", "tls", "local", "sops"}
View Source
var TfTaggableResourceTypes = []string{}/* 675 elements not displayed */

Functions

func ExtractProviderFromModuleSrc

func ExtractProviderFromModuleSrc(source string) string

func ExtractSubdirFromRemoteModuleSrc

func ExtractSubdirFromRemoteModuleSrc(raw string) string

func InsertToken

func InsertToken(tokens hclwrite.Tokens, index int, value *hclwrite.Token) hclwrite.Tokens

InsertToken Insert inserts a value at a specific index in a slice

func InsertTokens

func InsertTokens(tokens hclwrite.Tokens, values []*hclwrite.Token) hclwrite.Tokens

InsertTokens Inserts a list of tags at end of list

Types

type TerraformBlock

type TerraformBlock struct {
	structure.Block
	HclSyntaxBlock *hclsyntax.Block
}

func (*TerraformBlock) AddHclSyntaxBlock

func (b *TerraformBlock) AddHclSyntaxBlock(hclSyntaxBlock *hclsyntax.Block)

func (*TerraformBlock) GetLines

func (b *TerraformBlock) GetLines(getContentLinesOnly ...bool) structure.Lines

func (*TerraformBlock) GetResourceID

func (b *TerraformBlock) GetResourceID() string

func (*TerraformBlock) GetResourceName

func (b *TerraformBlock) GetResourceName() string

func (*TerraformBlock) GetSeparator

func (b *TerraformBlock) GetSeparator() string

func (*TerraformBlock) GetTagsLines

func (b *TerraformBlock) GetTagsLines() structure.Lines

func (*TerraformBlock) IsGCPBlock

func (b *TerraformBlock) IsGCPBlock() bool

type TerraformModule

type TerraformModule struct {
	ProvidersInstallDir string
	// contains filtered or unexported fields
}

func NewTerraformModule

func NewTerraformModule(rootDir string) *TerraformModule

func (*TerraformModule) GetModulesDirectories

func (t *TerraformModule) GetModulesDirectories() []string

func (*TerraformModule) InitProvider

func (t *TerraformModule) InitProvider()

type TerraformParser

type TerraformParser struct {
	// contains filtered or unexported fields
}

func (*TerraformParser) Close

func (p *TerraformParser) Close()

func (*TerraformParser) GetSkippedDirs

func (p *TerraformParser) GetSkippedDirs() []string

func (*TerraformParser) GetSourceFiles

func (p *TerraformParser) GetSourceFiles(directory string) ([]string, error)

func (*TerraformParser) GetSupportedFileExtensions

func (p *TerraformParser) GetSupportedFileExtensions() []string

func (*TerraformParser) Init

func (p *TerraformParser) Init(rootDir string, args map[string]string)

func (*TerraformParser) Name

func (p *TerraformParser) Name() string

func (*TerraformParser) ParseFile

func (p *TerraformParser) ParseFile(filePath string) ([]structure.IBlock, error)

func (*TerraformParser) ValidFile

func (p *TerraformParser) ValidFile(_ string) bool

func (*TerraformParser) WriteFile

func (p *TerraformParser) WriteFile(readFilePath string, blocks []structure.IBlock, writeFilePath string) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL