github.com/niedbalski/juju@v0.0.0-20190215020005-8ff100488e47/provider/rackspace/networking.go (about) 1 // Copyright 2015-2016 Canonical Ltd. 2 // Licensed under the AGPLv3, see LICENCE file for details. 3 4 package rackspace 5 6 import ( 7 "gopkg.in/goose.v2/nova" 8 9 "github.com/juju/juju/provider/openstack" 10 ) 11 12 type rackspaceNetworkingDecorator struct{} 13 14 // DecorateNetworking is part of the openstack.NetworkingDecorator interface. 15 func (d rackspaceNetworkingDecorator) DecorateNetworking(n openstack.Networking) (openstack.Networking, error) { 16 return rackspaceNetworking{n}, nil 17 } 18 19 type rackspaceNetworking struct { 20 openstack.Networking 21 } 22 23 // DefaultNetworks is part of the openstack.Networking interface. 24 func (rackspaceNetworking) DefaultNetworks() ([]nova.ServerNetworks, error) { 25 // These are the default rackspace networks, see: 26 // http://docs.rackspace.com/servers/api/v2/cs-devguide/content/provision_server_with_networks.html 27 return []nova.ServerNetworks{ 28 {NetworkId: "00000000-0000-0000-0000-000000000000"}, //Racksapce PublicNet 29 {NetworkId: "11111111-1111-1111-1111-111111111111"}, //Rackspace ServiceNet 30 }, nil 31 }