Skip to content

Commit 79bbe47

Browse files
committed
tests: Allow disabling privileged test cases through env
Let's allow disabling test cases requiring elevated privileges through setting an environment variable, `TF_LIBVIRT_DISABLE_PRIVILEGED_TESTS`.
1 parent 6dd541e commit 79bbe47

File tree

4 files changed

+50
-0
lines changed

4 files changed

+50
-0
lines changed

CONTRIBUTING.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,13 @@ Or run a group of test with a verbose loglevel:
6767
TF_LOG=DEBUG make testacc TEST_ARGS="-run TestAccLibvirtNet*"
6868
```
6969

70+
If you run the tests on an unprivileged connection (e.g session libvirt), some of the acceptance tests will need to be disabled (mainly the networking ones) through an environment
71+
variable:
72+
73+
```bash
74+
LIBVIRT_DEFAULT_URI='qemu+unix:///session' TF_LIBVIRT_DISABLE_PRIVILEGED_TESTS=1 make testacc
75+
```
76+
7077
### Code coverage:
7178

7279
Run first the testacc suite.

libvirt/helpers_test.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,12 @@ func testAccEnabled() bool {
5050
return v == "1" || strings.ToLower(v) == "true"
5151
}
5252

53+
func skipIfPrivilegedDisabled(t *testing.T) {
54+
if os.Getenv("TF_LIBVIRT_DISABLE_PRIVILEGED_TESTS") != "" {
55+
t.Skip("skipping test; Enviornemnt variable `TF_LIBVIRT_DISABLE_PRIVILEGED_TESTS` is set")
56+
}
57+
}
58+
5359
// //////////////////////////////////////////////////////////////////
5460
// general
5561
// //////////////////////////////////////////////////////////////////

libvirt/resource_libvirt_domain_test.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -448,6 +448,8 @@ func TestAccLibvirtDomain_KernelInitrdCmdline(t *testing.T) {
448448
}
449449

450450
func TestAccLibvirtDomain_NetworkInterface(t *testing.T) {
451+
skipIfPrivilegedDisabled(t)
452+
451453
var domain libvirt.Domain
452454
randomDomainName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
453455
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
@@ -498,6 +500,8 @@ func TestAccLibvirtDomain_NetworkInterface(t *testing.T) {
498500
}
499501

500502
func TestAccLibvirtDomain_CheckDHCPEntries(t *testing.T) {
503+
skipIfPrivilegedDisabled(t)
504+
501505
var domain libvirt.Domain
502506
var network libvirt.Network
503507
randomDomainName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
@@ -813,6 +817,8 @@ func TestAccLibvirtDomain_Filesystems(t *testing.T) {
813817
}
814818

815819
func TestAccLibvirtDomain_Consoles(t *testing.T) {
820+
skipIfPrivilegedDisabled(t)
821+
816822
var domain libvirt.Domain
817823
randomDomainName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
818824
var config = fmt.Sprintf(`
@@ -1430,6 +1436,8 @@ func TestAccLibvirtDomain_Import(t *testing.T) {
14301436
}
14311437

