diff --git a/plugins/render/api_key.go b/plugins/render/api_key.go index c63f895e3..d4269e3d5 100644 --- a/plugins/render/api_key.go +++ b/plugins/render/api_key.go @@ -9,6 +9,7 @@ import ( "github.com/1Password/shell-plugins/sdk/schema" "github.com/1Password/shell-plugins/sdk/schema/credname" "github.com/1Password/shell-plugins/sdk/schema/fieldname" + "gopkg.in/yaml.v2" ) type Config struct { @@ -39,15 +40,24 @@ func APIKey() schema.CredentialType { }, }, }, - DefaultProvisioner: provision.EnvVars(defaultEnvVarMapping), + DefaultProvisioner: provision.TempFile(renderConfig, provision.AtFixedPath(ConfigPath())), Importer: importer.TryAll( - importer.TryEnvVarPair(defaultEnvVarMapping), TryRenderConfigFile(), ), } } -var defaultEnvVarMapping = map[string]sdk.FieldName{ +// var defaultEnvVarMapping = map[string]sdk.FieldName{ +// } +func renderConfig(in sdk.ProvisionInput) ([]byte, error) { + config := Config{ + + } + contents, err := yaml.Marshal(&config) + if err != nil { + return nil, err + } + return []byte(contents), nil } func TryRenderConfigFile() sdk.Importer { diff --git a/plugins/render/render.go b/plugins/render/render.go index 5f81e7387..a52daabf1 100644 --- a/plugins/render/render.go +++ b/plugins/render/render.go @@ -1,11 +1,19 @@ package render import ( + "os" "github.com/1Password/shell-plugins/sdk" "github.com/1Password/shell-plugins/sdk/needsauth" "github.com/1Password/shell-plugins/sdk/schema" "github.com/1Password/shell-plugins/sdk/schema/credname" ) +func ConfigPath() string { + configDir, err := os.UserConfigDir() + if err != nil { + return "~/.render/config.yaml" + } + return configDir + "/render/config.yaml" +} func RenderCLI() schema.Executable { return schema.Executable{