feat: display terraform provider version in output

main
sundowndev 2021-06-17 14:15:45 +02:00
parent 0eddd54b30
commit 92691868bb
2 changed files with 7 additions and 2 deletions

View File

@ -9,6 +9,7 @@ import (
"syscall"
"github.com/cloudskiff/driftctl/pkg/telemetry"
"github.com/fatih/color"
"github.com/mitchellh/go-homedir"
"github.com/pkg/errors"
"github.com/sirupsen/logrus"
@ -228,6 +229,8 @@ func scanRun(opts *pkg.ScanOptions) error {
telemetry.SendTelemetry(analysis)
}
globaloutput.Printf(color.WhiteString("Provider version used to scan: %s. Use --tf-provider-version to use another version.\n"), resourceSchemaRepository.ProviderVersion.String())
if !analysis.IsSync() {
globaloutput.Printf("\nHint: use gen-driftignore command to generate a .driftignore file based on your drifts\n")

View File

@ -46,7 +46,8 @@ type SchemaRepositoryInterface interface {
}
type SchemaRepository struct {
schemas map[string]*Schema
schemas map[string]*Schema
ProviderVersion *version.Version
}
func NewSchemaRepository() *SchemaRepository {
@ -81,6 +82,7 @@ func (r *SchemaRepository) Init(v string, schema map[string]providers.Schema) er
if err != nil {
return err
}
r.ProviderVersion = providerVersion
for typ, sch := range schema {
attributeMetas := map[string]AttributeSchema{}
for s, attribute := range sch.Block.Attributes {
@ -92,7 +94,7 @@ func (r *SchemaRepository) Init(v string, schema map[string]providers.Schema) er
r.fetchNestedBlocks("", attributeMetas, sch.Block.BlockTypes)
r.schemas[typ] = &Schema{
ProviderVersion: providerVersion,
ProviderVersion: r.ProviderVersion,
SchemaVersion: sch.Version,
Attributes: attributeMetas,
}