api

package
v0.0.1-alpha Latest Latest
Warning

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

Go to latest
Published: Dec 6, 2021 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"
	EventSourceTypeNotSupport = "the event source type: %s not support"
)
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"
	TypeEventSourceDatahubTopic             = "datahub_topic"
	TypeEventSourceBms                      = "bms"

	StartingPositionTriHorizon  = "TRIM_HORIZON"
	StartingPositionLatest      = "LATEST"
	StartingPositionAtTimeStamp = "AT_TIMESTAMP"

	DatahubTopicStartPointLatest = int64(-1)
	DatahubTopicStartPointOldest = int64(-2)
)
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 DeleteEventSource

func DeleteEventSource(cli bce.Client, args *DeleteEventSourceArgs) 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 CFCEdgeTriggerData

type CFCEdgeTriggerData struct {
	Domain    string
	EventType string
	Path      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 CreateEventSourceArgs

type CreateEventSourceArgs FuncEventSource

func (CreateEventSourceArgs) Validate

func (args CreateEventSourceArgs) Validate() error

type CreateEventSourceResult

type CreateEventSourceResult FuncEventSource

func CreateEventSource

func CreateEventSource(cli bce.Client, args *CreateEventSourceArgs) (*CreateEventSourceResult, error)

CreateEventSource

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 DatahubConfig

type DatahubConfig struct {
	MetaHostEndpoint string `json:"MetaHostEndpoint,omitempty"` // MetaHost endpoint
	MetaHostPort     int    `json:"MetaHostPort,omitempty"`     // MetaHost port
	ClusterName      string `json:"ClusterName,omitempty"`      // 集群名
	PipeName         string `json:"PipeName,omitempty"`         // pipe名
	PipeletNum       uint32 `json:"PipeletNum,omitempty"`       // 订阅PipiletNum
	StartPoint       int64  `json:"StartPoint,omitempty"`       // 起始订阅点  正常情况下id为正整数, 2个特殊的点 -1: 表示pipelet内的最新一条消息;-2: 表示pipelet内最旧的一条消息
	AclName          string `json:"ACLName,omitempty"`          // ACL name
	AclPassword      string `json:"ACLPassword,omitempty"`      // ACL passwd
}

type DeleteAliasArgs

type DeleteAliasArgs struct {
	FunctionName string
	AliasName    string
}

func (DeleteAliasArgs) Validate

func (args DeleteAliasArgs) Validate() error

type DeleteEventSourceArgs

type DeleteEventSourceArgs struct {
	UUID string
}

func (DeleteEventSourceArgs) Validate

func (args DeleteEventSourceArgs) 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 FuncEventSource

type FuncEventSource struct {
	Uuid                      string     `json:"UUID"`
	BatchSize                 int        //  一次最多消费多少条消息
	Enabled                   *bool      `json:"Enabled,omitempty"` //是否开启消息触发器
	FunctionBrn               string     //  绑定的function brn
	EventSourceBrn            string     //  百度消息触发器bms kafka的topic名;Datahub触发器的配置唯一标识符,无需用户传入,服务端自动生成
	FunctionArn               string     //  兼容aws,与FunctionBrn相同
	EventSourceArn            string     //  兼容aws,与EventSourceBrn相同
	Type                      string     `json:"Type,omitempty"`                      // 类型 bms/datahub_topic
	FunctionName              string     `json:"FunctionName,omitempty"`              // 函数brn或者函数名
	StartingPosition          string     `json:"StartingPosition,omitempty"`          // 百度消息触发器bms kalfka topic 起始位置
	StartingPositionTimestamp *time.Time `json:"StartingPositionTimestamp,omitempty"` // 百度消息触发器bms kalfka topic 起始时间
	StateTransitionReason     string     // 状态变更原因
	DatahubConfig                        // Datahub触发器相关配置

	State                string    `json:"State"`                  // 消息触发器状态,开启或关闭,与aws兼容
	LastProcessingResult string    `json:"LastProcessingResult"`   // 最新一次触发器的执行结果
	LastModified         time.Time `json:"LastModified,omitempty"` // 上次修改时间
}

EventSource

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 GetEventSourceArgs

type GetEventSourceArgs struct {
	UUID string
}

func (GetEventSourceArgs) Validate

func (args GetEventSourceArgs) Validate() error

type GetEventSourceResult

type GetEventSourceResult FuncEventSource

func GetEventSource

func GetEventSource(cli bce.Client, args *GetEventSourceArgs) (*GetEventSourceResult, error)

GetEventSource

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{}
	RequestId      string
}

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 ListEventSourceArgs

type ListEventSourceArgs struct {
	FunctionName string
	Marker       int
	MaxItems     int
}

func (ListEventSourceArgs) Validate

func (args ListEventSourceArgs) Validate() error

type ListEventSourceResult

type ListEventSourceResult struct {
	EventSourceMappings []FuncEventSource
}

func ListEventSource

func ListEventSource(cli bce.Client, args *ListEventSourceArgs) (*ListEventSourceResult, error)

ListEventSource

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
	ScopeType   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 UpdateEventSourceArgs

type UpdateEventSourceArgs struct {
	UUID            string
	FuncEventSource FuncEventSource
}

func (UpdateEventSourceArgs) Validate

func (args UpdateEventSourceArgs) Validate() error

type UpdateEventSourceResult

type UpdateEventSourceResult FuncEventSource

func UpdateEventSource

func UpdateEventSource(cli bce.Client, args *UpdateEventSourceArgs) (*UpdateEventSourceResult, error)

UpdateEventSource

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