From d53452a7eb5dd2bb7beef5b5567aa07f86d9e0b9 Mon Sep 17 00:00:00 2001 From: Josh Curl Date: Thu, 1 Dec 2016 11:16:53 -0800 Subject: [PATCH 1/2] Show output for modprobe calls --- init/init.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/init/init.go b/init/init.go index ed4ba267..f6e9402f 100644 --- a/init/init.go +++ b/init/init.go @@ -59,7 +59,10 @@ func loadModules(cfg *config.CloudConfig) (*config.CloudConfig, error) { } log.Debugf("Loading module %s", module) - if err := exec.Command("modprobe", module).Run(); err != nil { + cmd := exec.Command("modprobe", module) + cmd.Stdout = os.Stdout + cmd.Stderr = os.Stderr + if err := cmd.Run(); err != nil { log.Errorf("Could not load module %s, err %v", module, err) } } From 40100ffa7ce593c0a2f62175bae769905ea9e237 Mon Sep 17 00:00:00 2001 From: Josh Curl Date: Thu, 1 Dec 2016 11:27:33 -0800 Subject: [PATCH 2/2] Load modules after running PrepareFs --- init/init.go | 2 +- tests/assets/test_27/cloud-config.yml | 5 +++++ tests/modules_test.go | 13 +++++++++++++ 3 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 tests/assets/test_27/cloud-config.yml create mode 100644 tests/modules_test.go diff --git a/init/init.go b/init/init.go index f6e9402f..4888713e 100644 --- a/init/init.go +++ b/init/init.go @@ -359,10 +359,10 @@ func RunInit() error { return config.LoadConfig(), nil }, - loadModules, func(c *config.CloudConfig) (*config.CloudConfig, error) { return c, dfs.PrepareFs(&mountConfig) }, + loadModules, func(c *config.CloudConfig) (*config.CloudConfig, error) { network.SetProxyEnvironmentVariables(c) return c, nil diff --git a/tests/assets/test_27/cloud-config.yml b/tests/assets/test_27/cloud-config.yml new file mode 100644 index 00000000..b637f1a3 --- /dev/null +++ b/tests/assets/test_27/cloud-config.yml @@ -0,0 +1,5 @@ +#cloud-config +rancher: + modules: [btrfs] +ssh_authorized_keys: + - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC85w9stZyiLQp/DkVO6fqwiShYcj1ClKdtCqgHtf+PLpJkFReSFu8y21y+ev09gsSMRRrjF7yt0pUHV6zncQhVeqsZtgc5WbELY2DOYUGmRn/CCvPbXovoBrQjSorqlBmpuPwsStYLr92Xn+VVsMNSUIegHY22DphGbDKG85vrKB8HxUxGIDxFBds/uE8FhSy+xsoyT/jUZDK6pgq2HnGl6D81ViIlKecpOpWlW3B+fea99ADNyZNVvDzbHE5pcI3VRw8u59WmpWOUgT6qacNVACl8GqpBvQk8sw7O/X9DSZHCKafeD9G5k+GYbAUz92fKWrx/lOXfUXPS3+c8dRIF diff --git a/tests/modules_test.go b/tests/modules_test.go new file mode 100644 index 00000000..74c90a83 --- /dev/null +++ b/tests/modules_test.go @@ -0,0 +1,13 @@ +package integration + +import . "gopkg.in/check.v1" + +func (s *QemuSuite) TestKernelParameterModule(c *C) { + s.RunQemu(c, "--append", "rancher.modules=[btrfs]") + s.CheckCall(c, "lsmod | grep btrfs") +} + +func (s *QemuSuite) TestCloudConfigModule(c *C) { + s.RunQemu(c, "--cloud-config", "./tests/assets/test_27/cloud-config.yml") + s.CheckCall(c, "lsmod | grep btrfs") +}