Skip to content

Commit 1ca3d81

Browse files
Revert "Add kuryr support (openshift#61)"
This reverts commit 9e7a9ce.
1 parent 9e7a9ce commit 1ca3d81

File tree

36 files changed

+8
-3690
lines changed

36 files changed

+8
-3690
lines changed

Gopkg.lock

Lines changed: 1 addition & 34 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

cmd/clusterctl/examples/openstack/ubuntu/machines.yaml.template

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ items:
2323
userDataSecret:
2424
name: master-user-data
2525
namespace: openstack-provider-system
26-
trunk: false
2726
versions:
2827
kubelet: 1.12.3
2928
controlPlane: 1.12.3
@@ -51,6 +50,5 @@ items:
5150
userDataSecret:
5251
name: worker-user-data
5352
namespace: openstack-provider-system
54-
trunk: false
5553
versions:
5654
kubelet: 1.12.3

pkg/apis/openstackproviderconfig/v1alpha1/types.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,9 +65,6 @@ type OpenstackProviderSpec struct {
6565
// The name of the secret containing the user data (startup script in most cases)
6666
UserDataSecret *corev1.SecretReference `json:"userDataSecret,omitempty"`
6767

68-
// Whether the server instance is created on a trunk port or not.
69-
Trunk bool `json:"trunk,omitempty"`
70-
7168
RootVolume RootVolume `json:"root_volume,omitempty"`
7269
}
7370

pkg/cloud/openstack/clients/machineservice.go

Lines changed: 6 additions & 185 deletions
Original file line numberDiff line numberDiff line change
@@ -19,42 +19,26 @@ package clients
1919
import (
2020
"encoding/base64"
2121
"fmt"
22-
"time"
2322

2423
"gopkg.in/yaml.v2"
2524
"k8s.io/client-go/kubernetes"
2625

2726
"github.com/gophercloud/gophercloud"
2827
"github.com/gophercloud/gophercloud/openstack"
29-
"github.com/gophercloud/gophercloud/openstack/common/extensions"
30-
"github.com/gophercloud/gophercloud/openstack/compute/v2/extensions/attachinterfaces"
3128
"github.com/gophercloud/gophercloud/openstack/compute/v2/extensions/floatingips"
3229
"github.com/gophercloud/gophercloud/openstack/compute/v2/extensions/keypairs"
3330
"github.com/gophercloud/gophercloud/openstack/compute/v2/servers"
3431
"github.com/gophercloud/gophercloud/openstack/identity/v3/tokens"
35-
netext "github.com/gophercloud/gophercloud/openstack/networking/v2/extensions"
36-
"github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/attributestags"
37-
"github.com/gophercloud/gophercloud/openstack/networking/v2/extensions/trunks"
3832
"github.com/gophercloud/gophercloud/openstack/networking/v2/networks"
39-
"github.com/gophercloud/gophercloud/openstack/networking/v2/ports"
4033
"github.com/gophercloud/gophercloud/pagination"
4134
"github.com/gophercloud/utils/openstack/clientconfig"
4235
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
4336
"k8s.io/klog"
4437
openstackconfigv1 "sigs.k8s.io/cluster-api-provider-openstack/pkg/apis/openstackproviderconfig/v1alpha1"
4538
clusterv1 "sigs.k8s.io/cluster-api/pkg/apis/cluster/v1alpha1"
46-
"sigs.k8s.io/cluster-api/pkg/util"
4739
)
4840

49-
const (
50-
CloudsSecretKey = "clouds.yaml"
51-
52-
TimeoutTrunkDelete = 3 * time.Minute
53-
RetryIntervalTrunkDelete = 5 * time.Second
54-
55-
TimeoutPortDelete = 3 * time.Minute
56-
RetryIntervalPortDelete = 5 * time.Second
57-
)
41+
const CloudsSecretKey = "clouds.yaml"
5842

