From c8bcba014544cdf264ed5d1e7fc00ced3684017f Mon Sep 17 00:00:00 2001 From: Jose Diaz-Gonzalez Date: Tue, 7 Jul 2026 19:57:03 -0400 Subject: [PATCH] fix: set dokku system user in buildpacks unit tests Pin DOKKU_SYSTEM_USER and DOKKU_SYSTEM_GROUP to the current process user in test setup so PropertyListWrite succeeds in CI Docker where the dokku group does not exist. --- plugins/buildpacks/buildpacks_test.go | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/plugins/buildpacks/buildpacks_test.go b/plugins/buildpacks/buildpacks_test.go index dea768639..9fb18bda6 100644 --- a/plugins/buildpacks/buildpacks_test.go +++ b/plugins/buildpacks/buildpacks_test.go @@ -2,6 +2,7 @@ package buildpacks import ( "os" + "os/user" "path/filepath" "testing" @@ -15,9 +16,20 @@ func setupTestEnvironment(t *testing.T) string { t.Fatal(err) } - os.Setenv("DOKKU_LIB_ROOT", tmpDir) - os.Setenv("PLUGIN_PATH", "/var/lib/dokku/plugins") - os.Setenv("PLUGIN_ENABLED_PATH", "/var/lib/dokku/plugins/enabled") + t.Setenv("DOKKU_LIB_ROOT", tmpDir) + t.Setenv("PLUGIN_PATH", "/var/lib/dokku/plugins") + t.Setenv("PLUGIN_ENABLED_PATH", "/var/lib/dokku/plugins/enabled") + + current, err := user.Current() + if err != nil { + t.Fatal(err) + } + group, err := user.LookupGroupId(current.Gid) + if err != nil { + t.Fatal(err) + } + t.Setenv("DOKKU_SYSTEM_USER", current.Username) + t.Setenv("DOKKU_SYSTEM_GROUP", group.Name) return tmpDir }