func (s *UserDataSuite) TestNewCloudInitConfigWithNetworksNoConfig(c *gc.C) { netConfig := container.BridgeNetworkConfig("foo", 0, nil) cloudConf, err := containerinit.NewCloudInitConfigWithNetworks("quantal", netConfig) c.Assert(err, jc.ErrorIsNil) expected := "#cloud-config\n{}\n" assertUserData(c, cloudConf, expected) }
func (s *UserDataSuite) TestNewCloudInitConfigWithNetworksFallbackConfig(c *gc.C) { netConfig := container.BridgeNetworkConfig("foo", 0, nil) cloudConf, err := containerinit.NewCloudInitConfigWithNetworks("quantal", netConfig) c.Assert(err, jc.ErrorIsNil) c.Assert(cloudConf, gc.NotNil) expected := fmt.Sprintf(s.expectedFallbackUserData, s.networkInterfacesFile, s.systemNetworkInterfacesFile) assertUserData(c, cloudConf, expected) }
func (s *UserDataSuite) TestNewCloudInitConfigWithNetworks(c *gc.C) { netConfig := container.BridgeNetworkConfig("foo", 0, s.fakeInterfaces) cloudConf, err := containerinit.NewCloudInitConfigWithNetworks("quantal", netConfig) c.Assert(err, jc.ErrorIsNil) // We need to indent expectNetConfig to make it valid YAML, // dropping the last new line and using unindented blank lines. lines := strings.Split(s.expectedNetConfig, "\n") indentedNetConfig := strings.Join(lines[:len(lines)-1], "\n ") indentedNetConfig = strings.Replace(indentedNetConfig, "\n \n", "\n\n", -1) expected := ` #cloud-config bootcmd: - install -D -m 644 /dev/null '`[1:] + s.networkInterfacesFile + `' - |- printf '%s\n' '` + indentedNetConfig + ` ' > '` + s.networkInterfacesFile + `' ` assertUserData(c, cloudConf, expected) }