Skip to content

Commit c0139ec

Browse files
committed
Add volume parameters to sanity tests
Signed-off-by: Jose A. Rivera <jarrpa@redhat.com>
1 parent 3bc4135 commit c0139ec

File tree

3 files changed

+37
-5
lines changed

3 files changed

+37
-5
lines changed

cmd/csi-sanity/sanity_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ func init() {
4141
flag.StringVar(&config.StagingPath, prefix+"stagingdir", os.TempDir()+"/csi", "Mount point for NodeStage if staging is supported")
4242
flag.StringVar(&config.SecretsFile, prefix+"secrets", "", "CSI secrets file")
4343
flag.Int64Var(&config.TestVolumeSize, prefix+"testvolumesize", sanity.DefTestVolumeSize, "Base volume size used for provisioned volumes")
44+
flag.StringVar(&config.TestVolumeParametersFile, prefix+"testvolumeparameters", sanity.DefTestVolumeParameters, "YAML file of volume parameters for provisioned volumes")
4445
flag.Parse()
4546
}
4647

pkg/sanity/controller.go

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -185,6 +185,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
185185
context.Background(),
186186
&csi.CreateVolumeRequest{
187187
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
188+
Parameters: sc.Config.TestVolumeParameters,
188189
},
189190
)
190191
cl.MaybeRegisterVolume("", vol, err)
@@ -202,6 +203,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
202203
&csi.CreateVolumeRequest{
203204
Name: name,
204205
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
206+
Parameters: sc.Config.TestVolumeParameters,
205207
},
206208
)
207209
cl.MaybeRegisterVolume(name, vol, err)
@@ -232,6 +234,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
232234
},
233235
},
234236
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
237+
Parameters: sc.Config.TestVolumeParameters,
235238
},
236239
)
237240
Expect(err).NotTo(HaveOccurred())
@@ -276,6 +279,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
276279
RequiredBytes: TestVolumeSize(sc),
277280
},
278281
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
282+
Parameters: sc.Config.TestVolumeParameters,
279283
},
280284
)
281285
if serverError, ok := status.FromError(err); ok &&
@@ -325,6 +329,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
325329
RequiredBytes: size,
326330
},
327331
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
332+
Parameters: sc.Config.TestVolumeParameters,
328333
},
329334
)
330335
Expect(err).NotTo(HaveOccurred())
@@ -352,6 +357,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
352357
RequiredBytes: size,
353358
},
354359
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
360+
Parameters: sc.Config.TestVolumeParameters,
355361
},
356362
)
357363
Expect(err).NotTo(HaveOccurred())
@@ -398,6 +404,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
398404
LimitBytes: size1,
399405
},
400406
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
407+
Parameters: sc.Config.TestVolumeParameters,
401408
},
402409
)
403410
Expect(err).ToNot(HaveOccurred())
@@ -426,6 +433,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
426433
LimitBytes: size2,
427434
},
428435
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
436+
Parameters: sc.Config.TestVolumeParameters,
429437
},
430438
)
431439
Expect(err).To(HaveOccurred())
@@ -474,6 +482,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
474482
RequiredBytes: size,
475483
},
476484
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
485+
Parameters: sc.Config.TestVolumeParameters,
477486
},
478487
)
479488
Expect(err).NotTo(HaveOccurred())
@@ -552,6 +561,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
552561
},
553562
},
554563
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
564+
Parameters: sc.Config.TestVolumeParameters,
555565
},
556566
)
557567
Expect(err).NotTo(HaveOccurred())
@@ -623,6 +633,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
623633
},
624634
},
625635
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
636+
Parameters: sc.Config.TestVolumeParameters,
626637
},
627638
)
628639
Expect(err).NotTo(HaveOccurred())
@@ -767,6 +778,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
767778
},
768779
},
769780
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
781+
Parameters: sc.Config.TestVolumeParameters,
770782
},
771783
)
772784
Expect(err).NotTo(HaveOccurred())
@@ -884,6 +896,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
884896
},
885897
},
886898
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
899+
Parameters: sc.Config.TestVolumeParameters,
887900
},
888901
)
889902
Expect(err).NotTo(HaveOccurred())
@@ -953,6 +966,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
953966
},
954967
},
955968
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
969+
Parameters: sc.Config.TestVolumeParameters,
956970
},
957971
)
958972
Expect(err).NotTo(HaveOccurred())
@@ -1074,6 +1088,7 @@ var _ = DescribeSanity("Controller Service", func(sc *SanityContext) {
10741088
},
10751089
},
10761090
ControllerCreateSecrets: sc.Secrets.CreateVolumeSecret,
1091+
Parameters: sc.Config.TestVolumeParameters,
10771092
},
10781093
)
10791094
Expect(err).NotTo(HaveOccurred())
@@ -1628,6 +1643,7 @@ func MakeCreateVolumeReq(sc *SanityContext, name string) *csi.CreateVolumeReques
16281643
RequiredBytes: size1,
16291644
LimitBytes: size1,
16301645
},
1646+
Parameters: sc.Config.TestVolumeParameters,
16311647
}
16321648

16331649
if sc.Secrets != nil {

pkg/sanity/sanity.go

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,14 @@ type CSISecrets struct {
4747
// Config provides the configuration for the sanity tests. It
4848
// needs to be initialized by the user of the sanity package.
4949
type Config struct {
50-
TargetPath string
51-
StagingPath string
52-
Address string
53-
SecretsFile string
54-
TestVolumeSize int64
50+
TargetPath string
51+
StagingPath string
52+
Address string
53+
SecretsFile string
54+
55+
TestVolumeSize int64
56+
TestVolumeParametersFile string
57+
TestVolumeParameters map[string]string
5558
}
5659

5760
// SanityContext holds the variables that each test can depend on. It
@@ -67,6 +70,18 @@ type SanityContext struct {
6770
// Test will test the CSI driver at the specified address by
6871
// setting up a Ginkgo suite and running it.
6972
func Test(t *testing.T, reqConfig *Config) {
73+
path = reqConfig.TestVolumeParametersFile
74+
if len(path) != 0 {
75+
yamlFile, err := ioutil.ReadFile(path)
76+
if err != nil {
77+
panic(fmt.Sprintf("failed to read file %q: %v", path, err))
78+
}
79+
err = yaml.Unmarshal(yamlFile, &reqConfig.TestVolumeParameters)
80+
if err != nil {
81+
panic(fmt.Sprintf("error unmarshaling yaml: %v", err))
82+
}
83+
}
84+
7085
sc := &SanityContext{
7186
Config: reqConfig,
7287
}

0 commit comments

Comments
 (0)