api

package
v0.9.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 26, 2019 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	AliasNameInvalid = "the alias name of %s must match " + RegularAliasName

	FunctionCodeInvalid = "the code of function is invalidate"
	VersionInvalid      = "the version of function must match " + RegularVersion
	QualifierInvalid    = "the qualifier is not the function's version or alias"
	PaginateInvalid     = "the pagination must greater than 0"
)
View Source
const (
	InvocationTypeEvent           InvocationType = "Event"
	InvocationTypeRequestResponse InvocationType = "RequestResponse"
	InvocationTypeDryRun          InvocationType = "DryRun"

	LogTypeTail LogType = "Tail"
	LogTypeNone LogType = "None"

	SourceTypeDuerOS  SourceType = "dueros"
	SourceTypeDuEdge  SourceType = "duedge"
	SourceTypeHTTP    SourceType = "cfc-http-trigger/v1/CFCAPI"
	SourceTypeCrontab SourceType = "cfc-crontab-trigger/v1/"
	SourceTypeCDN     SourceType = "cdn"

	TriggerTypeHTTP    TriggerType = "cfc-http-trigger"
	TriggerTypeGeneric TriggerType = "generic"
)
View Source
const (
	RegularFunctionName = `^[a-zA-Z0-9-_:]+|\$LATEST$`
	RegularAliasName    = `^[a-zA-Z0-9-_]+$`
	RegularFunctionBRN  = `^(brn:(bce[a-zA-Z-]*):cfc:)([a-z]{2,5}[0-9]*:)([0-9a-z]{32}:)(function:)([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?$`
	RegularVersion      = `^\$LATEST|([0-9]+)$`

	MemoryBase = 128
)

Variables

View Source
var (
	URIIllegal      = errors.New("invalid request uri")
	MethodIllegal   = errors.New("invalid request method")
	InvalidArgument = errors.New("invalid arguments")
	ParseJsonError  = errors.New("could not parse payload into json")
)

Functions

func DeleteAlias

func DeleteAlias(cli bce.Client, args *DeleteAliasArgs) error

func DeleteFunction

func DeleteFunction(cli bce.Client, args *DeleteFunctionArgs) error

func DeleteReservedConcurrentExecutions

func DeleteReservedConcurrentExecutions(cli bce.Client, args *DeleteReservedConcurrentExecutionsArgs) error

func DeleteTrigger

func DeleteTrigger(cli bce.Client, args *DeleteTriggerArgs) error

func SetReservedConcurrentExecutions

func SetReservedConcurrentExecutions(cli bce.Client, args *ReservedConcurrentExecutionsArgs) error

Types

type Alias

type Alias struct {
	AliasBrn        string    `json:"AliasBrn"`
	AliasArn        string    `json:"AliasArn"`
	FunctionName    string    `json:"FunctionName"`
	FunctionVersion string    `json:"FunctionVersion"`
	Name            string    `json:"Name"`
	Description     string    `json:"Description"`
	Uid             string    `json:"Uid"`
	UpdatedAt       time.Time `json:"UpdatedAt"`
	CreatedAt       time.Time `json:"CreatedAt"`
}

type BosEventType

type BosEventType string
const (
	BosEventTypePutObject               BosEventType = "PutObject"
	BosEventTypePostObject              BosEventType = "PostObject"
	BosEventTypeAppendObject            BosEventType = "AppendObject"
	BosEventTypeCopyObject              BosEventType = "CopyObject"
	BosEventTypeCompleteMultipartObject BosEventType = "CompleteMultipartObject"
)

type BosTriggerData

type BosTriggerData struct {
	Resource  string
	Status    string
	EventType []BosEventType
	Name      string
}

type CDNEventType