5943
type InstanceService struct {
6044
provider *gophercloud.ProviderClient
@@ -254,14 +238,11 @@ func getNetworkIDsByFilter(is *InstanceService, opts *networks.ListOpts) ([]stri
254238
return uuids, nil
255239
}
256240

257-
func (is *InstanceService) InstanceCreate(clusterName string, name string, config *openstackconfigv1.OpenstackProviderSpec, cmd string, keyName string) (instance *Instance, err error) {
241+
func (is *InstanceService) InstanceCreate(name string, config *openstackconfigv1.OpenstackProviderSpec, cmd string, keyName string) (instance *Instance, err error) {
242+
var createOpts servers.CreateOpts
258243
if config == nil {
259244
return nil, fmt.Errorf("create Options need be specified to create instace")
260245
}
261-
clusterTags := []string{
262-
"cluster-api-provider-openstack",
263-
clusterName,
264-
}
265246
var nets []servers.Network
266247
for _, net := range config.Networks {
267248
if net.UUID == "" {
@@ -280,98 +261,20 @@ func (is *InstanceService) InstanceCreate(clusterName string, name string, confi
280261
UUID: net.UUID,
281262
})
282263
}
283-
if len(net.Filter.Tags) > 0 {
284-
clusterTags = append(clusterTags, net.Filter.Tags)
285-
}
286264
}
287265
userData := base64.StdEncoding.EncodeToString([]byte(cmd))
288-
var ports_list []servers.Network
289-
for _, net := range nets {
290-
allPages, err := ports.List(is.networkClient, ports.ListOpts{
291-
Name: name,
292-
NetworkID: net.UUID,
293-
}).AllPages()
294-
if err != nil {
295-
return nil, fmt.Errorf("Searching for existing port for server err: %v", err)
296-
}
297-
portList, err := ports.ExtractPorts(allPages)
298-
if err != nil {
299-
return nil, fmt.Errorf("Searching for existing port for server err: %v", err)
300-
}
301-
var port ports.Port
302-
if len(portList) == 0 {
303-
// create server port
304-
portCreateOpts := ports.CreateOpts{
305-
Name: name,
306-
NetworkID: net.UUID,
307-
SecurityGroups: &config.SecurityGroups,
308-
}
309-
newPort, err := ports.Create(is.networkClient, portCreateOpts).Extract()
310-
if err != nil {
311-
return nil, fmt.Errorf("Create port for server err: %v", err)
312-
}
313-
port = *newPort
314-
} else {
315-
port = portList[0]
316-
}
317-
318-
_, err = attributestags.ReplaceAll(is.networkClient, "ports", port.ID, attributestags.ReplaceAllOpts{
319-
Tags: clusterTags}).Extract()
320-
if err != nil {
321-
return nil, fmt.Errorf("Tagging port for server err: %v", err)
322-
}
323-
ports_list = append(ports_list, servers.Network{
324-
Port: port.ID,
325-
})
326-
327-
if config.Trunk == true {
328-
allPages, err := trunks.List(is.networkClient, trunks.ListOpts{
329-
Name: name,
330-
PortID: port.ID,
331-
}).AllPages()
332-
if err != nil {
333-
return nil, fmt.Errorf("Searching for existing trunk for server err: %v", err)
334-
}
335-
trunkList, err := trunks.ExtractTrunks(allPages)
336-
if err != nil {
337-
return nil, fmt.Errorf("Searching for existing trunk for server err: %v", err)
338-
}
339-
var trunk trunks.Trunk
340-
if len(trunkList) == 0 {
341-
// create trunk with the previous port as parent
342-
trunkCreateOpts := trunks.CreateOpts{
343-
Name: name,
344-
PortID: port.ID,
345-
}
346-
newTrunk, err := trunks.Create(is.networkClient, trunkCreateOpts).Extract()
347-
if err != nil {
348-
return nil, fmt.Errorf("Create trunk for server err: %v", err)
349-
}
350-
trunk = *newTrunk
351-
} else {
352-
trunk = trunkList[0]
353-
}
354-
355-
_, err = attributestags.ReplaceAll(is.networkClient, "trunks", trunk.ID, attributestags.ReplaceAllOpts{
356-
Tags: clusterTags}).Extract()
357-
if err != nil {
358-
return nil, fmt.Errorf("Tagging trunk for server err: %v", err)
359-
}
360-
}
361-
}
362-
363-
serverCreateOpts := servers.CreateOpts{
266+
createOpts = servers.CreateOpts{
364267
Name: name,
365268
ImageName: config.Image,
366269
FlavorName: config.Flavor,
367270
AvailabilityZone: config.AvailabilityZone,
368-
Networks: ports_list,
271+
Networks: nets,
369272
UserData: []byte(userData),
370273
SecurityGroups: config.SecurityGroups,
371274
ServiceClient: is.computeClient,
372275
}
373276
server, err := servers.Create(is.computeClient, keypairs.CreateOptsExt{
374-
CreateOptsBuilder: serverCreateOpts,
277+
CreateOptsBuilder: createOpts,
375278
KeyName: keyName,
376279
}).Extract()
377280
if err != nil {
@@ -381,91 +284,9 @@ func (is *InstanceService) InstanceCreate(clusterName string, name string, confi
381284
}
382285

383286
func (is *InstanceService) InstanceDelete(id string) error {
384-
// get instance port id
385-
allInterfaces, err := attachinterfaces.List(is.computeClient, id).AllPages()
386-
if err != nil {
387-
return err
388-
}
389-
instanceInterfaces, err := attachinterfaces.ExtractInterfaces(allInterfaces)
390-
if err != nil {
391-
return err
392-
}
393-
if len(instanceInterfaces) < 1 {
394-
return servers.Delete(is.computeClient, id).ExtractErr()
395-
}
396-
397-
trunkSupport, err := GetTrunkSupport(is)
398-
if err != nil {
399-
return fmt.Errorf("Obtaining network extensions err: %v", err)
400-
}
401-
// get and delete trunks
402-
for _, port := range instanceInterfaces {
403-
err := attachinterfaces.Delete(is.computeClient, id, port.PortID).ExtractErr()
404-
if err != nil {
405-
return err
406-
}
407-
if trunkSupport {
408-
listOpts := trunks.ListOpts{
409-
PortID: port.PortID,
410-
}
411-
allTrunks, err := trunks.List(is.networkClient, listOpts).AllPages()
412-
if err != nil {
413-
return err
414-
}
415-
trunkInfo, err := trunks.ExtractTrunks(allTrunks)
416-
if err != nil {
417-
return err
418-
}
419-
if len(trunkInfo) == 1 {
420-
err = util.PollImmediate(RetryIntervalTrunkDelete, TimeoutTrunkDelete, func() (bool, error) {
421-
err := trunks.Delete(is.networkClient, trunkInfo[0].ID).ExtractErr()
422-
if err != nil {
423-
return false, nil
424-
}
425-
return true, nil
426-
})
427-
if err != nil {
428-
return fmt.Errorf("Error deleting the trunk %v", trunkInfo[0].ID)
429-
}
430-
}
431-
}
432-
433-
// delete port
434-
err = util.PollImmediate(RetryIntervalPortDelete, TimeoutPortDelete, func() (bool, error) {
435-
err := ports.Delete(is.networkClient, port.PortID).ExtractErr()
436-
if err != nil {
437-
return false, nil
438-
}
439-
return true, nil
440-
})
441-
if err != nil {
442-
return fmt.Errorf("Error deleting the port %v", port.PortID)
443-
}
444-
}
445-
446-
// delete instance
447287
return servers.Delete(is.computeClient, id).ExtractErr()
448288
}
449289

450-
func GetTrunkSupport(is *InstanceService) (bool, error) {
451-
allPages, err := netext.List(is.networkClient).AllPages()
452-
if err != nil {
453-
return false, err
454-
}
455-
456-
allExts, err := extensions.ExtractExtensions(allPages)
457-
if err != nil {
458-
return false, err
459-
}
460-
461-
for _, ext := range allExts {
462-
if ext.Alias == "trunk" {
463-
return true, nil
464-
}
465-
}
466-
return false, nil
467-
}
468-
469290
func (is *InstanceService) GetInstanceList(opts *InstanceListOpts) ([]*Instance, error) {
470291
var listOpts servers.ListOpts
471292
if opts != nil {

pkg/cloud/openstack/machine/actuator.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ func (oc *OpenstackClient) Create(ctx context.Context, cluster *clusterv1.Cluste
141141
}
142142
}
143143

144-
instance, err = machineService.InstanceCreate(fmt.Sprintf("%s/%s", cluster.ObjectMeta.Namespace, cluster.Name), machine.Name, providerSpec, userDataRendered, providerSpec.KeyName)
144+
instance, err = machineService.InstanceCreate(machine.Name, providerSpec, userDataRendered, providerSpec.KeyName)
145145
if err != nil {
146146
return oc.handleMachineError(machine, apierrors.CreateMachine(
147147
"error creating Openstack instance: %v", err))

0 commit comments

Comments
 (0)