From fc5412dd9b8a8baf15eca8e152f43930ae6daac0 Mon Sep 17 00:00:00 2001 From: Joshua Powers Date: Wed, 14 Jun 2023 13:39:31 -0600 Subject: [PATCH] test: Do not use hard-coded /tmp/telegraf (#13444) --- plugins/inputs/bcache/bcache_test.go | 21 ++++++++-------- plugins/inputs/lustre2/lustre2_test.go | 35 +++++++++++++------------- plugins/inputs/zfs/zfs_linux_test.go | 25 ++++++++++-------- 3 files changed, 43 insertions(+), 38 deletions(-) diff --git a/plugins/inputs/bcache/bcache_test.go b/plugins/inputs/bcache/bcache_test.go index 2d1a7c71a..4ac6ffce4 100644 --- a/plugins/inputs/bcache/bcache_test.go +++ b/plugins/inputs/bcache/bcache_test.go @@ -23,15 +23,17 @@ const ( cacheReadaheads = "2" ) -var ( - testBcachePath = os.TempDir() + "/telegraf/sys/fs/bcache" - testBcacheUUIDPath = testBcachePath + "/663955a3-765a-4737-a9fd-8250a7a78411" - testBcacheDevPath = os.TempDir() + "/telegraf/sys/devices/virtual/block/bcache0" - testBcacheBackingDevPath = os.TempDir() + "/telegraf/sys/devices/virtual/block/md10" -) - func TestBcacheGeneratesMetrics(t *testing.T) { - err := os.MkdirAll(testBcacheUUIDPath, 0750) + tmpDir, err := os.MkdirTemp("", "telegraf-bcache") + require.NoError(t, err) + defer os.RemoveAll(tmpDir) + + testBcachePath := tmpDir + "/telegraf-bcache/sys/fs/bcache" + testBcacheUUIDPath := testBcachePath + "/663955a3-765a-4737-a9fd-8250a7a78411" + testBcacheDevPath := tmpDir + "/telegraf/sys/devices/virtual/block/bcache0" + testBcacheBackingDevPath := tmpDir + "/telegraf/sys/devices/virtual/block/md10" + + err = os.MkdirAll(testBcacheUUIDPath, 0750) require.NoError(t, err) err = os.MkdirAll(testBcacheDevPath, 0750) @@ -108,7 +110,4 @@ func TestBcacheGeneratesMetrics(t *testing.T) { err = b.Gather(&acc) require.NoError(t, err) acc.AssertContainsTaggedFields(t, "bcache", fields, tags) - - err = os.RemoveAll(os.TempDir() + "/telegraf") - require.NoError(t, err) } diff --git a/plugins/inputs/lustre2/lustre2_test.go b/plugins/inputs/lustre2/lustre2_test.go index 202a13028..5988fe834 100644 --- a/plugins/inputs/lustre2/lustre2_test.go +++ b/plugins/inputs/lustre2/lustre2_test.go @@ -132,11 +132,15 @@ const mdtJobStatsContents = `job_stats: ` func TestLustre2GeneratesMetrics(t *testing.T) { - tempdir := os.TempDir() + "/telegraf/proc/fs/lustre/" + tmpDir, err := os.MkdirTemp("", "telegraf-lustre") + require.NoError(t, err) + defer os.RemoveAll(tmpDir) + + tempdir := tmpDir + "/telegraf/proc/fs/lustre/" ostName := "OST0001" mdtdir := tempdir + "/mdt/" - err := os.MkdirAll(mdtdir+"/"+ostName, 0750) + err = os.MkdirAll(mdtdir+"/"+ostName, 0750) require.NoError(t, err) osddir := tempdir + "/osd-ldiskfs/" @@ -198,17 +202,18 @@ func TestLustre2GeneratesMetrics(t *testing.T) { } acc.AssertContainsTaggedFields(t, "lustre2", fields, tags) - - err = os.RemoveAll(os.TempDir() + "/telegraf") - require.NoError(t, err) } func TestLustre2GeneratesClientMetrics(t *testing.T) { - tempdir := os.TempDir() + "/telegraf/proc/fs/lustre/" + tmpDir, err := os.MkdirTemp("", "telegraf-lustre-client") + require.NoError(t, err) + defer os.RemoveAll(tmpDir) + + tempdir := tmpDir + "/telegraf/proc/fs/lustre/" ostName := "OST0001" clientName := "10.2.4.27@o2ib1" mdtdir := tempdir + "/mdt/" - err := os.MkdirAll(mdtdir+"/"+ostName+"/exports/"+clientName, 0750) + err = os.MkdirAll(mdtdir+"/"+ostName+"/exports/"+clientName, 0750) require.NoError(t, err) obddir := tempdir + "/obdfilter/" @@ -261,18 +266,19 @@ func TestLustre2GeneratesClientMetrics(t *testing.T) { } acc.AssertContainsTaggedFields(t, "lustre2", fields, tags) - - err = os.RemoveAll(os.TempDir() + "/telegraf") - require.NoError(t, err) } func TestLustre2GeneratesJobstatsMetrics(t *testing.T) { - tempdir := os.TempDir() + "/telegraf/proc/fs/lustre/" + tmpDir, err := os.MkdirTemp("", "telegraf-lustre-jobstats") + require.NoError(t, err) + defer os.RemoveAll(tmpDir) + + tempdir := tmpDir + "/telegraf/proc/fs/lustre/" ostName := "OST0001" jobNames := []string{"cluster-testjob1", "testjob2"} mdtdir := tempdir + "/mdt/" - err := os.MkdirAll(mdtdir+"/"+ostName, 0750) + err = os.MkdirAll(mdtdir+"/"+ostName, 0750) require.NoError(t, err) obddir := tempdir + "/obdfilter/" @@ -389,11 +395,6 @@ func TestLustre2GeneratesJobstatsMetrics(t *testing.T) { for index := 0; index < len(fields); index++ { acc.AssertContainsTaggedFields(t, "lustre2", fields[index], tags[index]) } - - // run this over both tags - - err = os.RemoveAll(os.TempDir() + "/telegraf") - require.NoError(t, err) } func TestLustre2CanParseConfiguration(t *testing.T) { diff --git a/plugins/inputs/zfs/zfs_linux_test.go b/plugins/inputs/zfs/zfs_linux_test.go index c0012fbc1..20604df8d 100644 --- a/plugins/inputs/zfs/zfs_linux_test.go +++ b/plugins/inputs/zfs/zfs_linux_test.go @@ -193,10 +193,13 @@ scatter_page_alloc_retry 4 99311 scatter_sg_table_retry 4 99221 ` -var testKstatPath = os.TempDir() + "/telegraf/proc/spl/kstat/zfs" - func TestZfsPoolMetrics(t *testing.T) { - err := os.MkdirAll(testKstatPath, 0750) + tmpDir, err := os.MkdirTemp("", "telegraf-zfs-pool") + require.NoError(t, err) + defer os.RemoveAll(tmpDir) + + testKstatPath := tmpDir + "/telegraf/proc/spl/kstat/zfs" + err = os.MkdirAll(testKstatPath, 0750) require.NoError(t, err) err = os.MkdirAll(testKstatPath+"/HOME", 0750) @@ -242,13 +245,18 @@ func TestZfsPoolMetrics(t *testing.T) { poolMetrics = getPoolMetricsNewFormat() acc.AssertContainsTaggedFields(t, "zfs_pool", poolMetrics, tags) - - err = os.RemoveAll(os.TempDir() + "/telegraf") - require.NoError(t, err) } func TestZfsGeneratesMetrics(t *testing.T) { - err := os.MkdirAll(testKstatPath, 0750) + tmpDir, err := os.MkdirTemp("", "telegraf-zfs-generates") + require.NoError(t, err) + defer os.RemoveAll(tmpDir) + + testKstatPath := tmpDir + "/telegraf/proc/spl/kstat/zfs" + err = os.MkdirAll(testKstatPath, 0750) + require.NoError(t, err) + + err = os.MkdirAll(testKstatPath, 0750) require.NoError(t, err) err = os.MkdirAll(testKstatPath+"/HOME", 0750) @@ -319,9 +327,6 @@ func TestZfsGeneratesMetrics(t *testing.T) { require.NoError(t, err) acc3.AssertContainsTaggedFields(t, "zfs", intMetrics, tags) - - err = os.RemoveAll(os.TempDir() + "/telegraf") - require.NoError(t, err) } func TestGetTags(t *testing.T) {