type CDNEventType string
const (
	CDNEventTypeCachedObjectsBlocked   CDNEventType = "CachedObjectsBlocked"
	CDNEventTypeCachedObjectsPushed    CDNEventType = "CachedObjectsPushed"
	CDNEventTypeCachedObjectsRefreshed CDNEventType = "CachedObjectsRefreshed"
	CDNEventTypeCdnDomainCreated       CDNEventType = "CdnDomainCreated"
	CDNEventTypeCdnDomainDeleted       CDNEventType = "CdnDomainDeleted"
	CDNEventTypeLogFileCreated         CDNEventType = "LogFileCreated"
	CDNEventTypeCdnDomainStarted       CDNEventType = "CdnDomainStarted"
	CDNEventTypeCdnDomainStopped       CDNEventType = "CdnDomainStopped"
)

type CDNTriggerData

type CDNTriggerData struct {
	EventType CDNEventType
	Domains   []string
	Remark    string
	Status    string
}

type CodeFile

type CodeFile struct {
	Publish   bool
	DryRun    bool
	ZipFile   []byte
	BosBucket string
	BosObject string
}

type CodeStorage

type CodeStorage struct {
	Location       string `json:"Location"`
	RepositoryType string `json:"RepositoryType"`
}

type CreateAliasArgs

type CreateAliasArgs struct {
	FunctionName    string
	FunctionVersion string
	Name            string
	Description     string
}

func (CreateAliasArgs) Validate

func (args CreateAliasArgs) Validate() error

type CreateAliasResult

type CreateAliasResult Alias

func CreateAlias

func CreateAlias(cli bce.Client, args *CreateAliasArgs) (*CreateAliasResult, error)

type CreateFunctionArgs

type CreateFunctionArgs struct {
	Code         *CodeFile
	FunctionName string
	Handler      string
	Runtime      string
	MemorySize   int
	Timeout      int
	Description  string
	Environment  *Environment
	VpcConfig    *VpcConfig
	LogType      string
	LogBosDir    string
}

func (CreateFunctionArgs) Validate

func (args CreateFunctionArgs) Validate() error

type CreateFunctionResult

type CreateFunctionResult Function

func CreateFunction

func CreateFunction(cli bce.Client, args *CreateFunctionArgs) (*CreateFunctionResult, error)

type CreateTriggerArgs

type CreateTriggerArgs struct {
	Target string
	Source SourceType
	Data   interface{}
}

func (CreateTriggerArgs) Validate

func (args CreateTriggerArgs) Validate() error

type CreateTriggerResult

type CreateTriggerResult struct {
	Relation *RelationInfo
}

func CreateTrigger

func CreateTrigger(cli bce.Client, args *CreateTriggerArgs) (*CreateTriggerResult, error)

type CrontabTriggerData

type CrontabTriggerData struct {
	Brn                string
	Enabled            string
	Input              string
	Name               string
	ScheduleExpression string
}

type DeleteAliasArgs

type DeleteAliasArgs struct {
	FunctionName string
	AliasName    string
}

func (DeleteAliasArgs) Validate

func (args DeleteAliasArgs) Validate() error

type DeleteFunctionArgs

type DeleteFunctionArgs struct {
	FunctionName string
	Qualifier    string
}

func (DeleteFunctionArgs) Validate

func (args DeleteFunctionArgs) Validate() error

type DeleteReservedConcurrentExecutionsArgs

type DeleteReservedConcurrentExecutionsArgs struct {
	FunctionName string
}

func (DeleteReservedConcurrentExecutionsArgs) Validate

type DeleteTriggerArgs

type DeleteTriggerArgs struct {
	RelationId string
	Target     string
	Source     SourceType
}

func (DeleteTriggerArgs) Validate

func (args DeleteTriggerArgs) Validate() error

type Environment

type Environment struct {
	Variables map[string]string
}

type Function

