func (s *UserdataSuite) TestAzureWindows(c *gc.C) { renderer := gce.GCERenderer{} data := []byte("test") result, err := renderer.EncodeUserdata(data, os.Windows) c.Assert(err, jc.ErrorIsNil) c.Assert(result, jc.DeepEquals, renderers.WinEmbedInScript(data)) }
func (s *RenderersSuite) TestWinEmbedInScript(c *gc.C) { in := []byte("test") out := string(renderers.WinEmbedInScript(in)) encUserdata := renderers.ToBase64(utils.Gzip(in)) expected := fmt.Sprintf(cloudconfig.UserDataScript, encUserdata) c.Assert(out, jc.DeepEquals, expected) }
func (s *RenderersSuite) TestMAASWindows(c *gc.C) { renderer := maas.MAASRenderer{} data := []byte("test") result, err := renderer.EncodeUserdata(data, os.Windows) c.Assert(err, jc.ErrorIsNil) expected := base64.StdEncoding.EncodeToString(renderers.WinEmbedInScript(data)) c.Assert(string(result), jc.DeepEquals, expected) }
func (s *UserdataSuite) TestOpenstackWindows(c *gc.C) { renderer := openstack.OpenstackRenderer{} cloudcfg := &cloudinittest.CloudConfig{YAML: []byte("yaml")} result, err := renderer.Render(cloudcfg, os.Windows) c.Assert(err, jc.ErrorIsNil) c.Assert(result, jc.DeepEquals, renderers.WinEmbedInScript(cloudcfg.YAML)) }
func (s *RenderersSuite) TestMAASWindows(c *gc.C) { renderer := maas.MAASRenderer{} cloudcfg := &cloudinittest.CloudConfig{YAML: []byte("yaml")} result, err := renderer.Render(cloudcfg, os.Windows) c.Assert(err, jc.ErrorIsNil) expected := base64.StdEncoding.EncodeToString(renderers.WinEmbedInScript(cloudcfg.YAML)) c.Assert(string(result), jc.DeepEquals, expected) }
func (OpenstackRenderer) EncodeUserdata(udata []byte, os jujuos.OSType) ([]byte, error) { switch os { case jujuos.Ubuntu, jujuos.CentOS: return utils.Gzip(udata), nil case jujuos.Windows: return renderers.WinEmbedInScript(udata), nil default: return nil, errors.Errorf("Cannot encode userdata for OS: %s", os.String()) } }
func (AzureRenderer) EncodeUserdata(udata []byte, vers os.OSType) ([]byte, error) { switch vers { case os.Ubuntu, os.CentOS: return renderers.ToBase64(utils.Gzip(udata)), nil case os.Windows: return renderers.ToBase64(renderers.WinEmbedInScript(udata)), nil default: return nil, errors.Errorf("Cannot encode userdata for OS: %s", vers) } }
func (s *UserdataSuite) TestAmazonWindows(c *gc.C) { renderer := ec2.AmazonRenderer{} data := []byte("test") result, err := renderer.EncodeUserdata(data, os.Windows) c.Assert(err, jc.ErrorIsNil) expected := []byte(`<powershell>` + string(renderers.WinEmbedInScript(data)) + `</powershell>`) c.Assert(result, jc.DeepEquals, expected) }
func (s *UserdataSuite) TestAmazonWindows(c *gc.C) { renderer := ec2.AmazonRenderer{} cloudcfg := &cloudinittest.CloudConfig{YAML: []byte("yaml")} result, err := renderer.Render(cloudcfg, os.Windows) c.Assert(err, jc.ErrorIsNil) expected := []byte(`<powershell>` + string(renderers.WinEmbedInScript(cloudcfg.YAML)) + `</powershell>`) c.Assert(result, jc.DeepEquals, expected) }