github.com/axw/juju@v0.0.0-20161005053422-4bd6544d08d4/provider/lxd/userdata.go (about) 1 // Copyright 2015 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 // +build go1.3 5 6 package lxd 7 8 import ( 9 "github.com/juju/errors" 10 jujuos "github.com/juju/utils/os" 11 12 "github.com/juju/juju/cloudconfig/cloudinit" 13 "github.com/juju/juju/cloudconfig/providerinit/renderers" 14 ) 15 16 type lxdRenderer struct{} 17 18 // EncodeUserdata implements renderers.ProviderRenderer. 19 func (lxdRenderer) Render(cfg cloudinit.CloudConfig, os jujuos.OSType) ([]byte, error) { 20 switch os { 21 case jujuos.Ubuntu, jujuos.CentOS: 22 return renderers.RenderYAML(cfg) 23 default: 24 return nil, errors.Errorf("cannot encode userdata for OS %q", os) 25 } 26 }