@@ -261,14 +261,8 @@ var sampleConfig = types.Config{
261
261
},
262
262
}
263
263
264
- func TestParseYAML (t * testing.T ) {
265
- dict , err := ParseYAML ([]byte (sampleYAML ))
266
- assert .NilError (t , err )
267
- assert .Check (t , is .DeepEqual (sampleDict , dict ))
268
- }
269
-
270
264
func TestLoad (t * testing.T ) {
271
- actual , err := Load ( buildConfigDetails (sampleYAML , nil ), func (options * Options ) {
265
+ actual , err := LoadWithContext ( context . TODO (), buildConfigDetails (sampleYAML , nil ), func (options * Options ) {
272
266
options .SkipNormalization = true
273
267
options .SkipConsistencyCheck = true
274
268
})
@@ -288,7 +282,7 @@ func TestLoadFromFile(t *testing.T) {
288
282
if err := os .WriteFile (tmpPath , []byte (sampleYAML ), 0o444 ); err != nil {
289
283
t .Fatalf ("failed to write temporary file: %s" , err )
290
284
}
291
- actual , err := Load ( types.ConfigDetails {
285
+ actual , err := LoadWithContext ( context . TODO (), types.ConfigDetails {
292
286
WorkingDir : workingDir ,
293
287
ConfigFiles : []types.ConfigFile {{
294
288
Filename : tmpPath ,
@@ -431,7 +425,7 @@ services:
431
425
`
432
426
assert .NilError (t , os .WriteFile (filepath .Join (tmpdir , "compose.yaml" ), []byte (rootYAML ), 0o600 ))
433
427
434
- actual , err := Load ( types.ConfigDetails {
428
+ actual , err := LoadWithContext ( context . TODO (), types.ConfigDetails {
435
429
WorkingDir : tmpdir ,
436
430
ConfigFiles : []types.ConfigFile {{
437
431
Filename : filepath .Join (tmpdir , "compose.yaml" ),
@@ -813,7 +807,7 @@ networks:
813
807
"thesize" : "2gb" ,
814
808
}
815
809
816
- config , err := Load ( buildConfigDetails (dict , env ), func (options * Options ) {
810
+ config , err := LoadWithContext ( context . TODO (), buildConfigDetails (dict , env ), func (options * Options ) {
817
811
options .SkipNormalization = true
818
812
options .SkipConsistencyCheck = true
819
813
})
@@ -982,7 +976,7 @@ services:
982
976
`
983
977
configDetails := buildConfigDetails (dict , nil )
984
978
985
- _ , err := Load ( configDetails )
979
+ _ , err := LoadWithContext ( context . TODO (), configDetails )
986
980
assert .NilError (t , err )
987
981
}
988
982
@@ -1007,7 +1001,7 @@ services:
1007
1001
configDetails := buildConfigDetails (dict , nil )
1008
1002
1009
1003
// Default behavior keeps the `env_file` entries
1010
- configWithEnvFiles , err := Load ( configDetails , func (options * Options ) {
1004
+ configWithEnvFiles , err := LoadWithContext ( context . TODO (), configDetails , func (options * Options ) {
1011
1005
options .SkipNormalization = true
1012
1006
options .ResolvePaths = false
1013
1007
})
@@ -1024,7 +1018,7 @@ services:
1024
1018
assert .DeepEqual (t , configWithEnvFiles .Services ["web" ].Environment , expectedEnvironmentMap )
1025
1019
1026
1020
// Custom behavior removes the `env_file` entries
1027
- configWithoutEnvFiles , err := Load ( configDetails , WithDiscardEnvFiles )
1021
+ configWithoutEnvFiles , err := LoadWithContext ( context . TODO (), configDetails , WithDiscardEnvFiles )
1028
1022
assert .NilError (t , err )
1029
1023
assert .Equal (t , len (configWithoutEnvFiles .Services ["web" ].EnvFiles ), 0 )
1030
1024
assert .DeepEqual (t , configWithoutEnvFiles .Services ["web" ].Environment , expectedEnvironmentMap )
@@ -1034,7 +1028,7 @@ func TestDecodeErrors(t *testing.T) {
1034
1028
dict := "name: test\n services:\n web:\n image: nginx\n \t build: ."
1035
1029
1036
1030
configDetails := buildConfigDetails (dict , nil )
1037
- _ , err := Load ( configDetails )
1031
+ _ , err := LoadWithContext ( context . TODO (), configDetails )
1038
1032
assert .Error (t , err , "yaml: line 4: found a tab character that violates indentation" )
1039
1033
}
1040
1034
@@ -1054,7 +1048,7 @@ services:
1054
1048
shm_size: 2gb
1055
1049
`
1056
1050
configDetails := buildConfigDetails (dict , nil )
1057
- actual , err := Load ( configDetails )
1051
+ actual , err := LoadWithContext ( context . TODO (), configDetails )
1058
1052
assert .NilError (t , err )
1059
1053
1060
1054
wd , _ := os .Getwd ()
@@ -1084,7 +1078,7 @@ services:
1084
1078
`
1085
1079
configDetails := buildConfigDetails (dict , nil )
1086
1080
1087
- _ , err := Load ( configDetails )
1081
+ _ , err := LoadWithContext ( context . TODO (), configDetails )
1088
1082
assert .NilError (t , err )
1089
1083
}
1090
1084
@@ -2145,7 +2139,7 @@ func TestLoadWithExtends(t *testing.T) {
2145
2139
Environment : map [string ]string {},
2146
2140
}
2147
2141
2148
- actual , err := Load ( configDetails )
2142
+ actual , err := LoadWithContext ( context . TODO (), configDetails )
2149
2143
assert .NilError (t , err )
2150
2144
2151
2145
extendsDir := filepath .Join ("testdata" , "subdir" )
@@ -2189,7 +2183,7 @@ func TestLoadWithExtendsWithContextUrl(t *testing.T) {
2189
2183
Environment : map [string ]string {},
2190
2184
}
2191
2185
2192
- actual , err := Load ( configDetails )
2186
+ actual , err := LoadWithContext ( context . TODO (), configDetails )
2193
2187
assert .NilError (t , err )
2194
2188
2195
2189
expServices := types.Services {
@@ -2568,7 +2562,7 @@ services:
2568
2562
`
2569
2563
configDetails := buildConfigDetails (yaml , map [string ]string {})
2570
2564
2571
- actual , err := Load ( configDetails )
2565
+ actual , err := LoadWithContext ( context . TODO (), configDetails )
2572
2566
assert .NilError (t , err )
2573
2567
svc , err := actual .GetService ("web" )
2574
2568
assert .NilError (t , err )
@@ -2598,7 +2592,7 @@ services:
2598
2592
`
2599
2593
configDetails := buildConfigDetailsMultipleFiles (map [string ]string {}, yaml1 , yaml2 , yaml3 )
2600
2594
2601
- actual , err := Load ( configDetails )
2595
+ actual , err := LoadWithContext ( context . TODO (), configDetails )
2602
2596
assert .NilError (t , err )
2603
2597
svc , err := actual .GetService ("web" )
2604
2598
assert .NilError (t , err )
@@ -2623,7 +2617,7 @@ services:
2623
2617
`
2624
2618
configDetails := buildConfigDetails (yaml , map [string ]string {})
2625
2619
2626
- actual , err := Load ( configDetails , withProjectName ("interpolated" , true ))
2620
+ actual , err := LoadWithContext ( context . TODO (), configDetails , withProjectName ("interpolated" , true ))
2627
2621
assert .NilError (t , err )
2628
2622
svc , err := actual .GetService ("web" )
2629
2623
assert .NilError (t , err )
@@ -2649,7 +2643,7 @@ volumes:
2649
2643
`
2650
2644
configDetails := buildConfigDetails (dict , nil )
2651
2645
2652
- project , err := Load ( configDetails )
2646
+ project , err := LoadWithContext ( context . TODO (), configDetails )
2653
2647
assert .NilError (t , err )
2654
2648
path := project .Volumes ["data" ].DriverOpts ["device" ]
2655
2649
assert .Check (t , filepath .IsAbs (path ))
@@ -2665,7 +2659,7 @@ services:
2665
2659
`
2666
2660
configDetails := buildConfigDetails (dict , nil )
2667
2661
2668
- project , err := Load ( configDetails )
2662
+ project , err := LoadWithContext ( context . TODO (), configDetails )
2669
2663
assert .NilError (t , err )
2670
2664
assert .Equal (t , project .Services ["extension" ].Name , "extension" )
2671
2665
assert .Equal (t , project .Services ["extension" ].Extensions ["x-foo" ], "bar" )
@@ -2782,7 +2776,7 @@ configs:
2782
2776
func TestLoadWithInclude (t * testing.T ) {
2783
2777
workingDir , err := os .Getwd ()
2784
2778
assert .NilError (t , err )
2785
- p , err := Load ( buildConfigDetails (`
2779
+ p , err := LoadWithContext ( context . TODO (), buildConfigDetails (`
2786
2780
name: 'test-include'
2787
2781
2788
2782
include:
@@ -2839,7 +2833,7 @@ services:
2839
2833
})
2840
2834
*/
2841
2835
2842
- p , err = Load ( buildConfigDetails (`
2836
+ p , err = LoadWithContext ( context . TODO (), buildConfigDetails (`
2843
2837
name: 'test-include'
2844
2838
2845
2839
include:
@@ -2864,7 +2858,7 @@ services:
2864
2858
func TestLoadWithIncludeCycle (t * testing.T ) {
2865
2859
workingDir , err := os .Getwd ()
2866
2860
assert .NilError (t , err )
2867
- _ , err = Load ( types.ConfigDetails {
2861
+ _ , err = LoadWithContext ( context . TODO (), types.ConfigDetails {
2868
2862
WorkingDir : filepath .Join (workingDir , "testdata" ),
2869
2863
ConfigFiles : []types.ConfigFile {
2870
2864
{
@@ -2876,7 +2870,7 @@ func TestLoadWithIncludeCycle(t *testing.T) {
2876
2870
}
2877
2871
2878
2872
func TestLoadWithIncludeOverride (t * testing.T ) {
2879
- p , err := Load ( buildConfigDetailsMultipleFiles (nil , `
2873
+ p , err := LoadWithContext ( context . TODO (), buildConfigDetailsMultipleFiles (nil , `
2880
2874
name: 'test-include-override'
2881
2875
2882
2876
include:
@@ -3097,7 +3091,7 @@ services:
3097
3091
}
3098
3092
3099
3093
func TestLoadDevelopConfig (t * testing.T ) {
3100
- project , err := Load ( buildConfigDetails (`
3094
+ project , err := LoadWithContext ( context . TODO (), buildConfigDetails (`
3101
3095
name: load-develop
3102
3096
services:
3103
3097
frontend:
@@ -3225,7 +3219,7 @@ services:
3225
3219
if err := os .WriteFile (tmpPath , []byte (yaml ), 0o644 ); err != nil {
3226
3220
t .Fatalf ("failed to write temporary file: %s" , err )
3227
3221
}
3228
- _ , err := Load ( types.ConfigDetails {
3222
+ _ , err := LoadWithContext ( context . TODO (), types.ConfigDetails {
3229
3223
ConfigFiles : []types.ConfigFile {
3230
3224
{
3231
3225
Filename : tmpPath ,
@@ -3246,7 +3240,7 @@ services:
3246
3240
if err := os .WriteFile (tmpPath , []byte (yaml ), 0o644 ); err != nil {
3247
3241
t .Fatalf ("failed to write temporary file: %s" , err )
3248
3242
}
3249
- _ , err := Load ( types.ConfigDetails {
3243
+ _ , err := LoadWithContext ( context . TODO (), types.ConfigDetails {
3250
3244
ConfigFiles : []types.ConfigFile {
3251
3245
{
3252
3246
Filename : tmpPath ,
0 commit comments