Documentation ¶
Overview ¶
Package project implements multi-function operations.
Index ¶
- Constants
- type Config
- type Project
- func (p *Project) Clean() error
- func (p *Project) CreateOrUpdateAlias(alias, version string) error
- func (p *Project) Delete() error
- func (p *Project) Deploy() error
- func (p *Project) DeployAndClean() error
- func (p *Project) FunctionDirNames() (list []string, err error)
- func (p *Project) LoadEnvFromFile(path string) error
- func (p *Project) LoadFunction(name string) (*function.Function, error)
- func (p *Project) LoadFunctionByPath(name, path string) (*function.Function, error)
- func (p *Project) LoadFunctions(patterns ...string) error
- func (p *Project) Open() error
- func (p *Project) Rollback() error
- func (p *Project) RollbackVersion(version string) error
- func (p *Project) Setenv(name, value string)
Constants ¶
const ( // DefaultMemory defines default memory value (MB) for every function in a project DefaultMemory = 128 // DefaultTimeout defines default timeout value (s) for every function in a project DefaultTimeout = 3 // DefaultRetainedVersions defines numbers of retained versions DefaultRetainedVersions = 25 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { Name string `json:"name" validate:"nonzero"` Description string `json:"description"` Runtime string `json:"runtime"` Memory int64 `json:"memory"` Timeout int64 `json:"timeout"` Role string `json:"role"` Handler string `json:"handler"` Shim bool `json:"shim"` NameTemplate string `json:"nameTemplate"` RetainedVersions *int `json:"retainedVersions"` DefaultEnvironment string `json:"defaultEnvironment"` Environment map[string]string `json:"environment"` Hooks hooks.Hooks `json:"hooks"` VPC vpc.VPC `json:"vpc"` Zip string `json:"zip"` }
Config for project.
type Project ¶
type Project struct { Config Path string Alias string Concurrency int Environment string InfraEnvironment string Log log.Interface ServiceProvider service.Provideriface Functions []*function.Function IgnoreFile []byte // contains filtered or unexported fields }
Project represents zero or more Lambda functions.
func (*Project) CreateOrUpdateAlias ¶
CreateOrUpdateAlias ensures the given `alias` is available for `version`.
func (*Project) DeployAndClean ¶
DeployAndClean deploys functions and then cleans up their build artifacts.
func (*Project) FunctionDirNames ¶
FunctionDirNames returns a list of function directory names.
func (*Project) LoadEnvFromFile ¶
LoadEnvFromFile reads `path` JSON and applies it to the environment.
func (*Project) LoadFunction ¶
LoadFunction returns the function in the ./functions/<name> directory.
func (*Project) LoadFunctionByPath ¶
LoadFunctionByPath returns the function in the given directory.
func (*Project) LoadFunctions ¶
LoadFunctions reads the ./functions directory, populating the Functions field. If no `patterns` are specified, all functions are loaded.
func (*Project) RollbackVersion ¶
RollbackVersion project functions to the specified version.