Merge pull request #912 from nebula/populate_api
builder/openstack: added support for gophercloud's PopulateApi
This commit is contained in:
commit
a9f07bc3ff
|
@ -60,13 +60,15 @@ func (b *Builder) Run(ui packer.Ui, hook packer.Hook, cache packer.Cache) (packe
|
|||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
api := &gophercloud.ApiCriteria{
|
||||
Name: "cloudServersOpenStack",
|
||||
Region: b.config.AccessConfig.Region(),
|
||||
VersionId: "2",
|
||||
UrlChoice: gophercloud.PublicURL,
|
||||
//fetches the api requisites from gophercloud for the appropriate
|
||||
//openstack variant
|
||||
api, err := gophercloud.PopulateApi(b.config.RunConfig.OpenstackProvider)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
csp, err := gophercloud.ServersApi(auth, *api)
|
||||
api.Region = b.config.AccessConfig.Region()
|
||||
|
||||
csp, err := gophercloud.ServersApi(auth, api)
|
||||
if err != nil {
|
||||
log.Printf("Region: %s", b.config.AccessConfig.Region())
|
||||
return nil, err
|
||||
|
|
|
@ -10,11 +10,12 @@ import (
|
|||
// RunConfig contains configuration for running an instance from a source
|
||||
// image and details on how to access that launched image.
|
||||
type RunConfig struct {
|
||||
SourceImage string `mapstructure:"source_image"`
|
||||
Flavor string `mapstructure:"flavor"`
|
||||
RawSSHTimeout string `mapstructure:"ssh_timeout"`
|
||||
SSHUsername string `mapstructure:"ssh_username"`
|
||||
SSHPort int `mapstructure:"ssh_port"`
|
||||
SourceImage string `mapstructure:"source_image"`
|
||||
Flavor string `mapstructure:"flavor"`
|
||||
RawSSHTimeout string `mapstructure:"ssh_timeout"`
|
||||
SSHUsername string `mapstructure:"ssh_username"`
|
||||
SSHPort int `mapstructure:"ssh_port"`
|
||||
OpenstackProvider string `mapstructure:"openstack_provider"`
|
||||
|
||||
// Unexported fields that are calculated from others
|
||||
sshTimeout time.Duration
|
||||
|
|
Loading…
Reference in New Issue