Fix tests
This commit is contained in:
parent
edf0292d4a
commit
8fde691aa7
@ -216,7 +216,8 @@ func getAvailabilityZone(metadata AWSMetadata) (string, error) {
|
||||
}
|
||||
|
||||
// newAWSCloud creates a new instance of AWSCloud.
|
||||
func newAWSCloud(config io.Reader, authFunc AuthFunc, metadata AWSMetadata) (*AWSCloud, error) {
|
||||
// authFunc and instanceId are primarily for tests
|
||||
func newAWSCloud(config io.Reader, authFunc AuthFunc, instanceId string, metadata AWSMetadata) (*AWSCloud, error) {
|
||||
cfg, err := readAWSCloudConfig(config, metadata)
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("unable to read AWS cloud provider config file: %v", err)
|
||||
@ -240,9 +241,12 @@ func newAWSCloud(config io.Reader, authFunc AuthFunc, metadata AWSMetadata) (*AW
|
||||
|
||||
ec2 := &goamzEC2{ec2: ec2.New(auth, region)}
|
||||
|
||||
instanceId, err := ec2.GetMetaData("instance-id")
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error fetching instance-id from ec2 metadata service: %v", err)
|
||||
if instanceId == "" {
|
||||
instanceIdBytes, err := ec2.GetMetaData("instance-id")
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("error fetching instance-id from ec2 metadata service: %v", err)
|
||||
}
|
||||
instanceId = string(instanceIdBytes)
|
||||
}
|
||||
|
||||
awsCloud := &AWSCloud{
|
||||
@ -252,7 +256,7 @@ func newAWSCloud(config io.Reader, authFunc AuthFunc, metadata AWSMetadata) (*AW
|
||||
availabilityZone: zone,
|
||||
}
|
||||
|
||||
awsCloud.selfAwsInstance = newAwsInstance(ec2, string(instanceId))
|
||||
awsCloud.selfAwsInstance = newAwsInstance(ec2, instanceId)
|
||||
|
||||
return awsCloud, nil
|
||||
}
|
||||
|
@ -188,6 +188,26 @@ func (self *FakeMetadata) GetMetaData(key string) ([]byte, error) {
|
||||
}
|
||||
}
|
||||
|
||||
func (ec2 *FakeEC2) AttachVolume(volumeId string, instanceId string, mountDevice string) (resp *ec2.AttachVolumeResp, err error) {
|
||||
panic("Not implemented")
|
||||
}
|
||||
|
||||
func (ec2 *FakeEC2) DetachVolume(volumeId string) (resp *ec2.SimpleResp, err error) {
|
||||
panic("Not implemented")
|
||||
}
|
||||
|
||||
func (ec2 *FakeEC2) Volumes(volumeIds []string, filter *ec2.Filter) (resp *ec2.VolumesResp, err error) {
|
||||
panic("Not implemented")
|
||||
}
|
||||
|
||||
func (ec2 *FakeEC2) CreateVolume(request *ec2.CreateVolume) (resp *ec2.CreateVolumeResp, err error) {
|
||||
panic("Not implemented")
|
||||
}
|
||||
|
||||
func (ec2 *FakeEC2) DeleteVolume(volumeId string) (resp *ec2.SimpleResp, err error) {
|
||||
panic("Not implemented")
|
||||
}
|
||||
|
||||
func mockInstancesResp(instances []ec2.Instance) (aws *AWSCloud) {
|
||||
availabilityZone := "us-west-2d"
|
||||
return &AWSCloud{
|
||||
|
@ -50,8 +50,11 @@ func TestGetAccessModes(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Errorf("Can't find the plugin by name")
|
||||
}
|
||||
if !contains(plug.GetAccessModes(), api.ReadWriteOnce) || !contains(plug.GetAccessModes(), api.ReadOnlyMany) {
|
||||
t.Errorf("Expected two AccessModeTypes: %s and %s", api.ReadWriteOnce, api.ReadOnlyMany)
|
||||
if !contains(plug.GetAccessModes(), api.ReadWriteOnce) {
|
||||
t.Errorf("Expected to find AccessMode: %s", api.ReadWriteOnce)
|
||||
}
|
||||
if len(plug.GetAccessModes()) != 1 {
|
||||
t.Errorf("Expected to find exactly one AccessMode")
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user