github.com/khulnasoft-lab/defsec@v1.0.5-0.20230827010352-5e9f46893d95/internal/adapters/terraform/nifcloud/rdb/db_instance.go (about) 1 package rdb 2 3 import ( 4 "github.com/khulnasoft-lab/defsec/pkg/providers/nifcloud/rdb" 5 "github.com/khulnasoft-lab/defsec/pkg/terraform" 6 ) 7 8 func adaptDBInstances(modules terraform.Modules) []rdb.DBInstance { 9 var dbInstances []rdb.DBInstance 10 11 for _, resource := range modules.GetResourcesByType("nifcloud_db_instance") { 12 dbInstances = append(dbInstances, adaptDBInstance(resource)) 13 } 14 return dbInstances 15 } 16 17 func adaptDBInstance(resource *terraform.Block) rdb.DBInstance { 18 return rdb.DBInstance{ 19 Metadata: resource.GetMetadata(), 20 BackupRetentionPeriodDays: resource.GetAttribute("backup_retention_period").AsIntValueOrDefault(0, resource), 21 Engine: resource.GetAttribute("engine").AsStringValueOrDefault("", resource), 22 EngineVersion: resource.GetAttribute("engine_version").AsStringValueOrDefault("", resource), 23 NetworkID: resource.GetAttribute("network_id").AsStringValueOrDefault("net-COMMON_PRIVATE", resource), 24 PublicAccess: resource.GetAttribute("publicly_accessible").AsBoolValueOrDefault(true, resource), 25 } 26 }