type Function struct {
	Uid          string       `json:"Uid"`
	Description  string       `json:"Description"`
	FunctionBrn  string       `json:"FunctionBrn"`
	Region       string       `json:"Region"`
	Timeout      int          `json:"Timeout"`
	VersionDesc  string       `json:"VersionDesc"`
	UpdatedAt    time.Time    `json:"UpdatedAt"`
	LastModified time.Time    `json:"LastModified"`
	CodeSha256   string       `json:"CodeSha256"`
	CodeSize     int32        `json:"CodeSize"`
	FunctionArn  string       `json:"FunctionArn"`
	FunctionName string       `json:"FunctionName"`
	Handler      string       `json:"Handler"`
	Version      string       `json:"Version"`
	Runtime      string       `json:"Runtime"`
	MemorySize   int          `json:"MemorySize"`
	Environment  *Environment `json:"Environment"`
	CommitID     string       `json:"CommitID"`
	CodeID       string       `json:"CodeID"`
	Role         string       `json:"Role"`
	VpcConfig    *VpcConfig   `json:"VpcConfig"`
	LogType      string       `json:"LogType"`
	LogBosDir    string       `json:"LogBosDir"`
	SourceTag    string       `json:"SourceTag"`
}

type FunctionInfo

type FunctionInfo struct {
	Code          *CodeStorage `json:"Code"`
	Configuration *Function    `json:"Configuration"`
}

functionInfo

type GetAliasArgs

type GetAliasArgs struct {
	FunctionName string
	AliasName    string
}

func (GetAliasArgs) Validate

func (args GetAliasArgs) Validate() error

type GetAliasResult

type GetAliasResult Alias

func GetAlias

func GetAlias(cli bce.Client, args *GetAliasArgs) (*GetAliasResult, error)

type GetFunctionArgs

type GetFunctionArgs struct {
	FunctionName string
	Qualifier    string
}

func (GetFunctionArgs) Validate

func (args GetFunctionArgs) Validate() error

type GetFunctionConfigurationArgs

type GetFunctionConfigurationArgs struct {
	FunctionName string
	Qualifier    string
}

func (GetFunctionConfigurationArgs) Validate

func (args GetFunctionConfigurationArgs) Validate() error

type GetFunctionConfigurationResult

type GetFunctionConfigurationResult Function

type GetFunctionResult

type GetFunctionResult struct {
	Code          CodeStorage
	Configuration Function
}

func GetFunction

func GetFunction(cli bce.Client, args *GetFunctionArgs) (*GetFunctionResult, error)

type HTTPMethod

type HTTPMethod = string
const (
	GET     HTTPMethod = "GET"
	PUT     HTTPMethod = "PUT"
	POST    HTTPMethod = "POST"
	DELETE  HTTPMethod = "DELETE"
	HEAD    HTTPMethod = "HEAD"
	OPTIONS HTTPMethod = "OPTIONS"
)

type HttpTriggerData

type HttpTriggerData struct {
	ResourcePath string
	Method       string
	AuthType     string
}

type InvocationType

type InvocationType string

type InvocationsArgs

type InvocationsArgs struct {
	FunctionName   string
	InvocationType InvocationType
	LogType        LogType
	Qualifier      string
	Payload        interface{}
}

func (InvocationsArgs) Validate

func (args InvocationsArgs) Validate() error

type InvocationsResult

type InvocationsResult struct {
	Payload       string
	FunctionError string
	LogResult     string
}

func Invocations

func Invocations(cli bce.Client, args *InvocationsArgs) (*InvocationsResult, error)

type ListAliasesArgs

type ListAliasesArgs struct {
	FunctionName    string
	FunctionVersion string
	Marker          int
	MaxItems        int
}

func (ListAliasesArgs) Validate

func (args ListAliasesArgs) Validate() error

type ListAliasesResult

type ListAliasesResult struct {
	Aliases    []*Alias
	NextMarker string
}

func ListAliases

func ListAliases(cli bce.Client, args *ListAliasesArgs) (*ListAliasesResult, error)

type ListFunctionsArgs

type ListFunctionsArgs struct {
	FunctionVersion string
	Marker          int
	MaxItems        int
}

func (ListFunctionsArgs) Validate

func (args ListFunctionsArgs) Validate() error

type ListFunctionsResult

type ListFunctionsResult struct {
	Functions  []*Function
	NextMarker string
}

func ListFunctions

func ListFunctions(cli bce.Client, args *ListFunctionsArgs) (*ListFunctionsResult, error)

type ListTriggersArgs

type ListTriggersArgs struct {
	FunctionBrn string
}

