Skip to content

Commit

Permalink
feat: adding new export format
Browse files Browse the repository at this point in the history
  • Loading branch information
Michel Wilhelm committed Jan 13, 2023
1 parent 61318f2 commit 799a839
Showing 1 changed file with 16 additions and 4 deletions.
20 changes: 16 additions & 4 deletions cli/packages/cmd/export.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,11 @@ import (
)

const (
FormatDotenv string = "dotenv"
FormatJson string = "json"
FormatCSV string = "csv"
FormatYaml string = "yaml"
FormatDotenv string = "dotenv"
FormatJson string = "json"
FormatCSV string = "csv"
FormatYaml string = "yaml"
FormatDotEnvExport string = "dotenv-export"

This comment has been minimized.

Copy link
@Salman2301

Salman2301 Oct 11, 2023

Contributor

FormatDotEnvExport shouldn't be FormatDotenvExport to maintain the same convention FormatDotenv

This comment has been minimized.

Copy link
@imakecodes

imakecodes Oct 11, 2023

Yes, make sense, I can create a following PR to adjust this

)

// exportCmd represents the export command
Expand Down Expand Up @@ -85,6 +86,8 @@ func formatEnvs(envs []models.SingleEnvironmentVariable, format string) (string,
switch strings.ToLower(format) {
case FormatDotenv:
return formatAsDotEnv(envs), nil
case FormatDotEnvExport:
return formatAsDotEnvExport(envs), nil
case FormatJson:
return formatAsJson(envs), nil
case FormatCSV:
Expand Down Expand Up @@ -117,6 +120,15 @@ func formatAsDotEnv(envs []models.SingleEnvironmentVariable) string {
return dotenv
}

// Format environment variables as a dotenv file with export at the beginning
func formatAsDotEnvExport(envs []models.SingleEnvironmentVariable) string {
var dotenv string
for _, env := range envs {
dotenv += fmt.Sprintf("export %s='%s'\n", env.Key, env.Value)
}
return dotenv
}

func formatAsYaml(envs []models.SingleEnvironmentVariable) string {
var dotenv string
for _, env := range envs {
Expand Down

0 comments on commit 799a839

Please sign in to comment.