14321438
func TestAccLibvirtDomain_XSLT_UnsupportedAttribute(t *testing.T) {
1439+
skipIfPrivilegedDisabled(t)
1440+
14331441
var domain libvirt.Domain
14341442
randomDomainName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
14351443
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
@@ -1494,6 +1502,8 @@ EOF
14941502
// Therefore we explicitly advise against using it with existing
14951503
// schema attributes
14961504
func TestAccLibvirtDomain_XSLT_SupportedAttribute(t *testing.T) {
1505+
skipIfPrivilegedDisabled(t)
1506+
14971507
var domain libvirt.Domain
14981508
randomDomainName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
14991509
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
@@ -1552,6 +1562,8 @@ EOF
15521562
// changed whitespace in the xslt should create an empty plan
15531563
// as the supress diff function should take care of seeing they are equivalent
15541564
func TestAccLibvirtDomain_XSLT_Whitespace(t *testing.T) {
1565+
skipIfPrivilegedDisabled(t)
1566+
15551567
var domain libvirt.Domain
15561568
randomDomainName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
15571569
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)

libvirt/resource_libvirt_network_test.go

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ import (
1212
)
1313

1414
func TestAccLibvirtNetwork_Addresses(t *testing.T) {
15+
skipIfPrivilegedDisabled(t)
16+
1517
randomNetworkResource := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
1618
randomNetworkResourceFull := "libvirt_network." + randomNetworkResource
1719
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
@@ -39,6 +41,8 @@ func TestAccLibvirtNetwork_Addresses(t *testing.T) {
3941
}
4042

4143
func TestAccLibvirtNetwork_LocalOnly(t *testing.T) {
44+
skipIfPrivilegedDisabled(t)
45+
4246
randomNetworkResource := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
4347
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
4448
resource.Test(t, resource.TestCase{
@@ -66,6 +70,8 @@ func TestAccLibvirtNetwork_LocalOnly(t *testing.T) {
6670
}
6771

6872
func TestAccLibvirtNetwork_DNSEnable(t *testing.T) {
73+
skipIfPrivilegedDisabled(t)
74+
6975
randomNetworkResource := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
7076
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
7177
resource.Test(t, resource.TestCase{
@@ -93,6 +99,8 @@ func TestAccLibvirtNetwork_DNSEnable(t *testing.T) {
9399
}
94100

95101
func TestAccLibvirtNetwork_DNSDisable(t *testing.T) {
102+
skipIfPrivilegedDisabled(t)
103+
96104
randomNetworkResource := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
97105
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
98106
resource.Test(t, resource.TestCase{
@@ -120,6 +128,8 @@ func TestAccLibvirtNetwork_DNSDisable(t *testing.T) {
120128
}
121129

122130
func TestAccLibvirtNetwork_DNSForwarders(t *testing.T) {
131+
skipIfPrivilegedDisabled(t)
132+
123133
randomNetworkResource := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
124134
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
125135
resource.Test(t, resource.TestCase{
@@ -171,6 +181,8 @@ func TestAccLibvirtNetwork_DNSForwarders(t *testing.T) {
171181
}
172182

173183
func TestAccLibvirtNetwork_DNSHosts(t *testing.T) {
184+
skipIfPrivilegedDisabled(t)
185+
174186
randomNetworkResource := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
175187
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
176188
resource.Test(t, resource.TestCase{
@@ -294,6 +306,8 @@ func TestAccLibvirtNetwork_DNSHosts(t *testing.T) {
294306
}
295307

296308
func TestAccLibvirtNetwork_Import(t *testing.T) {
309+
skipIfPrivilegedDisabled(t)
310+
297311
var network libvirt.Network
298312
randomNetworkResource := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
299313
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
@@ -325,6 +339,8 @@ func TestAccLibvirtNetwork_Import(t *testing.T) {
325339
}
326340

327341
func TestAccLibvirtNetwork_DhcpEnabled(t *testing.T) {
342+
skipIfPrivilegedDisabled(t)
343+
328344
randomNetworkResource := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
329345
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
330346
resource.Test(t, resource.TestCase{
@@ -353,6 +369,8 @@ func TestAccLibvirtNetwork_DhcpEnabled(t *testing.T) {
353369
}
354370

355371
func TestAccLibvirtNetwork_DhcpDisabled(t *testing.T) {
372+
skipIfPrivilegedDisabled(t)
373+
356374
randomNetworkResource := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
357375
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
358376
resource.Test(t, resource.TestCase{
@@ -381,6 +399,8 @@ func TestAccLibvirtNetwork_DhcpDisabled(t *testing.T) {
381399
}
382400

383401
func TestAccLibvirtNetwork_BridgedMode(t *testing.T) {
402+
skipIfPrivilegedDisabled(t)
403+
384404
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
385405
randomBridgeName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
386406
resource.Test(t, resource.TestCase{
@@ -405,6 +425,7 @@ func TestAccLibvirtNetwork_BridgedMode(t *testing.T) {
405425
}
406426

407427
func TestAccLibvirtNetwork_StaticRoutes(t *testing.T) {
428+
skipIfPrivilegedDisabled(t)
408429

409430
checkRoutes := func(resourceName string) resource.TestCheckFunc {
410431
return func(s *terraform.State) error {
@@ -480,6 +501,8 @@ func TestAccLibvirtNetwork_StaticRoutes(t *testing.T) {
480501
}
481502

482503
func TestAccLibvirtNetwork_Autostart(t *testing.T) {
504+
skipIfPrivilegedDisabled(t)
505+
483506
var network libvirt.Network
484507
randomNetworkResource := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
485508
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
@@ -521,6 +544,8 @@ func TestAccLibvirtNetwork_Autostart(t *testing.T) {
521544
}
522545

523546
func TestAccLibvirtNetwork_MTU(t *testing.T) {
547+
skipIfPrivilegedDisabled(t)
548+
524549
var network libvirt.Network
525550
randomNetworkResource := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)
526551
randomNetworkName := acctest.RandStringFromCharSet(10, acctest.CharSetAlpha)

0 commit comments

Comments
 (0)