1
- package cli
1
+ package codersdk
2
2
3
3
import (
4
4
"encoding/json"
@@ -13,8 +13,6 @@ import (
13
13
14
14
"github.com/hashicorp/hcl/v2/hclparse"
15
15
"github.com/zclconf/go-cty/cty"
16
-
17
- "github.com/coder/coder/v2/codersdk"
18
16
)
19
17
20
18
/**
@@ -54,7 +52,7 @@ func DiscoverVarsFiles(workDir string) ([]string, error) {
54
52
return found ,nil
55
53
}
56
54
57
- func ParseUserVariableValues (varsFiles []string ,variablesFile string ,commandLineVariables []string ) ([]codersdk. VariableValue ,error ) {
55
+ func ParseUserVariableValues (varsFiles []string ,variablesFile string ,commandLineVariables []string ) ([]VariableValue ,error ) {
58
56
fromVars ,err := parseVariableValuesFromVarsFiles (varsFiles )
59
57
if err != nil {
60
58
return nil ,err
@@ -73,15 +71,15 @@ func ParseUserVariableValues(varsFiles []string, variablesFile string, commandLi
73
71
return combineVariableValues (fromVars ,fromFile ,fromCommandLine ),nil
74
72
}
75
73
76
- func parseVariableValuesFromVarsFiles (varsFiles []string ) ([]codersdk. VariableValue ,error ) {
77
- var parsed []codersdk. VariableValue
74
+ func parseVariableValuesFromVarsFiles (varsFiles []string ) ([]VariableValue ,error ) {
75
+ var parsed []VariableValue
78
76
for _ ,varsFile := range varsFiles {
79
77
content ,err := os .ReadFile (varsFile )
80
78
if err != nil {
81
79
return nil ,err
82
80
}
83
81
84
- var t []codersdk. VariableValue
82
+ var t []VariableValue
85
83
ext := filepath .Ext (varsFile )
86
84
switch ext {
87
85
case ".tfvars" :
@@ -103,7 +101,7 @@ func parseVariableValuesFromVarsFiles(varsFiles []string) ([]codersdk.VariableVa
103
101
return parsed ,nil
104
102
}
105
103
106
- func parseVariableValuesFromHCL (content []byte ) ([]codersdk. VariableValue ,error ) {
104
+ func parseVariableValuesFromHCL (content []byte ) ([]VariableValue ,error ) {
107
105
parser := hclparse .NewParser ()
108
106
hclFile ,diags := parser .ParseHCL (content ,"file.hcl" )
109
107
if diags .HasErrors () {
@@ -159,7 +157,7 @@ func parseVariableValuesFromHCL(content []byte) ([]codersdk.VariableValue, error
159
157
// parseVariableValuesFromJSON converts the .tfvars.json content into template variables.
160
158
// The function visits only root-level properties as template variables do not support nested
161
159
// structures.
162
- func parseVariableValuesFromJSON (content []byte ) ([]codersdk. VariableValue ,error ) {
160
+ func parseVariableValuesFromJSON (content []byte ) ([]VariableValue ,error ) {
163
161
var data map [string ]interface {}
164
162
err := json .Unmarshal (content ,& data )
165
163
if err != nil {
@@ -183,10 +181,10 @@ func parseVariableValuesFromJSON(content []byte) ([]codersdk.VariableValue, erro
183
181
return convertMapIntoVariableValues (stringData ),nil
184
182
}
185
183
186
- func convertMapIntoVariableValues (m map [string ]string ) []codersdk. VariableValue {
187
- var parsed []codersdk. VariableValue
184
+ func convertMapIntoVariableValues (m map [string ]string ) []VariableValue {
185
+ var parsed []VariableValue
188
186
for key ,value := range m {
189
- parsed = append (parsed ,codersdk. VariableValue {
187
+ parsed = append (parsed ,VariableValue {
190
188
Name :key ,
191
189
Value :value ,
192
190
})
@@ -197,8 +195,8 @@ func convertMapIntoVariableValues(m map[string]string) []codersdk.VariableValue
197
195
return parsed
198
196
}
199
197
200
- func parseVariableValuesFromFile (variablesFile string ) ([]codersdk. VariableValue ,error ) {
201
- var values []codersdk. VariableValue
198
+ func parseVariableValuesFromFile (variablesFile string ) ([]VariableValue ,error ) {
199
+ var values []VariableValue
202
200
if variablesFile == "" {
203
201
return values ,nil
204
202
}
@@ -209,7 +207,7 @@ func parseVariableValuesFromFile(variablesFile string) ([]codersdk.VariableValue
209
207
}
210
208
211
209
for name ,value := range variablesMap {
212
- values = append (values ,codersdk. VariableValue {
210
+ values = append (values ,VariableValue {
213
211
Name :name ,
214
212
Value :value ,
215
213
})
@@ -237,23 +235,23 @@ func createVariablesMapFromFile(variablesFile string) (map[string]string, error)
237
235
return variablesMap ,nil
238
236
}
239
237
240
- func parseVariableValuesFromCommandLine (variables []string ) ([]codersdk. VariableValue ,error ) {
241
- var values []codersdk. VariableValue
238
+ func parseVariableValuesFromCommandLine (variables []string ) ([]VariableValue ,error ) {
239
+ var values []VariableValue
242
240
for _ ,keyValue := range variables {
243
241
split := strings .SplitN (keyValue ,"=" ,2 )
244
242
if len (split )< 2 {
245
243
return nil ,xerrors .Errorf ("format key=value expected, but got %s" ,keyValue )
246
244
}
247
245
248
- values = append (values ,codersdk. VariableValue {
246
+ values = append (values ,VariableValue {
249
247
Name :split [0 ],
250
248
Value :split [1 ],
251
249
})
252
250
}
253
251
return values ,nil
254
252
}
255
253
256
- func combineVariableValues (valuesSets ... []codersdk. VariableValue ) []codersdk. VariableValue {
254
+ func combineVariableValues (valuesSets ... []VariableValue ) []VariableValue {
257
255
combinedValues := make (map [string ]string )
258
256
259
257
for _ ,values := range valuesSets {
@@ -262,9 +260,9 @@ func combineVariableValues(valuesSets ...[]codersdk.VariableValue) []codersdk.Va
262
260
}
263
261
}
264
262
265
- var result []codersdk. VariableValue
263
+ var result []VariableValue
266
264
for name ,value := range combinedValues {
267
- result = append (result ,codersdk. VariableValue {Name :name ,Value :value })
265
+ result = append (result ,VariableValue {Name :name ,Value :value })
268
266
}
269
267
270
268
sort .Slice (result ,func (i ,j int )bool {