mirror of https://github.com/kubernetes/kops.git
Add more cloud provider flags to e2e.test
This commit is contained in:
parent
d36f65e0fb
commit
7f09dcab06
|
|
@ -172,16 +172,93 @@ func (t *Tester) addZoneFlag() error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
zoneNames, err := t.getZones()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
// gce-zone only expects one zone, we just pass the first one
|
||||||
|
zone := zoneNames[0]
|
||||||
|
klog.Infof("Setting --gce-zone=%s", zone)
|
||||||
|
t.TestArgs += " --gce-zone=" + zone
|
||||||
|
|
||||||
|
// TODO: Pass the new gce-zones flag for 1.21 with all zones?
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *Tester) addMultiZoneFlag() error {
|
||||||
|
if hasFlag(t.TestArgs, "gce-multizone") {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
zoneNames, err := t.getZones()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
klog.Infof("Setting --gce-multizone=%t", len(zoneNames) > 1)
|
||||||
|
t.TestArgs += fmt.Sprintf(" --gce-multizone=%t", len(zoneNames) > 1)
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *Tester) addRegionFlag() error {
|
||||||
|
// gce-zone is used for other cloud providers as well
|
||||||
|
if hasFlag(t.TestArgs, "gce-region") {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
cluster, err := t.getKopsCluster()
|
cluster, err := t.getKopsCluster()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
igs, err := t.getKopsInstanceGroups()
|
// We don't explicitly set the provider's region in the spec so we need to extract it from vairous fields
|
||||||
|
var region string
|
||||||
|
switch cluster.Spec.CloudProvider {
|
||||||
|
case "aws":
|
||||||
|
zone := cluster.Spec.Subnets[0].Zone
|
||||||
|
region = zone[:len(zone)-1]
|
||||||
|
case "gce":
|
||||||
|
region = cluster.Spec.Subnets[0].Region
|
||||||
|
default:
|
||||||
|
return fmt.Errorf("unhandled region detection for cloud provider: %v", cluster.Spec.CloudProvider)
|
||||||
|
}
|
||||||
|
|
||||||
|
klog.Infof("Setting --gce-region=%s", region)
|
||||||
|
t.TestArgs += " --gce-region=" + region
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *Tester) addClusterTagFlag() error {
|
||||||
|
if hasFlag(t.TestArgs, "cluster-tag") {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
cluster, err := t.getKopsCluster()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
clusterName := cluster.ObjectMeta.Name
|
||||||
|
klog.Infof("Setting --cluster-tag=%s", clusterName)
|
||||||
|
t.TestArgs += " --cluster-tag=" + clusterName
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *Tester) getZones() ([]string, error) {
|
||||||
|
cluster, err := t.getKopsCluster()
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
igs, err := t.getKopsInstanceGroups()
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
zones := sets.NewString()
|
zones := sets.NewString()
|
||||||
// Gather zones on AWS
|
// Gather zones on AWS
|
||||||
for _, subnet := range cluster.Spec.Subnets {
|
for _, subnet := range cluster.Spec.Subnets {
|
||||||
|
|
@ -198,17 +275,9 @@ func (t *Tester) addZoneFlag() error {
|
||||||
zoneNames := zones.List()
|
zoneNames := zones.List()
|
||||||
|
|
||||||
if len(zoneNames) == 0 {
|
if len(zoneNames) == 0 {
|
||||||
return fmt.Errorf("no zones found in instance groups")
|
return nil, fmt.Errorf("no zones found in instance groups")
|
||||||
}
|
}
|
||||||
|
return zoneNames, nil
|
||||||
// gce-zone only expects one zone, we just pass the first one
|
|
||||||
zone := zoneNames[0]
|
|
||||||
klog.Infof("Setting --gce-zone=%s", zone)
|
|
||||||
t.TestArgs += " --gce-zone=" + zone
|
|
||||||
|
|
||||||
// TODO: Pass the new gce-zones flag for 1.21 with all zones?
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (t *Tester) execute() error {
|
func (t *Tester) execute() error {
|
||||||
|
|
@ -244,6 +313,18 @@ func (t *Tester) execute() error {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if err := t.addClusterTagFlag(); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := t.addRegionFlag(); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
if err := t.addMultiZoneFlag(); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
return t.Test()
|
return t.Test()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue