@@ -10,6 +10,7 @@ import (
1010 "os/exec"
1111 "path/filepath"
1212 "runtime"
13+ "sort"
1314 "strings"
1415
1516 "github.com/hashicorp/cli"
@@ -443,7 +444,16 @@ func (g *generator) generateMissingProviderTemplate() error {
443444
444445func (g * generator ) generateMissingTemplates (providerSchema * tfjson.ProviderSchema ) error {
445446 g .infof ("generating missing resource content" )
446- for name , schema := range providerSchema .ResourceSchemas {
447+
448+ resourceKeys := make ([]string , 0 , len (providerSchema .ResourceSchemas ))
449+ for key := range providerSchema .ResourceSchemas {
450+ resourceKeys = append (resourceKeys , key )
451+ }
452+ sort .Strings (resourceKeys )
453+
454+ for _ , name := range resourceKeys {
455+ schema := providerSchema .ResourceSchemas [name ]
456+
447457 if g .ignoreDeprecated && schema .Block .Deprecated {
448458 continue
449459 }
@@ -455,7 +465,16 @@ func (g *generator) generateMissingTemplates(providerSchema *tfjson.ProviderSche
455465 }
456466
457467 g .infof ("generating missing data source content" )
458- for name , schema := range providerSchema .DataSourceSchemas {
468+
469+ dataSourceKeys := make ([]string , 0 , len (providerSchema .DataSourceSchemas ))
470+ for key := range providerSchema .DataSourceSchemas {
471+ dataSourceKeys = append (dataSourceKeys , key )
472+ }
473+ sort .Strings (dataSourceKeys )
474+
475+ for _ , name := range dataSourceKeys {
476+ schema := providerSchema .DataSourceSchemas [name ]
477+
459478 if g .ignoreDeprecated && schema .Block .Deprecated {
460479 continue
461480 }
@@ -467,7 +486,16 @@ func (g *generator) generateMissingTemplates(providerSchema *tfjson.ProviderSche
467486 }
468487
469488 g .infof ("generating missing function content" )
470- for name , signature := range providerSchema .Functions {
489+
490+ functionKeys := make ([]string , 0 , len (providerSchema .Functions ))
491+ for key := range providerSchema .Functions {
492+ functionKeys = append (functionKeys , key )
493+ }
494+ sort .Strings (functionKeys )
495+
496+ for _ , name := range functionKeys {
497+ signature := providerSchema .Functions [name ]
498+
471499 if g .ignoreDeprecated && signature .DeprecationMessage != "" {
472500 continue
473501 }
@@ -479,7 +507,16 @@ func (g *generator) generateMissingTemplates(providerSchema *tfjson.ProviderSche
479507 }
480508
481509 g .infof ("generating missing ephemeral resource content" )
482- for name , schema := range providerSchema .EphemeralResourceSchemas {
510+
511+ ephemeralKeys := make ([]string , 0 , len (providerSchema .EphemeralResourceSchemas ))
512+ for key := range providerSchema .EphemeralResourceSchemas {
513+ ephemeralKeys = append (ephemeralKeys , key )
514+ }
515+ sort .Strings (ephemeralKeys )
516+
517+ for _ , name := range ephemeralKeys {
518+ schema := providerSchema .EphemeralResourceSchemas [name ]
519+
483520 if g .ignoreDeprecated && schema .Block .Deprecated {
484521 continue
485522 }
0 commit comments