diff --git a/go.mod b/go.mod index a8c65a5216..a5bea46ae7 100644 --- a/go.mod +++ b/go.mod @@ -83,7 +83,7 @@ require ( k8s.io/client-go v0.19.3 k8s.io/cluster-bootstrap v0.19.3 moul.io/http2curl/v2 v2.3.0 - yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230914032754-392126ecb5f6 + yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230915034557-6bd0391e78cf yunion.io/x/executor v0.0.0-20230705125604-c5ac3141db32 yunion.io/x/jsonutils v1.0.1-0.20230613121553-0f3b41e2ef19 yunion.io/x/log v1.0.1-0.20230411060016-feb3f46ab361 diff --git a/go.sum b/go.sum index ff0f30e66b..7c81320675 100644 --- a/go.sum +++ b/go.sum @@ -1174,8 +1174,8 @@ sigs.k8s.io/structured-merge-diff/v4 v4.0.1/go.mod h1:bJZC9H9iH24zzfZ/41RGcq60oK sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= sigs.k8s.io/yaml v1.2.0 h1:kr/MCeFWJWTwyaHoR9c8EjH9OumOmoF9YGiZd7lFm/Q= sigs.k8s.io/yaml v1.2.0/go.mod h1:yfXDCHCao9+ENCvLSE62v9VSji2MKu5jeNfTrofGhJc= -yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230914032754-392126ecb5f6 h1:CREi73JRqSJ3P1f5fEtHz3/bS9gx81YorIy9ZnPjzOA= -yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230914032754-392126ecb5f6/go.mod h1:2sgCN7nRPQL3woLfdgqLDd92vwAHqtlz3KKiHxC5BAw= +yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230915034557-6bd0391e78cf h1:nprsiucxk+gZn7eXpXxCyBnA0Op6xr1h3IKmEZkuIZA= +yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230915034557-6bd0391e78cf/go.mod h1:2sgCN7nRPQL3woLfdgqLDd92vwAHqtlz3KKiHxC5BAw= yunion.io/x/executor v0.0.0-20230705125604-c5ac3141db32 h1:v7POYkQwo1XzOxBoIoRVr/k0V9Y5JyjpshlIFa9raug= yunion.io/x/executor v0.0.0-20230705125604-c5ac3141db32/go.mod h1:Uxuou9WQIeJXNpy7t2fPLL0BYLvLiMvGQwY7Qc6aSws= yunion.io/x/jsonutils v0.0.0-20190625054549-a964e1e8a051/go.mod h1:4N0/RVzsYL3kH3WE/H1BjUQdFiWu50JGCFQuuy+Z634= diff --git a/vendor/modules.txt b/vendor/modules.txt index ddc1a21d1d..df9f033835 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1432,7 +1432,7 @@ sigs.k8s.io/structured-merge-diff/v4/value # sigs.k8s.io/yaml v1.2.0 ## explicit; go 1.12 sigs.k8s.io/yaml -# yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230914032754-392126ecb5f6 +# yunion.io/x/cloudmux v0.3.10-0-alpha.1.0.20230915034557-6bd0391e78cf ## explicit; go 1.18 yunion.io/x/cloudmux/pkg/apis yunion.io/x/cloudmux/pkg/apis/billing diff --git a/vendor/yunion.io/x/cloudmux/pkg/multicloud/aliyun/instance.go b/vendor/yunion.io/x/cloudmux/pkg/multicloud/aliyun/instance.go index aed8cc334d..995bd556e2 100644 --- a/vendor/yunion.io/x/cloudmux/pkg/multicloud/aliyun/instance.go +++ b/vendor/yunion.io/x/cloudmux/pkg/multicloud/aliyun/instance.go @@ -190,6 +190,10 @@ func (self *SInstance) GetName() string { return self.InstanceId } +func (self *SInstance) GetDescription() string { + return self.Description +} + func (self *SInstance) GetHostname() string { return self.HostName } diff --git a/vendor/yunion.io/x/cloudmux/pkg/multicloud/aws/dbinstance.go b/vendor/yunion.io/x/cloudmux/pkg/multicloud/aws/dbinstance.go index f4186de9ca..ce0c4e8f65 100644 --- a/vendor/yunion.io/x/cloudmux/pkg/multicloud/aws/dbinstance.go +++ b/vendor/yunion.io/x/cloudmux/pkg/multicloud/aws/dbinstance.go @@ -263,6 +263,42 @@ func (rds *SDBInstance) GetPort() int { return rds.Endpoint.Port } +func (rds *SDBInstance) GetDescription() string { + return rds.AwsTags.GetDescription() +} + +func (rds *SDBInstance) Update(ctx context.Context, input cloudprovider.SDBInstanceUpdateOptions) error { + if len(input.NAME) > 0 { + params := map[string]string{ + "DBInstanceIdentifier": input.NAME, + "ApplyImmediately": "true", + } + err := rds.region.rdsRequest("ModifyDBInstance", params, nil) + if err != nil { + return errors.Wrap(err, "ModifyDBInstance") + } + } + return rds.SetTags(map[string]string{"Description": input.Description}, true) +} + +func (region *SRegion) Update(instanceId string, input cloudprovider.SDBInstanceUpdateOptions) error { + dbinstance, err := region.GetDBInstance(instanceId) + if err != nil { + return errors.Wrap(err, "GetDBInstance") + } + if len(input.NAME) > 0 { + params := map[string]string{ + "DBInstanceIdentifier": input.NAME, + "ApplyImmediately": "true", + } + err := region.rdsRequest("ModifyDBInstance", params, nil) + if err != nil { + return err + } + } + return dbinstance.SetTags(map[string]string{"Description": input.Description}, true) +} + func (rds *SDBInstance) GetMaintainTime() string { return rds.PreferredMaintenanceWindow } diff --git a/vendor/yunion.io/x/cloudmux/pkg/multicloud/google/google.go b/vendor/yunion.io/x/cloudmux/pkg/multicloud/google/google.go index 7b92b2176c..3586605c0e 100644 --- a/vendor/yunion.io/x/cloudmux/pkg/multicloud/google/google.go +++ b/vendor/yunion.io/x/cloudmux/pkg/multicloud/google/google.go @@ -937,10 +937,9 @@ func (client *SGoogleClient) GetSubAccounts() ([]cloudprovider.SSubAccount, erro subAccount := cloudprovider.SSubAccount{} subAccount.Name = project.Name subAccount.Account = fmt.Sprintf("%s/%s", project.ProjectId, client.clientEmail) - if project.LifecycleState == "ACTIVE" { - subAccount.HealthStatus = api.CLOUD_PROVIDER_HEALTH_NORMAL - } else { - subAccount.HealthStatus = api.CLOUD_PROVIDER_HEALTH_ARREARS + subAccount.HealthStatus = api.CLOUD_PROVIDER_HEALTH_NORMAL + if project.LifecycleState != "ACTIVE" { + continue } accounts = append(accounts, subAccount) } diff --git a/vendor/yunion.io/x/cloudmux/pkg/multicloud/google/securitygroup.go b/vendor/yunion.io/x/cloudmux/pkg/multicloud/google/securitygroup.go index 5a4da7d5c2..5b20dcc7d8 100644 --- a/vendor/yunion.io/x/cloudmux/pkg/multicloud/google/securitygroup.go +++ b/vendor/yunion.io/x/cloudmux/pkg/multicloud/google/securitygroup.go @@ -105,7 +105,7 @@ func (firewall *SFirewall) _toRules(action secrules.TSecurityRuleAction) ([]clou case "all": rule.Protocol = secrules.PROTO_ANY default: - return nil, fmt.Errorf("unsupport protocol %s", allow.IPProtocol) + continue } ipRanges := firewall.SourceRanges if rule.Direction == secrules.DIR_OUT {