in flag.go [119:271]
func (flag FlagSet) DescribeCLI(mode Mode) string {
args := []string{string(mode)}
// The following flags are skipped eiter not interesting, or might contain sensitive info:
// - flagOutputDir
// - flagDevProvider
// - flagBackendConfig
// - all hflags
if flag.flagSubscriptionId != "" {
args = append(args, "--subscription=*")
}
if flag.flagOverwrite {
args = append(args, "--overwrite=true")
}
if flag.flagAppend {
args = append(args, "--append=true")
}
if flag.flagProviderVersion != "" {
args = append(args, fmt.Sprintf(`-provider-version=%s`, flag.flagProviderVersion))
}
if flag.flagProviderName != "" {
args = append(args, fmt.Sprintf(`-provider-name=%s`, flag.flagProviderName))
}
if flag.flagBackendType != "" {
args = append(args, "--backend-type="+flag.flagBackendType)
}
if flag.flagFullConfig {
args = append(args, "--full-properties=true")
}
if flag.flagMaskSensitive {
args = append(args, "--mask-sensitive=true")
}
if flag.flagParallelism != 0 {
args = append(args, fmt.Sprintf("--parallelism=%d", flag.flagParallelism))
}
if flag.flagNonInteractive {
args = append(args, "--non-interactive=true")
}
if flag.flagPlainUI {
args = append(args, "--plain-ui=true")
}
if flag.flagContinue {
args = append(args, "--continue=true")
}
if flag.flagGenerateMappingFile {
args = append(args, "--generate-mapping-file=true")
}
if flag.flagHCLOnly {
args = append(args, "--hcl-only=true")
}
if flag.flagModulePath != "" {
args = append(args, "--module-path="+flag.flagModulePath)
}
if !flag.flagGenerateImportBlock {
args = append(args, "--generate-import-block=true")
}
if flag.flagEnv != "" {
args = append(args, "--env="+flag.flagEnv)
}
if flag.flagTenantId != "" {
args = append(args, "--tenant-id=*")
}
if v := flag.flagAuxiliaryTenantIds.Value(); len(v) != 0 {
args = append(args, fmt.Sprintf("--tenant-id=[%d]", len(v)))
}
if flag.flagClientId != "" {
args = append(args, "--client-id=*")
}
if flag.flagClientIdFilePath != "" {
args = append(args, "--client-id-file-path="+flag.flagClientIdFilePath)
}
if flag.flagClientCertificate != "" {
args = append(args, "--client-certificate=*")
}
if flag.flagClientCertificatePath != "" {
args = append(args, "--client-certificate-path="+flag.flagClientCertificatePath)
}
if flag.flagClientCertificatePassword != "" {
args = append(args, "--client-certificate-password=*")
}
if flag.flagClientSecret != "" {
args = append(args, "--client-secret=***")
}
if flag.flagClientSecretFilePath != "" {
args = append(args, "--client-secret-file-path="+flag.flagClientSecretFilePath)
}
if flag.flagOIDCRequestToken != "" {
args = append(args, "--oidc-request-token=*")
}
if flag.flagOIDCRequestURL != "" {
args = append(args, "--oidc-request-url="+flag.flagOIDCRequestURL)
}
if flag.flagOIDCTokenFilePath != "" {
args = append(args, "--oidc-token-file-path="+flag.flagOIDCTokenFilePath)
}
if flag.flagOIDCToken != "" {
args = append(args, "--oidc-token=*")
}
if flag.flagUseManagedIdentityCred {
args = append(args, "--use-managed-identity-cred=true")
}
if flag.flagUseAzureCLICred {
args = append(args, "--use-azure-cli-cred=true")
}
if flag.flagUseOIDCCred {
args = append(args, "--use-oidc-cred=true")
}
if flag.hflagTFClientPluginPath != "" {
args = append(args, "--tfclient-plugin-path="+flag.hflagTFClientPluginPath)
}
switch mode {
case ModeResource:
if flag.flagResName != "" {
args = append(args, "--name="+flag.flagResName)
}
if flag.flagResType != "" {
args = append(args, "--type="+flag.flagResType)
}
if flag.flagPattern != "" {
args = append(args, "--name-pattern="+flag.flagPattern)
}
case ModeResourceGroup:
if flag.flagPattern != "" {
args = append(args, "--name-pattern="+flag.flagPattern)
}
if flag.flagIncludeRoleAssignment {
args = append(args, "--include-role-assignment=true")
}
case ModeQuery:
if flag.flagPattern != "" {
args = append(args, "--name-pattern="+flag.flagPattern)
}
if flag.flagRecursive {
args = append(args, "--recursive=true")
}
if flag.flagIncludeRoleAssignment {
args = append(args, "--include-role-assignment=true")
}
if flag.flagIncludeResourceGroup {
args = append(args, "--include-resource-group=true")
}
if flag.flagARGTable != "" {
args = append(args, "--arg-table="+flag.flagARGTable)
}
if flag.flagARGAuthorizationScopeFilter != "" {
args = append(args, "--arg-authorization-scope-filter="+flag.flagARGAuthorizationScopeFilter)
}
}
return "aztfexport " + strings.Join(args, " ")
}