func (ListTriggersArgs) Validate

func (args ListTriggersArgs) Validate() error

type ListTriggersResult

type ListTriggersResult struct {
	Relation []*RelationInfo
}

func ListTriggers

func ListTriggers(cli bce.Client, args *ListTriggersArgs) (*ListTriggersResult, error)

type ListVersionsByFunctionArgs

type ListVersionsByFunctionArgs struct {
	FunctionName string
	Marker       int
	MaxItems     int
}

func (ListVersionsByFunctionArgs) Validate

func (args ListVersionsByFunctionArgs) Validate() error

type ListVersionsByFunctionResult

type ListVersionsByFunctionResult struct {
	Versions   []*Function
	NextMarker string
}

type LogType

type LogType string

type Operation

type Operation struct {
	HTTPMethod HTTPMethod
	HTTPUri    string
}

type PublishVersionArgs

type PublishVersionArgs struct {
	FunctionName string
	Description  string
	CodeSha256   string
}

func (PublishVersionArgs) Validate

func (args PublishVersionArgs) Validate() error

type PublishVersionResult

type PublishVersionResult Function

func PublishVersion

func PublishVersion(cli bce.Client, args *PublishVersionArgs) (*PublishVersionResult, error)

type RelationInfo

type RelationInfo struct {
	RelationId string      `json:"RelationId"`
	Sid        string      `json:"Sid"`
	Source     SourceType  `json:"Source"`
	Target     string      `json:"Target"`
	Data       interface{} `json:"Data"`
}

type ReservedConcurrentExecutionsArgs

type ReservedConcurrentExecutionsArgs struct {
	FunctionName                 string
	ReservedConcurrentExecutions int
}

func (ReservedConcurrentExecutionsArgs) Validate

func (args ReservedConcurrentExecutionsArgs) Validate() error

type SourceType

type SourceType string

type TriggerType

type TriggerType string

type UpdateAliasArgs

type UpdateAliasArgs struct {
	FunctionName    string
	AliasName       string
	FunctionVersion string
	Description     string
}

func (UpdateAliasArgs) Validate

func (args UpdateAliasArgs) Validate() error

type UpdateAliasResult

type UpdateAliasResult Alias

func UpdateAlias

func UpdateAlias(cli bce.Client, args *UpdateAliasArgs) (*UpdateAliasResult, error)

type UpdateFunctionCodeArgs

type UpdateFunctionCodeArgs struct {
	FunctionName string
	ZipFile      []byte
	Publish      bool
	DryRun       bool
	BosBucket    string
	BosObject    string
}

func (UpdateFunctionCodeArgs) Validate

func (args UpdateFunctionCodeArgs) Validate() error

type UpdateFunctionCodeResult

type UpdateFunctionCodeResult Function

type UpdateFunctionConfigurationArgs

type UpdateFunctionConfigurationArgs struct {
	FunctionName string
	Timeout      int `json:"Timeout,omitempty"`
	MemorySize   int `json:"MemorySize,omitempty"`
	Description  string
	Handler      string
	Runtime      string
	Environment  *Environment
	VpcConfig    *VpcConfig
	LogType      string
	LogBosDir    string
}

func (UpdateFunctionConfigurationArgs) Validate

func (args UpdateFunctionConfigurationArgs) Validate() error

type UpdateFunctionConfigurationResult

type UpdateFunctionConfigurationResult Function

type UpdateTriggerArgs

type UpdateTriggerArgs struct {
	RelationId string
	Target     string
	Source     SourceType
	Data       interface{}
}

func (UpdateTriggerArgs) Validate

func (args UpdateTriggerArgs) Validate() error

type UpdateTriggerResult

type UpdateTriggerResult struct {
	Relation *RelationInfo
}

func UpdateTrigger

func UpdateTrigger(cli bce.Client, args *UpdateTriggerArgs) (*UpdateTriggerResult, error)

type Validator

type Validator interface {
	Validate() error
}

type VpcConfig

type VpcConfig struct {
	VpcId            string
	SubnetIds        []string
	SecurityGroupIds []string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL