MCPcopy Create free account
hub / github.com/Scalingo/cli / Add

Function Add

env/edit.go:25–60  ·  view source on GitHub ↗
(ctx context.Context, app string, params []string, filePath string)

Source from the content-addressed store, hash-verified

23)
24
25func Add(ctx context.Context, app string, params []string, filePath string) error {
26 variablesFromFile, err := readFromFile(ctx, filePath)
27 if err != nil {
28 return errors.Wrapf(ctx, err, "read .env file")
29 }
30
31 variables, err := readFromCmdLine(ctx, variablesFromFile, params)
32 if err != nil {
33 return errors.Wrapf(ctx, err, "read variables from command line")
34 }
35
36 scalingoVariables := scalingo.Variables{}
37 for name, value := range variables {
38 scalingoVariables = append(scalingoVariables, &scalingo.Variable{
39 Name: name,
40 Value: value,
41 })
42 }
43
44 c, err := config.ScalingoClient(ctx)
45 if err != nil {
46 return errors.Wrapf(ctx, err, "get Scalingo client")
47 }
48 _, err = c.VariableMultipleSet(ctx, app, scalingoVariables)
49 if err != nil {
50 return errors.Wrapf(ctx, err, "set multiple environment variables")
51 }
52
53 for _, variable := range scalingoVariables {
54 fmt.Printf("%s has been set to '%s'.\n", variable.Name, variable.Value)
55 }
56 fmt.Println("\nRestart your containers to apply these environment changes on your application:")
57 fmt.Printf("scalingo --app %s restart\n", app)
58
59 return nil
60}
61
62func Delete(ctx context.Context, app string, varNames []string) error {
63 c, err := config.ScalingoClient(ctx)

Callers 1

env.goFile · 0.92

Calls 3

ScalingoClientFunction · 0.92
readFromFileFunction · 0.85
readFromCmdLineFunction · 0.85

Tested by

no test coverage detected