github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/openstack/fgs/v2/alias/UpdateAlias.go (about)

     1  package alias
     2  
     3  import (
     4  	golangsdk "github.com/opentelekomcloud/gophertelekomcloud"
     5  	"github.com/opentelekomcloud/gophertelekomcloud/internal/build"
     6  	"github.com/opentelekomcloud/gophertelekomcloud/internal/extract"
     7  )
     8  
     9  type UpdateAliasOpts struct {
    10  	FuncUrn                   string                    `json:"-"`
    11  	AliasName                 string                    `json:"-"`
    12  	Version                   string                    `json:"version" required:"true"`
    13  	Description               string                    `json:"description,omitempty"`
    14  	AdditionalVersionWeights  map[string]int            `json:"additional_version_weights,omitempty"`
    15  	AdditionalVersionStrategy map[string]VectorStrategy `json:"additional_version_strategy,omitempty"`
    16  }
    17  
    18  func UpdateAlias(client *golangsdk.ServiceClient, opts UpdateAliasOpts) (*FuncAliasesResp, error) {
    19  	b, err := build.RequestBody(opts, "")
    20  	if err != nil {
    21  		return nil, err
    22  	}
    23  
    24  	raw, err := client.Put(client.ServiceURL("fgs", "functions", opts.FuncUrn, "aliases", opts.AliasName), b, nil, &golangsdk.RequestOpts{
    25  		OkCodes: []int{200},
    26  	})
    27  	if err != nil {
    28  		return nil, err
    29  	}
    30  
    31  	var res FuncAliasesResp
    32  	return &res, extract.Into(raw.Body, &res)
    33  }